na webu Excelplus.NET, aneb než se svěříte s tím, co vás trápí v Excelu…

Excelový vtip

Osobní dotazy

  1. Vyhrazuji si právo nereagovat na položené dotazy (ať už mám časový nebo jiný důvod pro odmítnutí), obzvláště, pokud jsou neúplné nebo opakovaně řeší „domácí úkoly“.
  2. Dotazy realizované prostřednictvím hovoru (mobilní telefon, Skype) je možné pokládat bez předchozí domluvy pouze v pracovní dny a to v čase od 8:00 do 10:30 a dále pak od 11:30 do 17:00. Je-li to možné, s časovou rezervou před vlastním hovorem zašlete vzorový sešit (do velikosti 2 MB, ZIP), nebo odkaz na něj s popisem problému.
  3. Není-li řečeno jinak, soubory obdržené v průběhu víkendu či svátku beru jako doručené v první následující pracovní den.
  4. Řešení problému přesahující jednoduchou odpověď nebo vytížení delší než 15 minut může být (po předchozím upozornění) nárokováno odměnou. Z vlastní vůle můžete ocenit pomoc dobitím Twist kreditu mobilního čísla (+420) 704 016 008 (Sazka Mobil) minimální částkou 200 Kč a maximální částkou 500 Kč (ze svého bankovního účtu, prostřednictvím terminálů Sazky nebo dobíjecí karty).
  5. V době od 18:00 ve všední dny a ve dnech pracovního klidu po celý den je možné využít placenou excelovou pohotovost. Tuto službu si můžete vyžádat pouze prostřednictvím e-mailu nebo sms a v případě odezvy následným domluvením podmínek.

Petr Pecháček, administrátor a vývojář Excelplus.NET

1. Jste ta správná osoba?

S problémem se často přihlásí koncový uživatel, který je současně firemním zaměstnancem. Tomu ale není pomoci, pokud jeho práva a možnosti zásahu řídí nekompromisní IT pracovník. Ten zpravidla není přítomen, problém jaksi nepovažuje za prioritní a nepovolí ani vzdálený přístup (TeamViewer apod.). V takovém případě skončí úsilí na mrtvém bodě.

2. Buďte pokorní, ale neshazujte se

„Mám seznam čísel, chci vracet… Bude to dnes? Jinak je mi to k ničemu.“
„To tu fakt nikdo neví jak na to borci?“
„Pro tebe to bude určitě hračka. Dík“
„Vaším úkolem je zpracovat vzorec, který vyhledá…“
„Dobrý den, vím, že jsem na Excel tupá a proto bych Vás moc chtěla poprosit..“

Je dobré uvést čas, ve kterém musíte úlohu mít lidově řečeno z krku. Uvědomte si ale, že za písemným projevem si čtenář může představit jakéhokoliv uživatele i „tón“, jakým byl dotaz podán.

Mou náplní práce není řešit pravidelně domácí úlohy studentů. Zkuste si domluvit doučování, jeho formu a odpovídající ohodnocení.

Každý umíme něco a není potřeba se shazovat. Ani ten, kdo odpovídá (radí, dodává řešení) není pánbůh a může se od tazatele i něčemu naučit. Ponechme prosím stranou i tituly a bavme se k věci.

Pokud se vám někdo snaží pomoci, pak to zpravidla dělá ve svém volném čase a jediným jeho ohodnocením je slovo „děkuji“. Je si vědom toho, že potřebujete pomoci a nepředpokládá finanční obnos za řešení. Není neslušností si ale o odměnu říci, obzvláště, pokud jeho práce přesahuje řekněme půlhodinu nebo se jedná o pozdní večerní dobu. Stejně tak nemusíte čekat, jestli si „o něco řekne“, nabídněte kupříkladu protislužbu. Pamatujte i na to, že na druhé straně je člověk, má své koníčky, radosti i strasti, rodinu a bydlí možná kousek od vás. Není to (alespoň v našich poměrech) někdo, kdo se z nudy prochází po internetu nebo člověk, který si něco potřebuje dokázat nebo zchladit žáhu na „hloupých uživatelích“.

Buďte trpěliví při zodpovídání dotazů, které si ověřují vaše zadání. V dané problematice se možná cítíte jako ryba ve vodě, ale nepředpokládejte to o druhé straně. Dokonce to ani nemusí být nutné. Naopak, využijte toho, že je jí téma cizí a má nad věcí nadhled, zatímco vy se v problému utápíte týdny a měsíce. Může vás přivést na myšlenku, která vás ani nenapadla.

Označení stávajícího řešení nebo návrhu za nevhodné není dokladem arogance a povýšenosti autora takového výroku.

3. Jakou verzi Excelu máte?

Rozlišení verze Excelu na první pohled

Rozlišení verze Excelu na první pohled

Microsoft Excel existuje v mnoha verzích (…, 97, 2000, 2001(XP), 2003, 2007, 2010, 2013, občas je také označován jako Excel 8, 9, 10, 11, 12, 14 a 15) a jazykových lokalizacích (EN, CZ a přirozeně další). Slovenští uživatelé tak nemají před sebou list Excelu, ale hárok a názvy funkcí listu jsou pro ně běžně dostupné v angličtině.
Funkce listu v průběhu času přibývaly a méně či více se měnil i objektový model VBA. Excel 2007 pak pohřbil známé panely nástrojů a přišel s Pásem karet (ribbonem). Rozlišovat je potřeba operační systém (Windows, Mac OS) a také, jestli se jedná o 32 či 64bitovou verzi. Každý software má pochopitelně i své chyby a tak vycházejí servisní balíčky (Excel 2003 SP3, Excel 2007 SP2, Excel 2010 SP1, …).

4. Kde najdete podrobnější informace o verzi?

Excel 2003 - podrobnosti o verzi

Excel 2003 – podrobnosti o verzi


Excel 2007 - podrobnosti o verzi

Excel 2007 – podrobnosti o verzi


Excel 2010 - podrobnosti o verzi

Excel 2010 – podrobnosti o verzi


Excel 2013 - podrobnosti o verzi

Excel 2013 – podrobnosti o verzi

5. Co Excel je a co není

Excel je tabulkový kalkulátor. Může vcelku slušně sloužit jako úložiště dat v rozsahu dejme tomu deseti tisíc řádků. Nechtějte ale po datech v jeho sešitech a listech relační vazby nebo OLAP. Posloupnost složka-sešit-list-sloupec ukazuje maximální hloubku členění dat. ODBC, ADO, DAO, Microsoft Jet a další technologie a pojmy pro získávání dat z Excelu jsou dosti omezené. Hlavním problémem je prakticky nemožnost řídit datové typy sloupců na listech Excelu sloužící jako zdroj dat (viz IMEX a další prapodivnosti).

Excel není textový editor s bohatými možnostmi jako Word (ani ten není zrovna šampion v udržení si rozvržení grafiky a textu na monitoru a tiskárně). V buňkách Excelu špatně uřídíte zalamování dlouhých textů, kromě toho s nimi budou mít problém i textové funkce. Při vytváření komplikovaného formuláře (tedy tiskopisu) strávíte řadu hodin a nakonec dospějte k tomu, že buňkový „rastr“ je nutné mít ještě jemnější a musíte znovu sloučit buňky (typicky vkládaný sloupec). Přetékání obsahu mezi stránkami a vůbec problematika stránkování může být také v Excelu neřešitelná (ale ani Word není ideální). Přesto platí jednoduché pravidlo – šablony (DOT) zpracujte ve Wordu a plňte je informacemi z Excelu buď prostřednictvím Hromadné korespondence, nebo využijte záložky (Bookmarks), resp. vlastní proměnné (Custom Document Properties) a pole. Celé tabulky pak můžete vkládat i jako objekty.

6. Souvislosti

Jakou úlohu Excel v problému hraje? Excel je v daném případě prostředník – něco je na jeho vstupu a něco má být na výstupu. Je v požadované formě vstup? Setkávám se v drtivé většině s tím, že zadavatel „nemůže“ vstup nijak ovlivnit (musel by se obrátit na IT, na jinou pobočku společnosti atd.). Věřím tomu, že často ovšem stačí jen napsat kolegovi přes ICQ nebo zvednout telefon. Ve výsledku pak pětiminutový zásah do SQL dotazu může vyřešit korektní výstup ze systému/vstup pro Excel, zatímco následné řešení VBA ošetřující vstupy by zabralo několik hodin. Osobně se k takovým „výmluvám“ stavím nekompromisně. Je potřeba vytvářet systémová řešení, ne lepit záplaty na díry.

Řadu problémů ovlivňuje způsob zacházení se sešity. Patří sem témata sdílení, práv na serveru, rychlost připojení, potřeba práce v reálném čase, oprávnění pro přístup do databáze atd. Uvádějte, pokud pro vás nejsou řešením makra VBA, resp. doplněk (XLA, DLL, doplňky COM) a vyžadujete řešení pouhými funkcemi na listu. Samozřejmě se můžete dočkat odpovědi „bez VBA to nejde“.

Počítejte s tím, že VBA není bezpečné místo pro ukládání hesel, připojení do databází apod. a bohužel pro programátory není ani dobře chráněno proti vykrádání a zneužití know-how. Stejně tak zabezpečení listu heslem stojí za starou bačkoru. Jediná silnější ochrana je v samotném zaheslování/šifrování sešitu Excelu.

7. „Ono se to potento“

