VBA XML

VBA XML

VBA XML

Excel VBA XML

plná forma XML je rozšiřitelný značkovací jazyk, který je podobně jako soubor HTML, je určen k ukládání a přepravě dat z různých programů. Soubor XML ukládá data, která zahrnují rozdělení a oddělovače. Můžeme vytvořit kód VBA, pomocí kterého můžeme importovat data ze souboru XML do aplikace Excel. Aby bylo možné importovat data ze souboru XML do jakéhokoli jiného formátu, musíme nastavit některá pravidla, která říká, jaký druh dat a polí lze použít v souboru XML. Chcete-li vytvořit makro ve VBA pro soubor XML, nepotřebujeme povinný poznámkový blok XML v našem systému. Ale pokud máme, bude pro nás snadné přečíst soubor XML pro data, která potřebujeme.

ačkoli v aplikaci Excel máme ustanovení o importu dat souboru XML, ale pomocí VBA můžeme číst, importovat soubor XML v aplikaci Excel.

podívejte se na naše Demo kurzy a videa

ocenění, Hadoop, Excel, mobilní aplikace, vývoj webových aplikací & mnoho dalších.

typy uzlů ve VBA XML

v XML máme řadu uzlů, které konstruktivně pomáhají při čtení a analýze souboru XML do jiných zdrojů, jako je Word nebo Excel. Každý dokumentový prvek odkazuje na některé z níže uvedených seznamů uzlů.

  • nadřazený uzel
  • první dítě
  • poslední dítě
  • podřízené uzly
  • další sourozenec
  • předchozí sourozenec

všechny výše uvedené uzly potvrzují Typ as, kde pouze podřízené uzly jsou typem pole .

v tomto příkladu uvidíme velmi jednoduchý kód VBA pro přístup k souboru XML uloženému v libovolném umístění jednotlivých systémů a jejich načtení do VBA. Obvykle importujeme soubory XML v aplikaci Excel pomocí VBA, máme MSXML2.DOMDocument objekt, který nám umožní přenést data přes strukturu XML. To však v tomto příkladu nemusí být použito.

k tomu musíme mít soubor XML, ve kterém můžeme vytvořit datovou strukturu ve formě schématu. Níže je snímek obrazovky firemního schématu, kde pod tím máme pobočku zaměstnanců s podrobnostmi o zaměstnancích, jako je jméno, příjmení, kontaktní číslo, e-mailové ID.

VBA XML kód

VBA XML kód

VBA XML strom

VBA XML strom

kroky k importu & přidat XML v Excelu VBA

Níže jsou uvedeny příklady XML v Excelu pomocí kódu VBA.

tuto šablonu VBA XML Excel si můžete stáhnout zde-šablona VBA XML Excel

Příklad # 1

Krok 1: Nejprve přejděte na kartu Vložit nabídku ve VBA a otevřete modul, kde budeme psát kód příčná data prostřednictvím XML, jak je uvedeno níže.

Vložit Modul

Vložit Modul

Krok 2: Napište podproces ve jménu VBA XML pro definici kódu.

kód:

Sub VBA_XML()End Sub

příklad XML VBA 1-2

příklad XML VBA 1-2

Krok 3: Jak jsme již diskutovali, pro soubor XML budeme vyžadovat objekt. Nyní tedy definujte proměnnou pomocí DIM jako řetězec, který bude použit pro uložení názvu souboru.

kód:

Sub VBA_XML()Dim XMLFile As StringEnd Sub

příklad XML VBA 1-3

příklad XML VBA 1-3

Krok 4: Nyní použijeme upozornění na zobrazení aplikace, která se používá k zobrazení výstražné zprávy, pokud je zvolená cesta nesprávná.

kód:

Sub VBA_XML()Dim XMLFile As StringApplication.DisplayAlerts = FalseEnd Sub

příklad XML VBA 1-4

příklad XML VBA 1-4

Krok 5: Nyní vložíme odkaz nebo umístění, kde jsme uchovávali soubor XML, a přiřadíme jej definované proměnné.

kód:

Sub VBA_XML()Dim XMLFile As StringApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"End Sub

příklad XML VBA 1-5

příklad XML VBA 1-5
Poznámka: uchovávejte soubor XML v místě, které je snadno přístupné.

Krok 6: Jak jsme diskutovali, dostaneme první objekt s MSXML2.DOMDoucment.

kód:

Sub VBA_XML()Dim CusDoc As ObjectDim Base As ObjectSet CusDoc = CreateObject("MSXML2.DOMDoucment")End Sub

příklad XML VBA 1-6

příklad XML VBA 1-6

Krok 7: Chcete-li načíst data souboru XML v aplikaci Excel, musíme tento soubor XML otevřít pomocí názvu a umístění, které jsme uložili v proměnné souboru XML, a vybrat možnost zatížení jako Import do seznamu, jak je uvedeno níže.

kód:

Sub VBA_XML()Dim XMLFile As StringApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Workbooks.OpenXML Filename:=XMLFile, LoadOption:=xlXmlLoadImportToListEnd Sub

příklad XML VBA 1-7

příklad XML VBA 1-7

Krok 8: Nakonec znovu použijte možnost Aplikace a zobrazte upozornění jako pravdivé, pokud existuje.

kód:

Sub VBA_XML()Dim XMLFile As StringApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Workbooks.OpenXML Filename:=XMLFile, LoadOption:=xlXmlLoadImportToListApplication.DisplayAlerts = TrueEnd Sub

