Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Textdatei nach Begriff durchsuchen und Fundzeile importieren

Gruppe

TextImport

Problem

Wie kann ich eine Textdatei nach einem bestimmten Begriff durchsuchen lassen und die Zeile, in der der Suchbegriff gefunden wurde, in ein Excel-Arbeitsblatt importieren?

Lösung
Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.

StandardModule: basMain

Sub CreateText()
   Dim iFile As Integer, iCounter As Integer
   Dim sFile As String
   iFile = FreeFile
   sFile = Application.Path & "\texttest.txt"
   Open sFile For Output As iFile
   For iCounter = 1 To 10
      If iCounter = 5 Then
         Print #iFile, "Ein Hallo"
      Else
         Print #iFile, "Zeile " & iCounter
      End If
   Next iCounter
   Close iFile
   Workbooks.OpenText _
      Filename:=sFile, _
      DataType:=xlDelimited, _
      tab:=False, _
      semicolon:=False, _
      comma:=False, _
      Space:=False, _
      other:=False
   MsgBox "Weiter"
   ActiveWorkbook.Close savechanges:=False
End Sub

Sub TextImport()
   Dim iFile As Integer
   Dim sSearch As String, sTxt As String
   Dim sFile As String
   If Dir(sFile) = "" Then
      Beep
      MsgBox "Sie müssen zuerst eine Textdatei anlegen!"
      Exit Sub
   End If
   iFile = FreeFile
   sFile = Application.Path & "\texttest.txt"
   sSearch = "Hallo"
   Open sFile For Input As iFile
   Do Until EOF(1)
      Input #iFile, sTxt
      If InStr(sTxt, sSearch) Then
         Range("A1") = "Gefunden: " & sTxt
         Exit Do
      End If
   Loop
  Close iFile
  Kill sFile
End Sub