Hallo,
Ich versuche seit 2 Tagen eine xml Datei, bzw deren Werte einzulesen.. Egal wie ich es anstelle, ich komm einfach nicht weiter. Und mitlerweile hab ich mich auch schon zu tode gegooglet und alles ausprobiert was mir irgendwie in die Finger kam.
Um folgendes xml geht es:
Zum einlesen verwende ich habe ich folgenden VBA code(schnipsel):
Leider bleibt xmlKnoten immer leer und die MsgBox "Knoten nicht gefunden. Vermutlich falsche XML-Struktur" wird angezeigt. Wie komme ich bitte an die Knoten???????? Ich brauche die Daten innerhalb des ProjEigenschaften-Knoten. Also Zb. Zelle oder Projektnummer
Danke für eure Hilfe!!
Ich versuche seit 2 Tagen eine xml Datei, bzw deren Werte einzulesen.. Egal wie ich es anstelle, ich komm einfach nicht weiter. Und mitlerweile hab ich mich auch schon zu tode gegooglet und alles ausprobiert was mir irgendwie in die Finger kam.
Um folgendes xml geht es:
XML-Quellcode
- <?xml version="1.0" standalone="yes"?>
- <ProjektDS xmlns="http://tempuri.org/ProjektDS.xsd">
- <ProjLaststufen>
- <ID>15</ID>
- <ZelleID>0</ZelleID>
- <Name>LS1</Name>
- <SumAuflast>0.022652</SumAuflast>
- <SumLaststufen>0</SumLaststufen>
- </ProjLaststufen>
- <ProjLaststufen>
- <ID>16</ID>
- <ZelleID>0</ZelleID>
- <Name>LS2</Name>
- <SumAuflast>0.015101</SumAuflast>
- <SumLaststufen>0</SumLaststufen>
- </ProjLaststufen>
- <ProjLaststufen>
- <ID>17</ID>
- <ZelleID>0</ZelleID>
- <Name>LS3</Name>
- <SumAuflast>0.037753</SumAuflast>
- <SumLaststufen>0</SumLaststufen>
- </ProjLaststufen>
- .
- .
- .
- <ProjIntervall>
- <ID>110</ID>
- <LS_ID>21</LS_ID>
- <Periode>1</Periode>
- <Messabstand>01:00:00</Messabstand>
- </ProjIntervall>
- <ProjIntervall>
- <ID>111</ID>
- <LS_ID>21</LS_ID>
- <Periode>00</Periode>
- <Messabstand>01:30:00</Messabstand>
- </ProjIntervall>
- <ProjEigenschaften>
- <ID>0</ID>
- <Zelle>Variabel 70</Zelle>
- <Laststufenanzahl>7</Laststufenanzahl>
- <Projektname>Hubland</Projektname>
- <Projektnummer>218080</Projektnummer>
- <Labornummer>18-1700</Labornummer>
- <Port>COM6</Port>
- <Probenhoehe>20</Probenhoehe>
- <Sachbearbeiter>Oechsner</Sachbearbeiter>
- <RingSchwebend>true</RingSchwebend>
- <RingFest>false</RingFest>
- <Kompression>true</Kompression>
- <Quelldruck>false</Quelldruck>
- <Quellhebung>false</Quellhebung>
- <Flaeche>0,0038485</Flaeche>
- <LetzteMessung>true</LetzteMessung>
- <AuslagerStandPfad>C:\Users\Probeneingang\Desktop\Ausgelagerte Messdateien</AuslagerStandPfad>
- </ProjEigenschaften>
- </ProjektDS>
Zum einlesen verwende ich habe ich folgenden VBA code(schnipsel):
Quellcode
- Private Sub ImportXMLList(ByVal Pfad As String, ByVal Dateiname As String)
- Dim path As String
- Dim xmlDoc As New MSXML2.DOMDocument60
- Dim xmlKnoten As MSXML2.IXMLDOMElement
- Dim xmlAttribut As Object
- Dim xpathKnoten As String
- path = Replace(Pfad, "*.csv", Dateiname & ".xml")
- xmlDoc.async = False
- xmlDoc.validateOnParse = True ' Auf Fehler prüfen
- xmlDoc.Load (path) ' XML-Datei laden
- If xmlDoc.Load(path) = False Then
- MsgBox "XML-Datei: '" & path & "' wurde nicht gefunden"
- Exit Sub
- ElseIf xmlDoc.parseError = True Then
- MsgBox "XML-Datei: '" & path & "' hat fehlerhaften Aufbau (ist nicht 'wohlgeformt')"
- Exit Sub
- End If
- xmlDoc.SetProperty "SelectionLanguage", "XPath" ' Suchen soll mittels XPath erfolgen
- ' Auf Knoten gehen
- Set xmlKnoten = xmlDoc.SelectSingleNode("//ProjektDS/ProjEigenschaften") ' XPath-Anweisung
- If xmlKnoten Is Nothing Then
- MsgBox "Knoten nicht gefunden. Vermutlich falsche XML-Struktur"
- Exit Sub
- End If
- End Sub
Leider bleibt xmlKnoten immer leer und die MsgBox "Knoten nicht gefunden. Vermutlich falsche XML-Struktur" wird angezeigt. Wie komme ich bitte an die Knoten???????? Ich brauche die Daten innerhalb des ProjEigenschaften-Knoten. Also Zb. Zelle oder Projektnummer
Danke für eure Hilfe!!