Hva er et DomDocument?

Innholdsfortegnelse

Et DomDocument er en beholder (variabel/objekt) for å holde et XML -dokument i VBA -koden.

Akkurat som du bruker en strengvariabel for å holde en strengverdi, kan du bruke et DomDocument til å holde et XML -dokument.

(for en fullstendig liste over DomDocuments -eiendommer, se halvveis ned på denne siden)

Hvorfor bryr jeg meg om hva et DomDocument er?

Excel har noen veldig intuitive måter å flytte XML til et regneark (XML Maps), men:

• Hva om du vil manipulere dataene etter at du har hentet dem, men før dataene vises i cellene dine?

• Hva om du vil importere XML -data til kontroller i stedet for kartlagte celler, som kombobokser, etiketter eller tekstbokser?

Begge disse oppgavene er vanskelige (om ikke umulige) å utføre ved hjelp av XML -kart. Vi kan imidlertid importere XML -dataene til et DomDocument, deretter trekke ut dataene vi trenger, skrive til kontroller, filtrere dataene eller manipulere dataene før de vises i et regneark.

Hvordan laster jeg inn XML i et DomDocument?

Følgende eksempel bruker Excel 2003. I Visual Basic Editor Goto Tools-> Referanser og merk av i boksen for "Microsoft XML v5.0"

Nå trenger vi litt XML. Nylig opprettet jeg et Google -nettstedskart for dette nettstedet, og det er i XML, så vi kan bruke det: AutomateExcel Google XML -nettstedskart

For å laste inn SiteMap XML -dokumentet mitt i et DomDocument -objekt i Excel, bruk følgende kode (som er kommentert og forklarer ting):

1234567891011121314151617181920212223242526272829303132333435 Sub DomDocumentBasic ()Dim oDom som MSXML2.DOMDocument'Opprett DomDocument -objektetSett oDom = CreateObject ("MSXML2.DOMDocument")'Legg i hele dokumentet før du går videreoDom.async = Falsk'Ikke valideroDom.validateOnParse = FalskoDom.Load ("AutomateExcel Google XML -nettstedskart")MsgBox oDom.XMLSlutt Sub

Koden laster ganske enkelt XML -en og viser den i en meldingsboks:

Merk: Hvis du laster inn XML fra en nettadresse og har problemer, må du passe på at du ikke glemte linjen "oDom.async = Falsk“.

Hvordan krysser jeg DomDocumentet?

Nå som jeg har XML -dataene i et objekt, hvordan "gjør jeg noe" med det?

LOL, jeg lærer fremdeles denne delen. Jeg legger ut det grunnleggende i et fremtidig innlegg og slipper en lenke til det her.

Innleggstittelen var “What is a DomDocument”, forhåpentligvis har du en idé nå.

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave