VBA XML

VBA XML

VBA XML

Excel VBA XML

de volledige vorm van XML is uitbreidbare opmaaktaal die veel lijkt op een HTML-bestand, is ontworpen om de gegevens van verschillende programma ‘ s op te slaan en te transporteren. XML-bestand slaat de gegevens die de splitsingen en scheidingstekens omvat. We kunnen een VBA-code maken waarmee we de gegevens uit het XML-bestand in Excel kunnen importeren. Om de gegevens uit het XML-bestand naar een ander formaat te importeren, moeten we een aantal regels instellen die aangeven wat voor soort gegevens en velden in het XML-bestand kunnen worden gebruikt. Om een macro in VBA voor het XML-bestand te maken, hebben we geen XML-Kladblok in ons systeem nodig. Maar als we het hebben zal het voor ons gemakkelijk zijn om het XML-bestand te lezen voor de gegevens die we nodig hebben.

hoewel in Excel, hebben we een voorziening van het importeren van de gegevens van XML-bestand, maar met behulp van VBA, kunnen we lezen, importeren van het XML-bestand in Excel.

Bekijk onze Demo cursussen en video ‘ s

Valuation, Hadoop, Excel, Mobile Apps, Web Development & nog veel meer.

typen knooppunten in VBA XML

in XML hebben we een verscheidenheid aan knooppunten die constructief helpt bij het lezen en ontleden van het XML-bestand naar andere bronnen zoals Word of Excel. Elk DocumentElement verwijst naar enkele van de onderstaande knooppuntlijsten.

  • Ouderknooppunt
  • eerste kind
  • laatste kind
  • Dochterknooppunten
  • volgende Broer / Zus
  • vorige Broer / Zus

alle bovengenoemde knopen bevestigen het type als, waarbij alleen Dochterknooppunten het array-type zijn .

in dit voorbeeld zien we een zeer eenvoudige VBA-Code om toegang te krijgen tot het XML-bestand dat op elke locatie van het individuele systeem is opgeslagen en deze in VBA te laden. Meestal hebben we MSXML2 om XML-bestanden in Excel te importeren met VBA.DOMDocument object om ons in staat te stellen om de gegevens dwars door XML structuur. Maar dit mag niet worden gebruikt in dit voorbeeld.

hiervoor moeten we een XML-bestand hebben waarin we een datastructuur in de vorm van Schema kunnen maken. Hieronder is de screenshot van het bedrijf schema waar onder dat we werknemer tak met de werknemer gegevens zoals voornaam, achternaam, contactnummer, e-ID.

VBA XML-Code

VBA XML-Code

VBA XML-boom

VBA XML-boom

stappen voor importeren & voeg XML toe in Excel VBA

hieronder zijn de voorbeelden van XML in Excel met behulp van de VBA-Code.

U kunt deze VBA XML Excel – sjabloon hier downloaden-VBA XML Excel-sjabloon

Voorbeeld # 1

Stap 1: Ga eerst naar het tabblad menu Invoegen in VBA en open een Module waar we de code transversale gegevens door XML zullen schrijven zoals hieronder getoond.

module invoegen

voeg Module

in Stap 2: Schrijf de subprocedure in de naam van VBA XML voor de definitie van de code.

Code:

Sub VBA_XML()End Sub

VBA XML voorbeeld 1-2

VBA XML voorbeeld 1-2

Stap 3: zoals we al hebben besproken, Voor het XML-bestand hebben we Object nodig. Dus, definieer nu een variabele met behulp van DIM als tekenreeks die zal worden gebruikt voor het opslaan van de bestandsnaam.

Code:

Sub VBA_XML()Dim XMLFile As StringEnd Sub

VBA XML voorbeeld 1-3

VBA XML voorbeeld 1-3

Stap 4: Nu zullen we een applicatie display waarschuwingen gebruiken die wordt gebruikt voor het tonen van het waarschuwingsbericht als het gekozen pad onjuist is.

Code:

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

VBA XML voorbeeld 1-4

VBA XML voorbeeld 1-4

Stap 5: nu zullen we de link of locatie plaatsen waar we het XML-bestand hebben bewaard en deze toewijzen aan de gedefinieerde variabele.

Code:

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

VBA XML voorbeeld 1-5

VBA XML voorbeeld 1-5
opmerking: Houd het XML-bestand op de locatie die gemakkelijk toegankelijk is.

Stap 6: Zoals we besproken hebben, krijgen we het eerste Object met MSXML2.DOMDoucment.

Code:

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

VBA XML voorbeeld 1-6

VBA XML voorbeeld 1-6

Stap 7: om de gegevens van het XML-bestand in Excel te laden, moeten we dat XML-bestand openen met behulp van de naam en locatie die we hebben opgeslagen in de XML-Bestandsvariabele en selecteer de optie laden als importeren naar lijst zoals hieronder getoond.

Code:

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

VBA XML voorbeeld 1-7

VBA XML voorbeeld 1-7

Stap 8: Eindelijk, opnieuw gebruik maken van de toepassing optie om de waarschuwing weer te geven als waar als er sprake is.

Code:

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

VBA XML voorbeeld 1-8

VBA XML voorbeeld 1-8

stap 9: nu zullen we de geschreven code compileren door op de F8 functionele toets te drukken en deze uit te voeren, als er geen fout is gevonden tijdens de compilatie.

we zullen zien dat de gegevens die zijn opgeslagen in het XML-bestand niet worden geïmporteerd in een nieuwe werkmap zoals hieronder wordt getoond. We kunnen elke lengte van gegevens van XML-bestand ophalen in Excel met behulp van deze eenvoudige VBA-Code.

 VBA XML voorbeeld 1-8

VBA XML voorbeeld 1-8

Voorbeeld #2

er is een andere manier om de gegevens van een XML-bestand te importeren met behulp van de VBA-Code die ook eenvoudig is. Hiervoor kunnen we een andere module van we kunnen de wijzigingen in dezelfde module ook.

Stap 1: hiervoor zouden we opnieuw een module nodig hebben en daar de subprocedure schrijven in de naam van VBA XML.

Code:

Sub VBA_XML2()End Sub

VBA XML voorbeeld 2-1

VBA XML voorbeeld 2-1

Stap 2: Definieer een variabele als tekenreeks waar we de bestandslocatie en een andere variabele voor de werkmap opslaan zoals hieronder weergegeven.

Code:

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

VBA XML voorbeeld 2-2

VBA XML voorbeeld 2-2

Stap 3: nu vergelijkbaar met het vorige voorbeeld zullen we nu gebruik maken van 2 toepassingen, een van het scherm bijwerken en andere voor weergave waarschuwingen Als FALSE.

Code:

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

VBA XML voorbeeld 2-3

VBA XML voorbeeld 2-3

Stap 4: nu in de gedefinieerde variabele XMLFile, zullen we het pad van het XML-bestand toewijzen.

Code:

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

gedefinieerd variabel voorbeeld 2-4

gedefinieerd variabel voorbeeld 2-4

Stap 5: net als bij voorbeeld-1, zullen we nu bijwerken stel de code voor het openen van XML-bestand met het pad gedefinieerd in xmlfile variabele en laad de gegevens importeren naar lijst.

Code:

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

VBA XML voorbeeld 2-5

VBA XML voorbeeld 2-5

Stap 6: Nu opnieuw om de Display alert applicatie als waar te zetten.

Code:

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

voorbeeld van Waarschuwingsapplicatie weergeven 2-6

voorbeeld van Waarschuwingsapplicatie weergeven 2-6

Stap 7: Zodra de gegevens zijn geïmporteerd, kopiëren we dat naar een andere werkmap uit de geselecteerde cel A1:D1 volgens het aantal headers dat beschikbaar is in het XML-bestand.

Code:

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

werkmap voorbeeld 2-7

werkmap voorbeeld 2-7

Stap 8: sluit eindelijk de code met behulp van het scherm bijwerken applicatie als waar.

Code:

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

scherm bijwerken applicatie voorbeeld 2-8

scherm bijwerken applicatie voorbeeld 2-8

stap 9: als we deze code nu uitvoeren, zien we dat de gegevens uit het XML-bestand worden geïmporteerd in een nieuwe Excel-werkmap zoals hieronder weergegeven.

VBA XML voorbeeld 2-9

VBA XML voorbeeld 2-9

voors van VBA XML

  • zelfs als u niet weet hoe u een XML-bestand maakt en eraan werkt, met behulp van dergelijke VBA-codes, kunnen we de gegevens extraheren in VBA-Code of in Excel.
  • we kunnen een deel van XML-gegevens of volledige gegevens in het VBA-venster ontleden met behulp van knooppuntverwijzingen.

te onthouden dingen

  • elke knooppuntreferentie heeft zijn eigen waarde en betekenis. Het gebruik van het juiste notitietype is erg belangrijk voor elke conditie.
  • XML naar VBA is niet beperkt tot de code die we in de bovenstaande voorbeelden hebben gezien.
  • we kunnen elk type gegevens extraheren met behulp van de code die we in de hierboven besproken voorbeelden hebben gezien. Maar houd de juiste locatie en het pad dat gemakkelijk toegankelijk is.
  • we kunnen ook de XML-bestandsgegevens extraheren zonder deze te openen vanuit de bronoptie van het tabblad Ontwikkelaar. Dit zal ons helpen om de gegevens zoals deze in de Excel-werkmap te krijgen.
  • sla het geschreven code Excel-bestand op in Macro-enabled excel-formaat, om te voorkomen dat de code verloren gaat.

Aanbevolen artikelen

dit is een leidraad voor de VBA XML. Hier bespreken we stappen om te importeren & voeg XML toe in Excel VBA en de verschillende soorten knooppunten, samen met praktische voorbeelden en downloadbare excel-sjabloon. U kunt ook door onze andere voorgestelde artikelen–

  1. VBA LBound
  2. VBA krijg celwaarde
  3. VBA IsError
  4. VBA Solver
0 aandelen

Leave a Reply