Daten aus Excel mit VBA auslesen und bestimmte Wörter ausschließen
Hallo zusammen,
bin neu im Forum und würde gerne folgendes Umsetzen. Ich möchte aus vielen Textdateien etwas bestimmtest auslesen. Das sammeln der Zeile aus den Textdateien habe ich mit folgendem VBA ermöglicht.
Nun wird allerdings der Wert der ganzen Zeile ausgegeben: Wagenzuglast:480 t Wagenzuglänge:400 m Gesamtzuglänge:417 m, Mbr 67 R/P den Fettgedruckten Bereich würde ich gerne rausfiltern. Wie mache ich das?
bin neu im Forum und würde gerne folgendes Umsetzen. Ich möchte aus vielen Textdateien etwas bestimmtest auslesen. Das sammeln der Zeile aus den Textdateien habe ich mit folgendem VBA ermöglicht.
Sub Sammeln()
Ordner = "P:\Fahrpläne 2018"
Dateityp = LCase("txt")
Felder = Array("Wagenzuglast:")
MaxFeldIndex = UBound(Felder)
Dim FeldL() As Integer
ReDim FeldL(MaxFeldIndex)
For i = 0 To MaxFeldIndex
FeldL(i) = Len(Felder(i))
Next
Zeile = 2
Rows(CStr(Zeile) & ":65536").ClearContents
Set fso = CreateObject("Scripting.FileSystemObject")
For Each Datei In fso.GetFolder(Ordner).Files
If LCase(fso.GetExtensionname(Datei.Name)) = Dateityp Then
Daten = Datei.OpenAsTextStream.ReadAll
Cells(Zeile, 1) = fso.GetBaseName(Datei.Name)
For i = 0 To MaxFeldIndex
Pos = InStr(Daten, Felder(i))
If Pos > 0 Then
Wert = Trim(Split(Mid(Daten, Pos + FeldL(i)), vbCrLf)(0))
Cells(Zeile, i + 2).Value = Wert
End If
Next
Zeile = Zeile + 1
End If
Next
End Sub
Nun wird allerdings der Wert der ganzen Zeile ausgegeben: Wagenzuglast:480 t Wagenzuglänge:400 m Gesamtzuglänge:417 m, Mbr 67 R/P den Fettgedruckten Bereich würde ich gerne rausfiltern. Wie mache ich das?
Please also mark the comments that contributed to the solution of the article
Content-Key: 479036
Url: https://administrator.de/contentid/479036
Printed on: May 22, 2024 at 14:05 o'clock
6 Comments
Latest comment
Und wenn's egal sein soll wo der Wert steht, bietet sich natürlich immer auch Regex an
"Wagenzuglast:([^:]+) "
Moin,
zuverlässig geht das nur mittels Regex:
Pattern:
HowTo: https://www.vba-tutorial.de/applikation/regexp.htm
zuverlässig geht das nur mittels Regex:
Pattern:
(Wagenzuglast:\d+\s*t)
HowTo: https://www.vba-tutorial.de/applikation/regexp.htm