příklad XML VBA 1-8

příklad XML VBA 1-8

Krok 9: nyní zkompilujeme písemný kód stisknutím funkčního tlačítka F8 a spustíme jej, pokud během kompilace nedojde k žádné chybě.

uvidíme, data uložená v souboru XML nejsou importována do nového sešitu, jak je uvedeno níže. Můžeme načíst libovolnou délku dat XML souboru do Excelu pomocí tohoto jednoduchého kódu VBA.

 VBA XML příklad 1-8

příklad XML VBA 1-8

příklad #2

existuje další způsob, jak importovat data souboru XML pomocí kódu VBA, který je také jednoduchý. Za tímto účelem můžeme mít další modul, který můžeme provést také ve stejném modulu.

Krok 1: k tomu bychom znovu potřebovali modul a tam napište podproces ve jménu VBA XML.

kód:

Sub VBA_XML2()End Sub

příklad XML VBA 2-1

příklad XML VBA 2-1

Krok 2: Definujte proměnnou jako řetězec, kde budeme ukládat umístění souboru a další proměnnou pro sešit, jak je uvedeno níže.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookEnd Sub

příklad XML VBA 2-2

příklad XML VBA 2-2

Krok 3: nyní podobně jako v předchozím příkladu budeme nyní používat aplikace 2, jednu z aktualizací obrazovky a další pro zobrazení upozornění jako nepravdivých.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseEnd Sub

příklad XML VBA 2-3

příklad XML VBA 2-3

Krok 4: Nyní v definované proměnné XMLFile přiřadíme cestu k souboru XML.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"End Sub

příklad definované proměnné 2-4

příklad definované proměnné 2-4

Krok 5: podobně jako příklad-1, nyní aktualizujeme nastavit kód pro otevření souboru XML s cestou definovanou v proměnné XMLFile a načíst Import dat do seznamu.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Set WBook = Workbooks.OpenXML(Filename:=XMLFile, LoadOption:=xlXmlLoadImportToList)End Sub

příklad XML VBA 2-5

příklad XML VBA 2-5

Krok 6: Nyní znovu, aby aplikace display alert byla pravdivá.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Set WBook = Workbooks.OpenXML(Filename:=XMLFile, LoadOption:=xlXmlLoadImportToList)Application.DisplayAlerts = TrueEnd Sub

Zobrazit příklad aplikace Upozornění 2-6

Zobrazit příklad aplikace Upozornění 2-6

Krok 7: Jakmile jsou data importována, zkopírujeme je do jiného sešitu z vybrané buňky A1: D1 podle počtu záhlaví dostupných v souboru XML.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Set WBook = Workbooks.OpenXML(Filename:=XMLFile, LoadOption:=xlXmlLoadImportToList)Application.DisplayAlerts = TrueWBook.Sheets(1).UsedRange.Copy ThisWorkbook.Sheets(1).Range("A1:D1")End Sub

příklad sešitu 2-7

příklad sešitu 2-7

Krok 8: konečně zavřete kód pomocí aplikace pro aktualizaci obrazovky jako TRUE.

kód:

Sub VBA_XML2()Dim XMLFile As StringDim WBook As WorkbookApplication.ScreenUpdating = FalseApplication.DisplayAlerts = FalseXMLFile = "C:\Ashwani\Company.xml"Set WBook = Workbooks.OpenXML(Filename:=XMLFile, LoadOption:=xlXmlLoadImportToList)Application.DisplayAlerts = TrueWBook.Sheets(1).UsedRange.Copy ThisWorkbook.Sheets(1).Range("A1:D1")Application.ScreenUpdating = TrueEnd Sub

příklad aplikace aktualizace obrazovky 2-8

příklad aplikace aktualizace obrazovky 2-8

Krok 9: Nyní, když spustíme tento kód, uvidíme, že data ze souboru XML budou importována do nového sešitu aplikace Excel, jak je uvedeno níže.

 VBA XML příklad 2-9

příklad XML VBA 2-9

Pros VBA XML

  • i když nevíte, jak vytvořit soubor XML a pracovat na něm, pomocí takových kódů VBA můžeme data extrahovat do kódu VBA nebo do Excelu.
  • můžeme analyzovat část dat XML nebo úplná data do okna VBA pomocí odkazů na uzly.

věci k zapamatování

  • každý odkaz na uzel má svou vlastní hodnotu a význam. Použití správného typu poznámky je velmi důležité pro každou podmínku.
  • XML to VBA není omezen na kód, který jsme viděli ve výše uvedených příkladech.
  • můžeme extrahovat jakýkoli typ dat pomocí kódu, který jsme viděli ve výše diskutovaných příkladech. Ale udržet správné umístění a cestu, která je snadno přístupná.
  • můžeme také extrahovat data souboru XML, aniž bychom je otevřeli ze zdrojové možnosti karty vývojář. To nám pomůže získat data tak, jak jsou do sešitu aplikace Excel.
  • Uložte písemný kód Excel soubor v makru povolen formátu excel, aby nedošlo ke ztrátě kódu.

doporučené články

Toto je průvodce XML VBA. Zde diskutujeme kroky k importu & přidat XML v Excelu VBA a jeho různé typy uzlů spolu s praktickými příklady a stahovatelnou šablonou Excelu. Můžete si také projít naše další navrhované články–

  1. VBA LBound
  2. VBA Get Cell Value
  3. VBA IsError
  4. VBA Solver
0 akcie

Leave a Reply