Přeskočit navigaci | Přeskočit na novinky

Jste zde: Úvodní stránka » excel » Query-editor » chyby-M-language-Editor-Power-Query
Microsoft Excel logo

Chyby a jejich nalezení v M-ku - Power Query (BI)

Videokurzy Excel

Ve spolupráci se SEDUO jsem vytvořil několik videokurzů:

Někdy se setkáte v Editoru Power Query s chybami (já osobně hodně často), jaké jsou, jak chyby najít, ošetřit, příapdně moje časté chyby, se kterými se setkávám. Tohle je předmětem tohoto článku.

Chyby v M-ku

Tento článek je rozdělen na kapitoly pro možnost vylepšování a doplňování informací:

Typy chyb

V M-ku se mohou vyskytnout (z mého pohledu) dvě kategorie chyb:

  • Chyby v kroku (step)
  • Chyby v hodnotě (value)

Chyby v kroku

Dotaz se vám bohužel nenačte a v Editoru Power Query se zobrazí hlášení o chybě, např.:

Chyby v kroku - Editoru Power Query

Chyby v hodnotě

Dotaz se načte, ale zobrazí se upozornění, že se načetl s daným počtem chyb, a v Excel vám poskytne hypertextový odkaz, abyste viděli, jaké chyby se při načítání vyskytly. Klik vám (přenese vás do Editoru Power Query) je zobrazí.

Chyby v Editoru Power Query

V Power BI při aktualizaci (nebo po "uzavření Editoru Power Query).

Chyby v Editoru Power Query

Jak chyby v M-ku najít

Záleží o jakou chybu jde:

  • Chyby v kroku
  • Chyby v hodnotě

Chyby v kroku

Pokud se jedná o chybu v kroku, je potřeba najít krok, který chybu obsahuje. Pokud jste v Editoru Power Query a chyba není na poslendím kroku, stačí klik na ikonu Přejít na chybu.

Chyby v Editoru Power Query

Jste přeneseni na krok, kde se chyba nachází, můžete opravit tak, že:

  • kliknete na ozubené kolečko - pokud se u daného kroku nachází
  • opravíte v řádku vzorců - pokud se v M-kódu vyznáte
  • Klik na ikonu Upravit nastavení - pokud se u chyby nachází. Například pokud je nevhodně navolená cesta k souboru
  • Rozšířený Editor - pokud víte co a kde v M upravit
Chyby v Editoru Power Query

Chyby v hodnotě

Pokud je chyba v hodnotě, v Excelu uvidíte možnost odskoku na seznam chyb. Nebo-li vsoupíte do Editoru Power Query, který vám vrátí řádky, které obsahují chybu.

Chyby v Editoru Power Query

Klikem na počet chyb ... se spustí Editor Power Query a v novém dotazu se objeví tabulka, které obsahuje chyby. Neboli řádky, které obsahují chyby.

Chyby v Editoru Power Query

Pokud je budete chtít odstranit, musíte se vrátit do tabulky ze které se chyby vyextrahovali. Tj. u ukázky Dotaz (Tabulka) Prodeje a z menu Domů - Odebrat řádky - Odebrat chyby. Případně projít předchozí kroky, zda neobsahují třeba chybu v nastavení typu atd.

Chyby v Editoru Power Query

Poznámka: V ukázce všechny řádky obsahují chybu. ;)

Podobně v Power BI, se proklikem dostanete do Editoru Power BI a chyby máte v samostatné složce.

Chyby v Editoru Power Query

Časté chyby v kroku

Seznam chyb, které se mohou objevit v kroku:

Seznam chyb, který postupně rozšířím a dolním:

  • Chybný odkaz na zdroj dat - změna umístění souboru
  • Chybějící znak - například uvozovky
  • Odstraněný krok - a navazný ztratil integritu (nemůže přejmenovat neexistující sloupec,...)
  • Duplicitní název - pokud tvoříte vzorce ručně

Odkaz na zdroj dat

Pokud dojde k přesunutí souboru, který zpracováváte, dojde k chybě zdroje dat (Excel, Power BI danný soubor nenajde, má chybnou cestu k souboru).

V ukázce jste načítá-li ze sešitu tabulku jako tabulka které se jmenovala Tabulka2, bohužel byla přejmenována na Tabulka1. Pokud v kódu:

= Excel.CurrentWorkbook(){[Name="Tabulka2"]}[Content]

Na:

= Excel.CurrentWorkbook(){[Name="Tabulka1"]}[Content]

A budete mít opraveno.

Chyby v Editoru Power Query

Chybějící znak

Pokud upravujete/kopírujete kód, může nastat, že zapomenete na jeden znak (uvozovky u názvu, čárka za krokem, dvojtečka, dvě tečky u rozsahu, hranaté závodky, složené závorky), atd. Opět můžete obdržet chybu v kroku. Například chybný kód:

= Table.AddColumn(#"Změněný typ", "Vlastní, each [ID] & [Jméno])

Opravite-li na (bude fungovat), neboli Dodáte za "Vlastní uvozovky:

= Table.AddColumn(#"Změněný typ", "Vlastní", each [ID] & [Jméno]) Chyby v Editoru Power Query

Odstraněný / vložený krok

Pokud jste v postupu odstraníte krok, může nastat problém. Máte-li tabulku, kde jste nejprve sloučily sloupce a sloučený sloupec přejmenovali/odstranili, nádledně pokud krok "Odebrat sloupce" odstraníte. Vše je vpořádku (odebírate poslední krok).

Chyby v Editoru Power Query

Odstranite-li ale místo posledního kroku, krok předposlední tj. Sloučené sloupce. Obdržíte chybu, protože poslední krok, odstaňuje sloučený sloupec, který už v použitém postupu není, takže poslední krok nemůže navázat (nemůže odstranit neexistující sloupec) a vznikne chyba.

Chyby v Editoru Power Query

Ano můžete ošetřit, ale to si nechám na samostatný článek.

MissingField.Ignore

Duplicitní název

Pokud tvoříte kód ručně, může dojít k duplicitnímu názvu. Například krok Dělení2 již jednou v použitém postupa máte.

Chyby v Editoru Power Query

Chyby v hodnotě

Kdy se může v hodnotě objevit chyba:

  • Zdroj dat - chyby již ve zdroji dat
  • Změna typu - text, číslo, datum
  • Výpočet - text, číslo, datum
  • Dělení nulou Infinity
  • ... ...

Zdroj dat

Chyby obsahuje již zdroj dat. V Editoru Power Query odstraníte/nahradíte chybové řádky/hodnoty, nebo upozorníte autora (nebo sami) zdrojové tabulky, ať chybné údaje opraví.

Chyby ve zdroji dat - Editoru Power Query

Změna typu

Využít změnu typu, můžete k ošetření chyb (slučování, sčítání), nebo i vytvoření chyby.

Ošetření. Mějte sloupec, který obsahuje čísla a čísla formátované jako text. Pokud k číslům přičtete hodnotu u sloupce čísel formotavaných jako text obdržíte chybovou hodnotu. Pokud ale nejprve sloupci čísel formátovanýách jako text přiřadíte typ číslo, čísla v textovém formátu se převedou na "skutečná" čísla a následně můžete provést výpočet již bez problému.

Chyby v Editoru Power Query

Výpočet

Pokud jsou chybně zadány hodnoty, nebo jsou nevhodného typu, může být výsledkem chyba:

  • slučování - slučujete text a číslo (co projde v Excel neprojde v Power Query)
  • sčítání - slučujete text a číslo (co projde v Excel neprojde v Power Query)

Pokud slučujete sloupec definovaný (typ) číslo a text obdržíte ve sloupci chybové hodnoty.

= Table.AddColumn(#"Změněný typ1", "Vlastní", each [Jméno]&[ID])

Stejný případ pokud k textu přičítá konstantu (Sloupec ID je typu text!):

= Table.AddColumn(#"Změněný typ", "Součet", each [ID]+1) Chyby v Editoru Power Query

Dělení nulou

Potřebujete-li v M-ku dělit, může nastat případ, kdy dojde k dělení nulou. Z Excel víte, že dojde k vracení chybové hodnoty, v Editoru Power Query se vrací hodnota Infinity (nekonečno) případně -Infinity (mínus nekonečno).

= Table.AddColumn(#"Přeuspořádané sloupce", "dělení", each 500/[číslo])

Stejného výsledku dosáhnete pokud použijete funkci Value.Divide:

= Table.AddColumn(#"Přidané: Vlastní", "Dělení 2", each Value.Divide(500,[číslo])) Chyby v Editoru Power Query

V dalších článcích se podíváme nejen jak ošetřit dělení nulou. Například:

Dělení = Table.AddColumn(#"Přidané: Vlastní2", "Vlastní.1", each if [dělení] = Number.PositiveInfinity then "dělení nulou" else [dělení] ) // NegativeInfinity

Související články

Související články o M-kódu:

Závěrem

Narazili jste na nějaké problémy, nesrovnalost? Máte tip na vylepšení nebo doplnění článku, můžete zmínit v komentářích (nebo na sociálních sí tích).

Článek byl aktualizován: 22.01.2022 08:51

Odměna

Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.


Pavel Lasák - autor webu

Pavel Lasák

Microsoft Office (Word, Excel, Google tabulky, PowerPoint) se věnuji od roku 2000 (od 2004 na této doméně) - V roce 2017 jsem od Microsoft získal prestižní ocenění MVP (zatím jsem jediný z ČR v kategorií Excel). Své vědomosti a zkušenosti dávám k dispozici i on-line ve videích pro SEDUO. Ve firmách školím a konzultuji, učím na MUNI. Tento web již tvořím přes 15 let. Zdarma je zde přes 1.000 návodu, tipů a triků, včetně přes 250 různých šablon, sešitů.

   Pavel Lasák LinkedIn Profil    Pavel Lasák Google+ Profil    Pavel Lasák facebook Profil    Pavel Lasák twitter Profil


Komentáře zatím nejsou

Můžete být prvními co zanechají smysluplný komentář.






Excel


Sdílejte

Pomohl Vám návod?
Sdílejte na Facebooku, G+
LinkedIn...

Nové články


Reklama


TOPlist Licence Creative Commons webarchiv rss XML

Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2025 |