Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1692to1696
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

xml.datei mit vba lesen

xml.datei mit vba lesen
13.05.2019 20:25:15
ing.grohn
Hallo Forum,
ich suche nun schon ein geraume Zeit nach Infos zu xml-Dateien.
Bin aber nicht wirklich zum Ziel gekommen.
Kennt jemand die Datei: xjustiz_nachricht.xml
und kann mir zeigen, wie ich sie per VBA auslesen/auswerten kann?
Für eure Bemühungen bedanke ich mich.
MfG
Albrecht
(eine Beispieldatei kann ich nicht anbieten (siehe Namen))

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: im Prinzip ...
13.05.2019 22:32:18
Fennek
Hallo,
könnte eine interessante Frage sein, aber das File mit den Erklärungen benötigt schon VIEL mehr Einarbeitungszeit, als in einem Forum möglich ist.
Jeder Code, der html bzw. xml ausliest muss an einem Beispiel entwickelt werden. Mit echten Daten geht das aber nicht.
Falls Du es so auf ein Detail reduzieren kannst, dass es in ca. 15-20 Minuten bearbeitet werden kann, ist Hilfe vielleicht möglich.
mfg
AW: im Prinzip ...
14.05.2019 06:53:46
ing.grohn
Hallo Forum,
ich habs mir fast gedacht. Dass das nicht so einfach zu sein scheint, sieht man ja am IE. Öffnet man damit eine xml-Datei, die nicht ganz OK ist, sieht mit auch nur einen seltsamen String!
Trotzdem vielen Dank.
Als Ausweg les ich den ganzen "Quatsch" in einen String und such mir die "wichtigen" Dinge raus.
Mit freundlichen Grüßen
Albrecht
Anzeige
AW: xml.datei mit vba lesen
14.05.2019 09:27:50
peterk
Hallo
Unter https://xjustiz.justiz.de/xjustiz_2_4/index.php findest Du die Spezifikation deines Dokuments (über 1000 Seiten ;-) )
Im Anhang findest Du ein Code Schnipsel wie es im Prinzip gehen würde (bezieht sich aber nicht auf Deine XML).

Option Explicit
Dim xDoc As MSXML2.DOMDocument60
Public Sub LoadDocument()
Set xDoc = New MSXML2.DOMDocument60
xDoc.validateOnParse = True
If xDoc.Load("C:\Users\?\Downloads\123098.xml") Then
' The document loaded successfully.
Debug.Print "Load success ...."
Else
' The document failed to load.
Debug.Print "Load failed ...."
End If
End Sub
Sub GetKD_ID(myCustomer As String)
Dim oSeqNodes As IXMLDOMNodeList
Dim oSeqNode As IXMLDOMNode
Dim oSeqChild As IXMLDOMNode
Set oSeqNodes = xDoc.SelectNodes("//BrandData/" & myCustomer)
If oSeqNodes.Length = 0 Then
'show some message
Else
For Each oSeqNode In oSeqNodes
For Each oSeqChild In oSeqNode.ChildNodes
Debug.Print oSeqChild.nodeName
Next
Next
End If
End Sub

Anzeige
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 10:24:36
ing.grohn
Hallo Forum, Hallo Peter,
vielen Dank für den Link. Um weiter zu kommen, lese ich die XML-Datei in einen String ein und selektiere die für mich wichtigen Elemente aus. Reicht völlig!
Allerdings gibs Probleme mit den Umlauten: das "ö" wir z.B. als A mit Tilde + Absatzmarke Word dargestellt (Word, Editor, Notepad++ interpretieren das korrekt).
(Ich dachte das Problem wäre ad acta!)
Ich denke das ist ein Codeseitenproblem ()!!?
Kann da jemand helfen oder muss ich jeden Teilstring analysieren?
Für die Mühe bedanke ich mich
Mit freundlichen Grüßen
Albrecht
Anzeige
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 10:33:58
peterk
Hallo
Wie liest Du den XML-File ein (der ist meist UTF-8 kodiert)?
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 13:16:37
ing.grohn
Hallo Peter
bis Dateiende Input #1, strText
MfG
Albrecht
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 14:00:59
peterk
Hallo
Das funktioniert so nicht. Um eine UTF-8 einzulesen mußt Du ADODB.Stream verwenden. Anbei ein kleines Beispiel

Sub ReadFileUTF()

  Dim myObj As Object
  Dim myStr As String
  
  If myObj Is Nothing Then Set myObj = CreateObject("ADODB.Stream")
  
  myObj.CharSet = "utf-8"
  myObj.Open
  myObj.LoadFromFile "C:\Users\a.xml" ' anpassen 
  
  Do Until myObj.EOS
       myStr = myObj.ReadText(-2)     ' hier wird Zeilenweise gelesen 
       Debug.Print myStr              ' hier gehts mit deinem Programm weiter 
  Loop
  myObj.Close
End Sub

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 15 - mit VBAHTML 12.6.0



Anzeige
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 15:47:52
ing.grohn
Hallo Peter,
das Einlesen der Daten hat schon geklappt!
War halt das Problem mit den Umlauten.
Ich versuchs!
Vielen Dank
Albrecht
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 13:25:01
ing.grohn
mit Codeseiten hab ich mich nicht beschäftigt.
und ich weiss, das man bei xml eigtl _Umlaute speziell behandeln muss
Ä Ä etc.
die stehen da aber anders drin: z.B. Schröder - Schröder
mfG
Albrecht
XML-Dateien lese ich in der Regel...
15.05.2019 13:52:17
Case
Hallo Albrecht, :-)
... so ein: ;-)
Option Explicit
Public Sub Main()
Dim strUTF8 As String
Dim objStream As Object
Set objStream = CreateObject("ADODB.Stream")
With objStream
.Charset = "UTF-8"
.Open
.LoadFromFile "C:\Temp\Tes.xml"
strUTF8 = .ReadText(-1)
.Close
Debug.Print strUTF8
End With
Set objStream = Nothing
End Sub
Klappt auch mit Umlauten.
Servus
Case

Anzeige
AW: XML-Dateien lese ich in der Regel...
15.05.2019 15:49:37
ing.grohn
Hallo Case,
vielen Dank!
Ich werde Eure Lösung (Peter hat ein ähnliches Beispiel) versuchen und hoffe die Umlaute sind wieder ordentlich!
Albrecht
AW: xml.datei mit vba lesen und Umlaute
15.05.2019 16:11:10
ing.grohn
Hallo,
die Umlaute sind DA!!!
einen schönen Tag
Albrecht

44 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige