Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1528to1532
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
VBA Text durchsuchen
08.12.2016 21:33:08
Oliver
Hallo liebe Forumsmitglieder,
ich habe wieder mal ein Problem mit dem ich nicht weiter komme. Ich benutze ein VBA-Skript aus dem Forum um Textdateien in einem Verzeichnis nach Begriffen zu durchsuchen. Die Begriffe passe ich entsprechend an. Das funktioniert auch sehr gut.
Der gesuchte Begriff wird mit dem Dateinamen und der gesamten Zeile in eine Exceltabelle ausgegeben.
Bei bestimmten Begriffen muss nicht nur die Zeile in der sich der Begriff befindet, sondern auch die immer darauffolgende Zeile in der Tabelle in Spalte 3 ausgegeben werden.
Das bekomme ich irgendwie nicht hin. Vielleicht kann ja einer von euch helfen.
Sub findWordinTXT()
Dim sWord As String, sPath As String, sSearchPath As String, FileName As String, InputData
Dim AnzFound As Integer
AnzFound = 0
'Wort nach dem gesucht werden soll
sWord = "Desoxyribonukleinsäuremethylester"
'Suche nach allen Textdateien im Verzeichnis c:\temp\xl
sSearchPath = "c:\temp\xl\*.txt"
sPath = "c:\temp\xl\"
FileName = Dir(sSearchPath)
If FileName  "" Then
Do While FileName  ""
Open sPath & FileName For Input As #1
Do While Not EOF(1)
Line Input #1, InputData
If InStr(1, InputData, sWord) > 0 Then
'Zeile mit Suchwort gefunden
AnzFound = AnzFound + 1
Sheets("Recherche").Cells(AnzFound, 1) = FileName
Sheets("Recherche").Cells(AnzFound, 2) = InputData
End If
Loop
Close #1
'nächste Datei
FileName = Dir
Loop
End If
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Text durchsuchen
08.12.2016 22:27:51
Luschi
Hallo Oliver,
bei mir würde das so aussehen:

Sub findWordinTXT()
Dim sWord As String, sPath As String, sSearchPath As String, FileName As String, InputData
Dim AnzFound As Integer, JaNein As Boolean, ff As Integer
AnzFound = 0
'Wort nach dem gesucht werden soll
sWord = "Desoxyribonukleinsäuremethylester"
'oder False falls nächste Zeile uninteressant
JaNein = True
'Suche nach allen Textdateien im Verzeichnis c:\temp\xl
sSearchPath = "c:\temp\xl\*.txt"
sPath = "c:\temp\xl\"
FileName = Dir(sSearchPath)
If FileName  "" Then
Do While FileName  ""
ff = FreeFile
Open sPath & FileName For Input As #ff
Do While Not EOF(1)
Line Input #ff, InputData
If InStr(1, InputData, sWord, vbTextCompare) > 0 Then
'Zeile mit Suchwort gefunden
AnzFound = AnzFound + 1
Sheets("Recherche").Cells(AnzFound, 1) = FileName
Sheets("Recherche").Cells(AnzFound, 2) = InputData
If JaNein Then
'nächste Zeile einlesen
Line Input #ff, InputData
Sheets("Recherche").Cells(AnzFound, 3) = InputData
End If
End If
Loop
Close #ff
'nächste Datei
FileName = Dir
Loop
End If
End Sub
Gruß von Luschi
aus klein-Paris
Anzeige
AW: VBA Text durchsuchen
08.12.2016 23:27:09
Fennek
Hallo,
falls Windows genutzt wird: in den alten DOS (cmd.exe) Befehlen gibt es "Find", das alle txt-Dateien eines Ordner nah einem Schlüsselwort durchsucht und die Zeilen der Treffer auflistet:

find /N "Dexo" > c:\temp\Liste.txt
Diese "Liste.txt" kann dann mit xl geöffnet werden.
mfg
AW: VBA Text durchsuchen
09.12.2016 10:22:24
Oliver
Vielen Dank an Luschi aus klein-Paris.
Das hat mir sehr weitergeholfen.
Gruß
Olli

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige