Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Textdatei nach Begriff durchsuchen

Forumthread: Textdatei nach Begriff durchsuchen

Textdatei nach Begriff durchsuchen
20.11.2003 13:00:51
andy
Hallo,
ich habe ein Problem und hoffe ihr könnt mir weiterhelfen.
Ich möchte gerne das mir Ein Makro aus einem Verzeichniss alle textdateien öffnet(durchsucht) nach einem von mir bestimmten begriff. Wenn das Makro den Begriff in der Textdatei findet soll mir das Makro in ein Tabellenblatt in der ersten Spalt den Textdateinamen schreiben und daneben die gesamte Zeile aus der Textdatei wo der Suchbegriff vorkommt.
Leider habe ich keine Ahnung wie ich das Programmieren soll und hoffe auf eure Hilfe.
Vielen Dank !!
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Textdatei nach Begriff durchsuchen
20.11.2003 13:03:44
Michael Scheffler
Hallo Andy,

ohne VBA-Kenntnisse wird das wohl nix.

Warum nimmst Du nicht die Suchen-Funktion von Windows?

Gruß

Micha
AW: Textdatei nach Begriff durchsuchen
20.11.2003 13:48:34
Nayus
Hallo,
folgendes Makro erledigt, was Du willst.

To Do:
1. Variablen "sSearchPath", "sPath" und "sWord" Deinen Gegebenheiten anpassen
2. Blatt, auf dem die Ergebnisse angezeigt werden anpassen (hier "Recherche")

Viel Erfolg,
Nayus


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

Anzeige
;
Anzeige

Infobox / Tutorial

Textdatei nach Begriff durchsuchen in Excel


Schritt-für-Schritt-Anleitung

Um eine Textdatei nach einem bestimmten Begriff zu durchsuchen und die Ergebnisse in Excel anzuzeigen, kannst du ein einfaches VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul:

    • Klicke im Menü auf Einfügen und wähle Modul.
  3. Kopiere den folgenden VBA-Code in das Modul:

    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 = "DeinSuchbegriff"
    ' Suche nach allen Textdateien im Verzeichnis
    sSearchPath = "C:\DeinVerzeichnis\*.txt"
    sPath = "C:\DeinVerzeichnis\"
    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
  4. Passe die Variablen an:

    • Ändere sWord auf den Begriff, den du suchen möchtest.
    • Setze den Pfad in sSearchPath auf den Ordner, in dem deine Textdateien gespeichert sind.
    • Stelle sicher, dass das Arbeitsblatt "Recherche" existiert oder passe den Namen an.
  5. Führe das Makro aus:

    • Drücke F5, um das Makro auszuführen und die Ergebnisse in das Arbeitsblatt "Recherche" zu schreiben.

Häufige Fehler und Lösungen

  • Fehler: "Datei nicht gefunden"

    • Überprüfe den angegebenen Dateipfad und stelle sicher, dass er korrekt ist und die Textdateien vorhanden sind.
  • Fehler: "Methoden- oder Datentyp nicht gefunden"

    • Stelle sicher, dass das Arbeitsblatt "Recherche" existiert. Du kannst einen neuen Tab erstellen oder den Namen im Code anpassen.
  • Problem mit dem Suchbegriff

    • Achte darauf, dass der Suchbegriff exakt mit dem übereinstimmt, was in den Textdateien steht (Groß-/Kleinschreibung beachten).

Alternative Methoden

Falls du nicht mit VBA arbeiten möchtest, kannst du auch die Windows-Suche verwenden:

  1. Öffne den Datei-Explorer und gehe zu dem Verzeichnis, in dem deine Textdateien gespeichert sind.
  2. Suche nach *.* und gib deinen Suchbegriff in das Suchfeld ein.
  3. Du kannst die Ergebnisse dann manuell in Excel kopieren.

Praktische Beispiele

  • Beispiel 1: Suche nach dem Begriff "Excel" in den Textdateien im Ordner "C:\Dokumente\Textdateien".
  • Beispiel 2: Ändere den Suchbegriff auf "Makro", um alle Zeilen mit diesem Begriff in den Dateien zu finden.

Tipps für Profis

  • Verwende Platzhalter: Du kannst den Suchbegriff dynamisch gestalten, z.B. durch Eingaben in ein Excel-Feld.
  • Fehlerbehandlung: Füge Error-Handling im VBA-Code hinzu, um besser mit unerwarteten Situationen umzugehen.

    On Error GoTo ErrorHandler
    ' Dein Code hier
    Exit Sub
    ErrorHandler:
    MsgBox "Ein Fehler ist aufgetreten: " & Err.Description

FAQ: Häufige Fragen

1. Wie viele Textdateien kann das Makro durchlaufen? Das Makro kann beliebig viele Textdateien durchlaufen, solange sie im angegebenen Verzeichnis sind.

2. Ist VBA für alle Excel-Versionen verfügbar? Ja, VBA ist in den meisten Versionen von Excel verfügbar, einschließlich Excel 2010, 2013, 2016, 2019 und Office 365.

3. Kann ich mehrere Suchbegriffe gleichzeitig verwenden? Ja, du kannst die Logik im Code anpassen, um mehrere Suchbegriffe zu berücksichtigen, indem du eine Schleife über ein Array von Suchbegriffen erstellst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige