AW: Nachfrage
28.01.2008 12:18:33
Chris
Servus,
hier mal als Ansatz ein Makro:
Sub Suche()
Dim rSuche As Range
Dim rFinde As Range
Dim lngReihe As Long
Dim strSuchstring As String, strFirst As String
strSuchstring = Workbooks("Mappe1.xls").Sheets("Tabelle1").Range("O1")
Set rFinde = Workbooks("Mappe2.xls").Sheets("Tabelle1").Range("A:A")
Set rSuche = rFinde.Find(what:=strSuchstring, LookAt:=xlWhole, SearchDirection:=xlNext)
If Not rSuche Is Nothing Then
strFirst = rSuche.Address
Do
lngReihe = rSuche.Row
If Workbooks("Mappe3.xls").Sheets("Tabelle1").Range("A1") "" Then
Workbooks("Mappe2.xls").Sheets("Tabelle1").Range("A" & lngReihe).Copy Workbooks(" _
Mappe3.xls").Sheets("Tabelle1").Range("A65536").End(xlUp).Offset(1, 0)
Else
Workbooks("Mappe2.xls").Sheets("Tabelle1").Range("A" & lngReihe).Copy Workbooks(" _
Mappe3.xls").Sheets("Tabelle1").Range("A1")
End If
Set rSuche = rFinde.FindNext(rSuche)
Loop While Not rSuche Is Nothing And rSuche.Address strFirst
End If
Set rSuche = Nothing
Set rFinde = Nothing
End Sub
Anmerkung:
alle drei Dateien müssen geöffnet sein, die Dateinamen und Sheetnamen, musst du jeweils an deine Gegebenheiten anpassen. Das Makro steht in der Datei, in der der Suchstring in O1 steht (in das entsprechende Tabellenmodul (Alt+F11)).
Momentan werden die Ergebnisse in Spalte A wiedergegeben, jeweils untereinander, d.h.: die Suchergebnisse werden nicht gelöscht bei erneutem Starten des Makros.
Gruß
Chris