Suchen über alle Arbeitsblätter
22.09.2003 11:52:20
Carsten
ich versuche gerade verzweifelt eine Suchfunktion zu basteln.
Ich habe eine Userform erstellt die genau der Excel internen Maske entspricht. Zusätzlich gibt es jedoch noch die Möglichkeit auszuwählen, ob die Suche auf die gesamte Mappe bezogen werden soll...na ja, zumindest soll es die Möglichkeit mal geben ;-)
Ich hatte dazu mit dem Makrorekorder zunächst folgendes aufgezeichnet:
Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
Dann habe ich versucht, den verschiedenen Werten Variablen zuzuordnen die ich per If-Abfragen ausgelesen habe. Leider bin ich damit nicht weitergekommen.
Da ich mit meinem eigenen Makro-Latein am Ende war habe ich dann mal ein wenig gestöbert, ein Makro gefunden und wie folgt geändert:
Private Sub CommandButton1_Click()
Dim t As Worksheet, z As Range, SuchW As String, counter As Integer, ausgabe As String, knopf As Integer, erste As String, i As String
SuchW = TextBox1.Value
If SuchW = "" Then Exit Sub
For Each t In Worksheets
t.Activate
Set z = t.Cells.Find(SuchW)
If Not z Is Nothing Then
erste = z.Address
Do
z.Activate
i = MsgBox("Auf diesem Blatt weitersuchen?", vbYesNo + vbQuestion)
If i = vbNo Then Exit Do
Set z = Cells.FindNext(after:=ActiveCell)
Loop Until erste = z.Address
End If
Next t
End Sub
So wird die Suche zwar über alle Blätter ausgeführt, aber das ist halt nicht das was ich mir vorstelle.
Wer kann mir bei folgenden Problemen helfen?
1. Ich möchte nicht von einer MsgBox gefragt werden ob die Suche fortgesetzt werden soll sondern, wie in der normalen Suche über den Button "Weitersuchen" gehen. Ich weiß jedoch nicht, wie ich die Userform an dieser Stelle wieder einbinde.
2. In meiner Userform gibt es die ComboBoxen für die Auswahl "In Zeilen/In Spalten" und "Werte/Formeln/Kommentare" sowie CheckBoxen für die Groß-/Kleinschreibung, Suche Ganzer Zellen sowie die Abfrage ob die Suche über alle Blätter erfolgen soll.
Ich schaffe es jedoch nicht, die eingestellten Werte aus der UserForm an ein Makro zu übergeben um die Suche gemäß der Einstellungen durchzuführen.
Ich weiß nun nicht mehr weiter und hoffe, hier ist jemand in den unendlichen Weiten des Web's der mir Helfen kann.
Ich erwarte übrigens keine Komplettlösung. Der eine oder andere Tip wäre schon nett.
Danke
Gruß
Carsten