den untenstehenden Code habe ich vor geraumer Zeit einmal hier aus dem Forum genannt bekommen. Er bewirkt, dass ich über eine Listenfeld den Suchbegriff vorgeben kann, so dass die gesuchten Zeilen aus der aktiven Arbeitsmappe komplett in ein neues Tabellenblatt kopiert werden.
Wie ist der Code umzustellen, wenn ich nicht die gesamte Arbeitsmappe durchsuchen lassen will, sondern lediglich das jeweils aktive Tabellenblatt ? Ansonsten aber mit den gleichen Funktionen, die gefundenen Zeilen/Datensätze in ein neues Tabellenblatt einfügen zu lassen. Entgegen zum untenstehenden Code sollte dann das Einfügen in ein neues Arbeitsblatt ab A2 beginnen, da über einen anderen Code noch in A1-A15 Überschriften vergeben werden.
Ich wäre wieder sehr dankbar für Eure Mithilfe.
Gruß Wolfgang
Sub MultiSuchetext2(strSearch As String)
Dim wks As Worksheet
Dim rngFind As Range
Dim lngRow As Long
Dim strFind As String
Dim wb As Workbook
Set wb = Workbooks.Add(1)
For Each wks In ThisWorkbook.Worksheets
If wks.Name <> "Start" Then
wks.Activate
If wks.Name <> "Daten" Then
wks.Activate
Set rngFind = wks.Cells.Find("*" & strSearch & "*")
If Not rngFind Is Nothing Then
strFind = rngFind.Address
Do
lngRow = lngRow + 1
wks.Range(wks.Cells(rngFind.Row, 1), _
wks.Cells(rngFind.Row, 14)).Copy _
wb.Sheets(1).Cells(lngRow, 1)
Set rngFind = wks.Cells.FindNext(After:=rngFind)
If rngFind.Address = strFind Then Exit Do
Loop
End If
End If
End If
Next wks
ThisWorkbook.Sheets("Start").Select
wb.Activate
End Sub