Zwei Strings gleichzeitig in Excel suchen
Schritt-für-Schritt-Anleitung
Um in Excel nach zwei Strings gleichzeitig zu suchen, kannst Du die folgende VBA-Makro-Lösung verwenden. Dieser Ansatz vermeidet die Verwendung von Application.Goto und Select, was die Effizienz erhöht.
- Öffne Excel und drücke
ALT + F11, um den VBA-Editor zu öffnen.
- Klicke im Menü auf
Einfügen und wähle Modul, um ein neues Modul hinzuzufügen.
- Kopiere den folgenden Code in das Modul:
Option Explicit
Sub SucheZweiStrings()
Dim rngF As Range, lngR As Long
Set rngF = Columns(1).Find(What:="abc", _
LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, _
SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False)
If Not rngF Is Nothing Then
lngR = rngF.Row
Do
If InStr(Cells(rngF.Row, 2), "def") > 0 Then
MsgBox "Treffer in Zeile " & rngF.Row
Exit Do
End If
Set rngF = Cells.FindNext(rngF)
If rngF Is Nothing Then Exit Do
Loop While rngF.Row > lngR
End If
End Sub
- Schließe den VBA-Editor und kehre zu Excel zurück.
- Führe das Makro über
Entwicklertools > Makros aus und wähle SucheZweiStrings.
Dieses Makro sucht nach dem String "abc" in Spalte A und prüft, ob in der entsprechenden Zeile in Spalte B der String "def" vorhanden ist.
Häufige Fehler und Lösungen
Alternative Methoden
Eine alternative Methode ist die Verwendung von Excel-Formeln, um die Suche zu vereinfachen:
- Du kannst die Funktion
=WENN(UND(A1="abc";B1="def");"Treffer";"") in einer neuen Spalte verwenden, um zu überprüfen, ob beide Bedingungen erfüllt sind.
- Diese Formel gibt "Treffer" aus, wenn in Zelle A1 "abc" und in Zelle B1 "def" steht.
Praktische Beispiele
Angenommen, Du hast folgende Daten in Spalte A und B:
| A |
B |
| abc |
def |
| ghi |
jkl |
| abc |
mno |
| pqr |
def |
Wenn Du das Makro ausführst, wird es "Treffer in Zeile 1" melden, da in der ersten Zeile beide Strings vorhanden sind.
Tipps für Profis
- Optimiere Deine Suchanfragen, indem Du die Parameter für
Find anpasst. Zum Beispiel kannst Du LookAt:=xlWhole verwenden, wenn Du nach ganzen Übereinstimmungen suchst.
- Erstelle eine Fehlermeldung oder Logik, um die Anzahl der Treffer zu zählen, anstatt nur den ersten Treffer anzuzeigen. Dies kann hilfreich sein, wenn Du mit großen Datenmengen arbeitest.
FAQ: Häufige Fragen
1. Kann ich das Skript anpassen, um nach mehr als zwei Strings zu suchen?
Ja, Du kannst das Skript erweitern, indem Du zusätzliche Bedingungen hinzufügst, um weitere Strings zu überprüfen.
2. Ist dieser Ansatz in allen Excel-Versionen anwendbar?
Die meisten VBA-Funktionen sind in den neueren Excel-Versionen verfügbar. Stelle sicher, dass Du mindestens Excel 2007 oder höher verwendest.
3. Wie kann ich das Makro automatisch bei jedem Öffnen der Datei ausführen?
Füge den Aufruf des Makros in das Workbook_Open Ereignis in ThisWorkbook ein, um das Makro beim Öffnen der Datei auszuführen.