Ako načítať tabuľku z Wordu a PDF do Excelu, PowerPivotu a Power BI

Minule sa ma na školení pýtala jedna pani, ako načítať tabuľku z Wordu do Excelu a Power BI. Pretože občas im niekto pošle údaje ako tabuľku vo Worde, prípadne v ňom majú raz za čas uvedené nejaké zaujímavé tabuľky. Power BI ani Excel na to nemajú priamo konektor, ale aj napriek tomu to ide celkom jednoducho. A rovnako to funguje aj so súbormi PDF.

Celý trik, ako načítať tabuľku z Wordu či PDF, spočíva v tom, že najprv daný dokument otvoríme vo Worde, a uložíme ho ako HTML súbor. A potom ho naimportujeme cez Web konektor v Power Query. Ktoré je v Exceli aj v Power BI.

Zoberme si teda takýto wordovský súbor:

Máme vstupnú tabuľku z Wordu

Tento súbor obsahuje kurzový lístok NBS. Existuje síce priama cesta, ako to naimportovať z XML súboru z webu NBS, ale teraz sa budeme tváriť, že máme údaje iba ako tabuľku vo Worde.

Prvý krok

Prvým krokom je konverzia wordovského alebo PDF súboru na HTML súbor. To zvláda Word už od verzie 2013, takže by to dnes už nemal byť pre nikoho problém. Otvorte si teda daný wordovský súbor vo Worde. A ak je to PDF, tak ho otvorte tiež vo Worde, a Word si ho skonvertuje sám na editovateľný dokument.

Potom ho potrebujeme skonvertovať na HTML súbor. To spravíme tak, že ho dáme uložiť v tomto formáte. Napr. v Exceli 2016 to spravíte tak, že kliknete v hlavnom menu na “Súbor” => “Uložiť ako”, a potom ako typ súboru vyberiete “Webová stránka, redukovaná (*.htm, *.html)” alebo “Webová stránka (*.htm, *.html)”:

Ešte však nedávajte uložiť súbor. Je to kvôli tomu, že Word štandardne ukladá HTML súbory v kódovaní “Windows-1250” pre stredoeurópske jazyky, ale my ho potrebujeme uložiť v kódovaní “UTF-8”. Pretože Power Query nám inak nenačíta správne znaky s diakritikou, či iné špeciálne znaky. Spravíme to tak, že kúsok pod políčkom, kde zadávame názov súboru, klikneme na tlačítko “Nástroje” => “Web – možnosti…”:

Tam prejdeme do záložky “Kódovanie”, vyberieme kódovanie “Unicode (UTF-8)”, a stlačíme tlačítko OK:

Potom môžete dať konečne tento súbor uložiť, kliknutím na tlačítko “Uložiť”.

Druhý krok – ako načítať tabuľku z Wordu

V druhom kroku naimportujeme tabuľku z tohto HTML súboru cez Power Query. Použijeme konektor “Web” na načítanie údajov z webu, pretože tento konektor vie okrem iného načítať tabuľky v HTML stránkach (ako píšem napr. v mojej knihe o Power BI), alebo hoci aj z Excelu na SharePointe (ako napr. v tomto článku). My ho tentokrát použijeme na načítanie tabuľky z HTML súboru.

Pokračujte teda takto:

  • ak máte Excel 2010/2013, oba s doplnkom Power Query, tak v hlavnom menu choďte na záložku Power Query, a tam kliknite hneď na prvé tlačítko nazvané “Z webu”,
  • ak máte Excel 2016, tak v hlavnom menu choďte na záložku Údaje, a tam kliknite na Nový dotaz => Z iných zdrojov => Z webu,
  • ak máte Excel 2019, alebo Excel z Office 365, tak v hlavnom menu choďte na záložku Údaje, a tam kliknite na Získať údaje => Z iných zdrojov => Z webu,
  • ak máte Power BI Desktop, tak v hlavnom menu kliknite na Načítať údaje => Web.

Tu vidíte štandardizáciu užívateľského rozhrania v praxi. To aby nebolo tak jednoduché 🙂

Následne sa vám otvorí okno na zadanie URL adresy. Zadajte tam celú cestu k HTML súboru, ktorú ste vytvorili v predchádzajúcom kroku. V tej ceste nahraďte všetky spätné lomítka obyčajnými lomítkami. A pred celú tú cestu ešte vložte “file:///”. V mojom prípade, ak mám ten súbor uložený napríklad ako “C:\data\kurzovylistok.html”, tak tam zadám cestu “file:///C:/data/kurzovylistok.html”:

Ako načítať tabuľku z Wordu cez Power Query do Power BI

Potom stlačíme tlačítko OK.

Následne sa nám otvorí Navigátor, ktorý sa v tom súbore pokúsi nájsť tabuľky. Nájdené tabuľky sa zobrazia v ľavom paneli, a po kliknutí na tabuľku “Table 0” uvidíme náhľad pre našu tabuľku z Wordu:

Ak by Vám tam nenašlo žiadne tabuľky, tak skúste funkciu “Pridať tabuľku použitím príkladov” v ľavom dolnom rohu.

V niektorých prípadoch sa stane, že znaky s diakritikou Power Query nenačíta správne. Ak sa to stane, tak sa vráťte naspäť do prvého kroku v tomto článku, a overte, či ste pri ukladaní súboru naozaj vybrali kódovanie UTF-8.

Keď je všetko zobrazené správne, tak už len kliknite na tabuľku “Table 0” (ak ste v Exceli), alebo ju zafajknite (ak ste v Power BI), a stlačte tlačítko “Načítať”:

A máme našu tabuľku z Wordu načítanú do Excelu, resp. Power BI.

Profit!

Word ani PDF nie sú síce zrovna vhodné formáty na prenos údajov, ale niekedy jednoducho nemáte inú možnosť. A keď veľmi dobre poznáte možnosti základných nástrojov, tak vidíte, že ani takáto vec nie je žiadny problém. A keď si to prejdete párkrát, tak zistíte, že načítať tabuľku z Wordu a PDF do Excelu je hračka 🙂

2 komentárov k “Ako načítať tabuľku z Wordu a PDF do Excelu, PowerPivotu a Power BI

  • 29. októbra 2019 at 10:15
    Permalink

    Zdravím, neprechádzal som si excelovský PowerPivot, ale v PowerBI Desktope existuje konektor na PDF súbory, skúsil som to a zdá sa, že funguje 🙂
    Čo sa týka Wordu, zdá sa mi rýchlejšie Copy Paste do excelu, ale predpokladám, že Váš postup funguje, tak prečo nie…

    Odpovedať
    • 29. októbra 2019 at 17:51
      Permalink

      V excelovskom PowerPivote nie je podpora pre PDF, pretože to je konektor v rámci najnovšieho Power Query, momentálne iba v Power BI Desktope. Veľakrát však má tento konektor problém s niektorými PDF dokumentami, keď napr. pre viacriadkový text v bunke načíta každý riadok v texte do osobitnej bunky/riadku v tabuľke. Táto metóda s tým nemá problém. A okrem iného, táto metóda ide automatizovať cez skriptovacie jazyky a rozhranie DCOM.

      Odpovedať

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená.