Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
708to712
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
708to712
708to712
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Text aus xml-Datei lesen und in Zelle eintragen

Text aus xml-Datei lesen und in Zelle eintragen
20.12.2005 21:10:23
Helmut
Hallo liebe Forenuser,
ich habe ein kleines Problem mit dem Auslesen von Daten aus Dateien. Vor langer Zeit hat mir hier mal jemand weitergeholfen, aber nicht ganz so, dass es komplett funktioniert.
Ich habe 4 Dateien in dem Verzeichnis E:\ stehen. Diese Dateien heißen immer:
DU_BG_exp.xml
DU_ET_exp.xml
DO_BG_exp.xml
DO_ET_exp.xml
In jeder dieser Dateien kommt im gesamten Text irgendwo eine Zeile
IMATNR 6677888 /IMATNR
vor (File mit Beispiel ist upgeloadet).
https://www.herber.de/bbs/user/29468.txt
Die Zahl (in diesem Beispiel 6677888) dazwischen ist immer 7stellig und in jeder der 4 Dateien unterschiedlich; auch die Zeile kann eine andere sein, in der die Zahl steht!
Nun habe ich ein Excel-Sheet. Darin habe ich ein Tabellenblatt mit einem Button. Mit einem Klick auf den Button möchte ich, dass:
1. die erste Datei im oben genannten Verzeichnis geöffnet wird
2. der Text zwischen den "Tags" ausgelesen wird
3. und danach dieser Text im Excel-Tabellenblatt in die Zelle D40 geschrieben wird
Das alles mit allen 4 Dateien, nur der jeweilige Text zwischen den "Tags" soll in andere Zellen ins Excel-Tabellenblatt wandern (D40, D41, D45, D48).
Kann mir hier jemand weiterhelfen. Ich bin leider Anfänger mit VBA und das wäre mir eine große Hilfe.
Danke im Voraus.
Liebe Grüße,
Helmut

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Text aus xml-Datei lesen und in Zelle eintrage
20.12.2005 21:50:38
bst
Abend Helmut,
versuch's mal hiermit.
cu, Bernd
--
Option Explicit
Const StartPfad As String = "c:\temp\test\"

Sub LeseXML()
Dim fnames, dstAdr, i%, re As Object
Set re = CreateObject("vbscript.regexp")
re.Pattern = "<IMATNR>(\d+)</IMATNR>"
fnames = Array("DU_BG_exp.xml", "DU_ET_exp.xml", "DO_BG_exp.xml", "DO_ET_exp.xml")
dstAdr = Array("D40", "D41", "D45", "D48")
For i = LBound(fnames) To UBound(fnames)
doLeseXMLDatei StartPfad & CStr(fnames(i)), CStr(dstAdr(i)), re
Next
Set re = Nothing
End Sub


Sub doLeseXMLDatei(fname As String, dstAdr As String, re As Object)
Dim handle%, s$, mc As Object
handle = FreeFile
Open fname For Binary As #handle
s = Space(LOF(handle))
Get #handle, , s
Close #handle
Set mc = re.Execute(s)
If mc.Count Then
Range(dstAdr) = mc(0).submatches(0)
End If
Set mc = Nothing
End Sub

Anzeige
AW: Text aus xml-Datei lesen und in Zelle eintrage
21.12.2005 09:17:24
Helmut
Hallo Bernd,
was bedeutet
Const StartPfad As String = "c:\temp\test\"
in deinem File? Ist hier mein Pfad E:\ zu setzten?
Und kann ich 2 "sub-Blöcke" in einem "Button-Block" im VBA einbinden?
Bitte um Hilfe, danke.
Liebe Grüße,
Helmut
AW: Text aus xml-Datei lesen und in Zelle eintrage
21.12.2005 11:45:36
bst
Hallo Helmut,
1. Ja, dieses ist der Startpfad für alle Dateien. Falls diese sich in unterschiedlichen
Verzeichnissen befinden sollten geht das so natürlich nicht.
2. Wie meinst Du das mit den 2 Blöcken ? Wie genau sehen die aus und wo genau sollen sie hin. Falls es ggf. noch (viel) mehr Blöcke werden sollten, müßte man sich die Vorgehensweise vermutlich noch mal überlegen.
cu, Bernd
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige