Jak se vyhnout nefunkčním vzorcům

Jak se vyhnout nefunkčním vzorcům

Poznámka: Snažíme se pro vás co nejrychleji zajistit aktuální obsah nápovědy ve vašem jazyce. Tato stránka byla přeložena automaticky a může obsahovat gramatické chyby nebo nepřesnosti. Naším cílem je to, aby pro vás byl její obsah užitečný. Mohli byste nám prosím dát ve spodní části této stránky vědět, jestli vám informace v článku pomohly? Pokud byste se rádi podívali na jeho anglickou verzi, najdete ji tady.

Pokud Excel nedokáže vyhodnotit vzorec, který se pokoušíte vytvořit, může se zobrazit takováto chybová zpráva:

Obrázek excelového dialogu Problém s tímto vzorcem

Bohužel to znamená, že Excel nedokáže pochopit, co chcete udělat, takže může být lepší začít celý vzorec vytvářet znovu od začátku.

Začněte tím, že kliknutím na OK nebo stisknutím ESC zavřete chybovou zprávu.

Vrátíte se do buňky s přerušeným vzorcem, který bude v režimu úprav, a Excel zvýrazní místo, kde má problém. Pokud pořád nevíte, co z nich dělat a chcete začít znovu, můžete znovu stisknout klávesu ESC nebo kliknout na tlačítko Zrušit na řádku vzorců, které se ukončí mimo režim úprav.

Obrázek tlačítka Zrušit na řádku vzorců

Pokud si v tomto bodě nejste jistí, co udělat nebo jakou pomoc byste přesně potřebovali, můžete zkusit najít podobný dotaz na fóru komunity Excelu nebo tam publikovat svůj vlastní.

Odkaz na fórum komunity Excelu

Pokud se budete chtít posunout dál, použijte tento kontrolní seznam, který obsahuje postupy pro řešení potíží, pomocí kterých můžete zjistit, co by ve vzorcích mohlo být špatně.

Excel vyhodnotí různé chyby hash (#), jako je třeba #VALUE!, #REF!, #NUM, #N/A, #DIV/0!, #NAME? Například #VALUE! chyba způsobuje nesprávné formátování nebo nepodporované datové typy v argumentech. Nebo uvidíte #REF! Chyba, pokud vzorec odkazuje na buňky, které byly odstraněny nebo nahrazeny jinými daty. Pokyny pro řešení potíží se u jednotlivých chyb liší.

Poznámka: #### není chyba související se vzorcem. Znamená jenom, že sloupec není dost široký, aby se do něj vešel obsah buňky. Jednoduše přetažením sloupec rozšiřte nebo přejděte na Domů > Formát > Přizpůsobit šířku sloupců.

Obrázek možnosti Domů > Formát > Automaticky upravit šířky sloupců

Informace o chybě se značkou #, která se vám zobrazuje, najdete v jednom z odpovídajících témat:

Při každém otevření tabulky, která obsahuje vzorce odkazující na hodnoty v jiných tabulkách, se zobrazí výzva k aktualizaci odkazů nebo k jejich opuštění.

Dialogové okno s přerušenými odkazy v Excelu

Excel zobrazí výše uvedené dialogové okno, aby zajistil, že vzorce v aktuální tabulce budou vždy ukazovat na nejaktuálnější hodnotu – pro případ, že se hodnota odkazu změnila. Můžete zvolit možnost, že se odkazy mají aktualizovat, nebo když je nechcete aktualizovat, můžete tuto akci přeskočit. I když se rozhodnete odkazy v tabulce neaktualizovat, můžete je aktualizovat ručně, kdykoli budete chtít.

Zobrazování tohoto dialogového okna při spuštění můžete kdykoli vypnout. Uděláte to tak, že přejdete na Soubor > Možnosti > Upřesnit > Obecné a zrušíte zaškrtnutí políčka Potvrdit aktualizaci automatických propojení. V Excelu 2007 byste klikli na Tlačítko Office > Možnosti aplikace Excel. Tlačítko Office 2007

Obrázek možnosti Potvrzovat aktualizaci automatických odkazů

Důležité informace: Pokud nefunkční odkazy řešíte poprvé, potřebujete si připomenout, jak se nefunkční odkazy řeší, nebo nevíte, jestli máte odkazy aktualizovat, přečtěte si článek Řízení, kdy mají být aktualizovány externí odkazy (propojení).

Pokud se nezobrazuje hodnota vzorce, postupujte takto:

  • Zkontrolujte, jestli není Excel nastavený tak, aby v tabulce zobrazoval vzorce. Uděláte to tak, že kliknete na kartu Vzorce a ve skupině Závislosti vzorců kliknete na tlačítko Zobrazit vzorce.

    Tip: Můžete také použít klávesovou zkratku CTRL + ' (klávesa nad kartou). Když to provedete, sloupce se automaticky rozšíří, aby zobrazovaly vzorce, ale Nemějte obavy, když přepnete zpátky do normálního zobrazení.

  • Pokud se problém nepovede vyřešit ani podle předchozího kroku, je možné, že je buňka naformátovaná jako text. Můžete na buňku kliknout pravým tlačítkem myši a výběrem možností Formát buněk > Obecný (nebo stisknutím kombinace kláves Ctrl + 1) a následným stisknutím kláves F2 > Enter formát změnit.

  • Pokud máte ve sloupci velkou oblast buněk, které jsou naformátované jako text, můžete oblast vybrat, aplikovat na ni formát čísla podle svých potřeb a pak přejít na Data > Text do sloupců > Dokončit. Tím se formát použije u všech vybraných buněk.

    Obrázek dialogu Data > Text do sloupců

Když se vzorec nepřepočítá, musíte zkontrolovat, jestli je v Excelu povolený automatický přepočet. Pokud je povolený ruční přepočet, vzorce se nepřepočítávají. Nastavení automatického přepočtu zkontrolujete takto:

  1. Klikněte na kartu Soubor, na položku Možnosti a poté na kategorii Vzorce.

  2. V oddílu Možnosti výpočtů v části Přepočet sešitu musí být vybrána možnost Automaticky.

    Obrázek možností Automatický výpočet a Ruční výpočet

Další informace o výpočtech najdete v článku Změna přepočtu, iterace nebo přesnosti vzorce.

Cyklický odkaz vznikne, když vzorec odkazuje na buňku, ve které se nachází. Opravit ho můžete tak, že vzorec přesunete do jiné buňky nebo změníte syntaxi vzorce na takovou, která nezpůsobuje cyklické odkazy. V určitých situacích ale můžete cyklické odkazy potřebovat, protože díky nim můžou funkce iterovat – opakovaně počítat, dokud nebude splněna určitá číselná podmínka. V takovém případě bude nutné povolit možnost Odebrat nebo povolit cyklický odkaz .

Další informace o cyklických odkazech najdete v článku Odebrání nebo povolení cyklického odkazu .

Pokud zadání v buňce nebude začínat symbolem rovnítka, nebude se brát jako vzorec a nebude se ani počítat. Je to běžná chyba.

Když napíšete něco jako SUMA (a1: A10), zobrazí Excel jako výsledek vzorce text SUMA (a1: A10) . Když zadáte 11/2, Excel zobrazuje datum, jako je třeba 2 – listopadu nebo 11/02/2009, namísto dělení 11 o 2.

Aby se zabránilo těmto neočekávaným výsledkům, vždy začínejte funkci symbolem rovnítka. Zadejte třeba: =SUMA(A1:A10) a =11/2.

Když ve vzorci použijete funkci, každá levá závorka potřebuje pro správnou funkci uzavírací závorku, proto zkontrolujte, jestli jsou všechny závorky součástí odpovídajícího páru. Například vzorec = když (B5<0), "není platný", B5 * 1.05) nebude fungovat, protože jsou tu dvě uzavírací závorky, ale jenom jedna levá závorka. Správný vzorec by vypadal takto: =KDYŽ(B5<0;"Není platné";B5*1,05).

Excelové funkce mají argumenty (hodnoty, které musíte zadat, aby vzorec fungoval). Jenom pár funkcí (třeba funkce PI nebo DNES) nemá argumenty žádné. Zkontrolujte syntaxi vzorce, která se zobrazí, když začnete zadávat funkci, abyste měli jistotu, že daná funkce obsahuje povinné argumenty.

Například argumentem funkce VELKÁ může být jenom jeden textový řetězec nebo odkaz na buňku: =VELKÁ("ahoj") nebo =VELKÁ(C2).

Poznámka: Při psaní vzorce se na plovoucím panelu nástrojů s informacemi o funkci zobrazí argumenty funkce.

Snímek obrazovky s panelem nástrojů s informacemi o funkci

Některé funkce, jako třeba SUMA, navíc potřebují výhradně číselné argumenty, zatímco jiné funkce, jako například NAHRADIT, vyžadují minimálně pro jeden ze svých argumentů textovou hodnotu. Pokud používáte nesprávný datový typ, funkce můžou vracet neočekávané výsledky nebo zobrazit chybu #VALUE! .

Pokud potřebujete rychle vyhledat syntaxi určité funkce, podívejte se na seznam excelových funkcí (podle kategorie).

Nezadávejte ve vzorcích čísla formátovaná znaky dolaru ($) nebo oddělovači tisíců (,), protože znaky dolaru označují absolutní odkazy a čárky se můžou používat jako oddělovače argumentů. Místo zadání $1,000 zadejte ve vzorci 1000.

Pokud v argumentech argumenty použijete formátovaná čísla, dostanete neočekávané výsledky výpočtu, ale může se zobrazit taky Chyba #NUM! . Pokud například zadáte vzorec = ABS (-2 134) , abyste našli absolutní hodnotu-2134, Excel zobrazí #NUM! Chyba, protože funkce ABS přijímá jenom jeden argument.

Poznámka: Výsledek vzorce můžete naformátovat oddělovači tisíců a symboly měny až potom, když zadáte vzorec pomocí neformátovaných čísel (konstant). Obecně nedoporučujeme dávat konstanty do vzorců, protože se těžko hledají, když je budete později potřebovat změnit, a je snadné se při jejich zadávání splést. Mnohem lepší je umístit konstanty do samostatných buněk, aby jejich hodnoty byly vidět a snadno se na ně odkazovalo.

Pokud se ve výpočtech nedá použít datový typ buňky, může vzorec vrátit neočekávané výsledky. Když třeba do buňky, která je formátovaná jako text, zadáte jednoduchý vzorec =2+3, Excel zadaná data nevypočítá. Všechno, co se vám v buňce zobrazí, bude =2+3. Problém opravíte tak, že následujícím postupem změníte datový typ buňky z Text na Obecný:

  1. Vyberte buňku.

  2. Klikněte na Domů, klikněte na šipku u pole Formát čísla (nebo stiskněte Ctrl + Shift + 1) a klikněte na Obecně.

  3. Stisknutím klávesy F2 přepněte buňku do režimu úprav a vzorec potvrďte stisknutím klávesy Enter.

Datum zadané do buňky, která používá datový typ Číslo, se může místo kalendářního data zobrazit jako číselná hodnota kalendářního data. Pokud chcete, aby se číslo zobrazovalo jako datum, vyberte v galerii Formát čísla formát Datum.

Ve vzorci je poměrně běžné používat x jako operátor násobení, ale Excel může přijmout pouze hvězdičku (*) pro násobení. Pokud ve vzorci používáte konstanty, Excel zobrazí chybovou zprávu a vzorec pro vás může opravit nahrazením řetězce x hvězdičkou (*).

Okno se žádostí, abyste u násobení nahradili znak x znakem *

Pokud ale použijete odkazy na buňky, Excel vrátí #NAME? #ČÍSLO!.

Chyba #NÁZEV? při použití znaku x místo znaku * pro násobení u odkazů na buňky

Pokud vytváříte vzorec, který obsahuje text, uzavřete text do uvozovek.

Například vzorec ="Dnes je " & TEXT(DNES();"dddd, dd. mmmm") kombinuje text „Dnes je“ s výsledkem funkce TEXT a DNES a vrací výsledek, jako je třeba Dnes je pondělí, 30. květen.

Ve vzorci je v zadání "Dnes je " mezera před koncovými uvozovkami, aby se ve výsledku zobrazila mezera mezi textem „Dnes je“ a „pondělí, 30. květen“..

V jednom vzorci můžete zadat (vnořit) až 64 úrovní funkcí.

Třeba vzorec =KDYŽ(ODMOCNINA(PI())<2;"Méně než dvě!";"Více než dvě!") má tři úrovně funkcí: Funkce PI je vnořená uvnitř funkce ODMOCNINA, která je dále vnořená uvnitř funkce KDYŽ.

Pokud zadáte odkaz na hodnoty nebo buňky v jiném listu a název daného listu obsahuje neabecední znak (třeba mezeru), uzavřete název do jednoduchých uvozovek (').

Chcete-li například vrátit hodnotu z buňky D3 do listu s názvem čtvrtletní data v sešitu, zadejte: = ' čtvrtletní data '! D3. Bez uvozovek názvu listu zobrazí vzorec #NAME? chyba.

Na hodnoty nebo buňky v jiném listu můžete taky vytvořit odkaz ve vzorci tak, že na ně kliknete. Excel automaticky přidá uvozovky okolo názvů listů.

Když zadáte odkaz na hodnoty nebo buňky v jiném sešitě, uveďte název sešitu v hranatých závorkách ([]) a za ním název listu, ve kterém se požadované hodnoty nebo buňky nachází.

Chcete-li například odkazovat na buňky a1 až A8 na listu prodej v sešitě. čtvrtletí otevřeném v aplikaci Excel, zadejte: = [operace Q2. xlsx] prodej! A1: A8. Bez hranatých závorek se ve vzorci zobrazí chyba #REF!.

Pokud nemáte v Excelu sešit otevřený, zadejte úplnou cestu k souboru.

Zadejte například =ŘÁDKY('C:\My Documents\[Operace Q2.xlsx]Prodej'!A1:A8).

Poznámka: Pokud celá cesta obsahuje mezery, uzavřete cestu do jednoduchých uvozovek (na začátku cesty a za název listu před vykřičníkem).

Tip: Cestu k jinému sešitu získáte nejsnadněji tak, že druhý sešit otevřete, potom v původním sešitu zadáte =, stisknutím kláves Alt+Tab se přepnete do druhého sešitu a vyberete v listu požadovanou buňku. Potom zdrojový sešit zavřete. Váš vzorec se automaticky aktualizuje a bude obsahovat úplnou cestu k souboru a název listu – se správnou syntaxí. Cestu pak můžete případně zkopírovat a vložit ji, kam potřebujete.

Při dělení buňky jinou buňkou, která má nulovou hodnotu (0) nebo žádná hodnota, se zobrazí chyba #DIV/0!.

Této chybě se dá vyhnout tak, přímo na adrese buňky otestujete existenci jmenovatele.

=KDYŽ(B1;A1/B1;0)

Znamená to: KDYŽ(B1 existuje, vyděl hodnotu v buňce A1 hodnotou v buňce B1, jinak vrať 0).

Než cokoli odstraníte, vždycky zkontrolujte, že nepoužíváte žádné vzorce, které odkazují na data v buňkách, rozsahy, definované názvy, listy nebo sešity. Potom můžete nahradit tyto vzorce jejich výsledky, než odeberete data, na která se odkazuje.

Když nemůžete vzorce nahradit jejich výsledky, pročtěte si tyto informace o chybách a o tom, jak je možné je vyřešit:

  • Pokud vzorec odkazuje na buňky, které byly odstraněny nebo nahrazeny jinými daty, a vrátí #REFVyberte buňku se #REFem. #ČÍSLO!. V řádku vzorců vyberte #REF! a odstraňte ho. Potom zadejte oblast vzorce znovu.

  • Pokud není definován definovaný název a vzorec, který odkazuje na tento název, vrátí #NAME? chyba, definujte nový název, který odkazuje na požadovanou oblast, nebo změňte vzorec tak, aby odkazoval přímo na oblast buněk (například a2: D8).

  • Pokud chybí list a vzorec, který na něj odkazuje, vrátí chybu #REF!, neexistuje bohužel žádný způsob, jak tuto chybu opravit. Odstraněný list se nedá obnovit.

  • Pokud chybí sešit, vzorec, který na něj odkazuje, zůstane nedotčený, dokud vzorec nezměníte.

    Pokud třeba máte vzorec =[Sešit1.xlsx]List1'!A1 a Sešit1.xlsx už nemáte, hodnoty, na které se odkazuje v daném sešitu, zůstanou dostupné. Když ale upravíte a uložíte vzorec, který odkazuje na daný sešit, Excel zobrazí dialogové okno Aktualizovat hodnoty a vyzve vás, abyste zadali název souboru. Klikněte na Zrušit a potom zkontroluje, že se neztratila data, když jste nahradili vzorce odkazující na chybějící sešit výsledky vzorců.

Někdy při kopírování obsahu buňky chcete vložit jenom hodnotu a ne příslušný vzorec, který se zobrazuje na řádku vzorců.

Můžete například chtít zkopírovat výslednou hodnotu vzorce do buňky na jiném listu. Nebo můžete odstranit hodnoty, které jste použili ve vzorci, po zkopírování výsledné hodnoty do jiné buňky v listu. Obě tyto akce způsobují chybu neplatného odkazu na buňku (#REF!). zobrazí se v cílové buňce, protože na buňky obsahující hodnoty, které jste použili ve vzorci, se už odkazovat nedá.

Této chybě se dá vyhnout tak, že vložíte výsledné hodnoty vzorců do cílových buněk bez vzorce.

  1. V listu vyberte buňky obsahující výsledné hodnoty vzorce, které chcete kopírovat.

  2. Na kartě Domů klikněte ve skupině Schránka na Kopírovat Obrázek tlačítka .

    Vzhled pásu karet aplikace Excel

    Klávesová zkratka: Stiskněte CTRL+C.

  3. Vyberte levou horní buňku Oblast pro vložení.

    Tip: Chcete-li výběr přesunout nebo zkopírovat do jiného listu nebo sešitu, klikněte na ouško jiného listu nebo přejděte do jiného sešitu a potom vyberte levou horní buňku oblasti pro vložení.

  4. Na kartě Domů klikněte ve skupině Schránka na tlačítko Vložit Obrázek tlačítka a potom klikněte na příkaz Vložit hodnoty, nebo stiskněte kombinaci kláves ALT _GT_ E _GT_ S > V _GT_ ENTER for Windows nebo Option > Command > -> v > zadejte do Počítači.

Pokud chcete porozumět tomu, jak složitý nebo vnořený vzorec počítá konečný výsledek, můžete tento vzorec vyhodnotit.

  1. Vyberte vzorec, který chcete vyhodnotit.

  2. Klikněte na Vzorce > Vyhodnocení vzorce.

    Skupina Závislosti vzorců na kartě Vzorec

  3. Kliknutím na Vyhodnotit prozkoumejte hodnotu podtrženého odkazu. Výsledek vyhodnocení se zobrazí kurzívou.

    Dialogové okno Vyhodnocení vzorce

  4. Pokud podtržená část vzorce tvoří odkaz na jiný vzorec, kliknutím na Krok dovnitř zobrazte další vzorec v okně Vyhodnocení. Kliknutím na Krok ven se vraťte k předchozí buňce a vzorci.

    Tlačítko Krok dovnitř není dostupné při druhém zobrazení odkazu ve vzorci ani když vzorec odkazuje na buňku v jiném sešitu.

  5. Pokračujte, dokud nevyhodnotíte všechny části vzorce.

    Nástroj Vyhodnocení vzorce vám nemusí vždycky říct, proč je vzorec nefunkční, může vám ale pomoct zjistit, kde by mohl být problém. Může být velice užitečný ve větších vzorcích, kde by v opačném případě mohlo být obtížné ho najít.

    Poznámky: 

    • Některé části funkcí KDYŽ a ZVOLIT se nevyhodnotí a v okně Vyhodnocení se může zobrazit chyba #N/A.

    • Prázdné odkazy se v okně Vyhodnocení zobrazují jako nulové hodnoty (0).

    • Funkce, které se přepočítávají při každé změně listu. Tyto funkce, mezi něž patří NÁHČÍSLO, POČET.BLOKŮ, INDEX, POSUN, BUŇKA, NEPŘÍMÝ.ODKAZ, ŘÁDKY, SLOUPCE, NYNÍ, DNES a RANDBETWEEN, můžou způsobit, že se v dialogovém okně Vyhodnocení vzorce budou zobrazovat výsledky, které se liší od skutečných výsledků v buňce na listu.

Potřebujete další pomoc?

Kdykoli se můžete zeptat některého odborníka v technické komunitě Excelu, získat podporu v komunitě pro odpovědi, případně navrhnout novou funkci nebo vylepšení ve fóru Excel User Voice.

Viz také

Přehled vzorců v Excelu

Zjišťování chyb ve vzorcích

Funkce Excelu (podle abecedy)

Funkce Excelu (podle kategorie)

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×