„tak to vždy vzalo tu první hodnotu a dosadilo to do všech 3 řádků“
„v Excelu 2010 to vysype hlášky místo hodnot, teď si nepamatuju jaký hlášky, ale nenapadá někoho, co je třeba zapnout, aby to fungovalo jak má“

Daný úkon, operaci vykonává buď člověk (ručním vstupem, zásahem) nebo se tak děje automaticky (na základě nějaké události). Automatizaci zajišťuje zpravidla naplánovaná úloha ve Windows, skripty (určitě si ještě pamatujete na BAT, CMD, VBS) nebo makro VBA. Data se mohou dostat do Excelu různými cestami (import dat ze souboru, ODBC a jiné databázové přístupy, přímé načítání přes (sériový) port z nějakého měřicího zařízení, ze čtečky, mobilního telefonu, prostřednictvím technologie jako je Real Time Data nebo webová služba, …). Impulsem pro spuštění úlohy je buď časový údaj sám o sobě, předchozí ukončená úloha nebo uživatelský vstup (výjimka v procesu, potřeba administrace, opravy, restartování apod.).

Jestliže máte při formulaci zadání nutkání používat „aby se to“, „se to převede“, „musí se to“, pak to ve výsledku může znamenat dohady mezi vámi a dodavatelem řešení o náklady na vícepráce. Navíc to vypovídá o neznalosti procesního modelu (kdo, co, jak, kdy, co se stane když, …). Procesní a vývojové diagramy nejsou zdaleka minulostí!

Každý, i když zdánlivě drobný požadavek na změnu bude o to víc fatální, čím později zazní od vyhlášení původního zadání.

8. Kam se podívat po řešení?

  1. Používejte vyhledávač Google. Do vyhledávacího pole zadejte kupříkladu „Excel VBA property Resize“. Přirozeně, pokud vám nedělá problémy angličtina, naleznete v tomto jazyce nejvíce relevantních stránek.
  2. Zkuste osobní dotaz (pravidla zkraje článku). Využijte přitom kontaktní formulář nebo jiné prostředky (telefonní číslo, Skype, bez záruky dostupnosti).

9. Když je něco v Office špatně…

  1. Vyčistěte složky Temp apod., odstraňte (přejmenujte) konfigurační soubory panelů nástrojů (XLB) a soubory ze spouštěcí složky XLStart (Windows 7: C:\Users\{uživatel}\AppData\Roaming\Microsoft\Excel\). Řadu problémů vyřeší také odstranění souborů s příponou EXD (složky viz článek a odkaz „Fix it myself“).
  2. Odpojte doplňky (Karta Soubor nebo tlačítko Office / Možnosti (aplikace Excel) / Doplňky / Doplňky aplikace Excel, resp. Doplňky modelu COM).
  3. Spusťte Excel v nouzovém režimu a zkontrolujte stav (Start / Spustit a zadejte „Excel /s“ nebo při poklepání na zástupce Excelu přidržte klávesu Ctrl).
  4. Opravte klíče registru spuštěním Excelu s parametrem „/o“ nebo „/regserver“ (více o přepínačích na stránce Popis spouštěcích přepínačů pro aplikaci Excel.
  5. V Office 2007 se můžete pokusit o nápravu s vestavěnými diagnostickými nástroji – viz Tlačítko Office / Možnosti aplikace Excel / Zdroje informací, tlačítko Diagnóza.
  6. Opravte instalaci balíčku Office (Windows 7: Start / Ovládací panely / Programy a funkce / … / Změnit / Opravit). Při poškozené instalaci je potřeba aplikovat „Microsoft Fix it“ nebo si pomoci ručním zásahem. Největším problémem je odinstalace testovací verze (tím není myšlena zkušební trial verze, ale verze Preview apod.), která poškodila soubory a údaje v registru verze předchozí. Bod obnovy nemusí být řešením.
    Jak odinstalovat nebo odebrat sady Microsoft Office 2003-2010

10. Nejděsivější zadání

„Chci si v Excelu evidovat vystavené faktury, můžete mi doporučit nějakou šablonu?“

Říkáte si, co je na tom tak strašného? Z praxe vím, že takový dotaz neskončí přeposláním šablony. Uživatel bude chtít fakturu plnit daty klientů (adresy, DIČ, kontaktní osoby atd., což sice v počátku lze řešit závislými seznamy na listu Excelu, ale do budoucna to směřuje k databázi) a vyřešit číslování. Zjistí, že faktury mají své objednávky a dodací listy, bude chtít provádět storna, případně vystavovat dobropisy atp. a nakonec přijde třeba odepisování ze skladu. Excel je dejme tomu nástroj pro finanční analýzu, ale NENÍ VHODNÝ jako účetní – nebo, chcete-li ekonomický – software. Stejně tak nemůže ve větším měřítku zastoupit specializovaný databázový software.

Petr Pecháček, administrátor a vývojář Excelplus.NET