VBA .Find mit Wildcard in Excel
Schritt-für-Schritt-Anleitung
-
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Erstelle ein neues Modul, indem Du auf Einfügen
> Modul
klickst.
-
Füge den folgenden Code in das Modul ein:
Sub SucheMitWildcard()
Dim wo As Range
Dim ID As String
Dim i As Long
' Setze die Zeilennummer, die Du durchsuchen möchtest
i = 5
' Beispiel für die Suche mit Wildcard
ID = Left(Cells(i, 1), InStr(1, Cells(i, 1), " ", vbTextCompare)) & "* EQUITY"
Set wo = Cells.Find(What:=ID, LookAt:=xlWhole)
If Not wo Is Nothing Then
MsgBox "Treffer gefunden: " & wo.Address
Else
MsgBox "Kein Treffer gefunden."
End If
End Sub
-
Stelle sicher, dass die Daten in der ersten Spalte vorhanden sind, bevor Du das Makro ausführst.
-
Führe das Makro aus, um nach dem Suchbegriff zu suchen, der Wildcards enthält.
Häufige Fehler und Lösungen
Alternative Methoden
Wenn .Find
nicht die gewünschten Ergebnisse liefert, kannst Du auch die AutoFilter
-Methode verwenden:
Sub FilterMitWildcard()
Dim ws As Worksheet
Set ws = ThisWorkbook.Sheets("DeinTabellenblatt")
ws.Range("A1").AutoFilter Field:=1, Criteria1:="ALV * EQUITY"
End Sub
Hier wird die Filter-Funktion von Excel verwendet, um nach Kriterien mit Wildcards zu suchen.
Praktische Beispiele
Hier sind einige praktische Beispiele, wie Du VBA
mit Wildcards verwenden kannst:
-
Suche nach einer bestimmten Kategorie:
Set wo = Cells.Find(What:="*Kategorie*", LookAt:=xlPart)
-
Suchen und Ersetzen mit Wildcards:
Cells.Replace What:="*Alt*", Replacement:="Neu", LookAt:=xlPart
Diese Beispiele zeigen, wie Du die Flexibilität von Wildcards in Excel VBA
nutzen kannst.
Tipps für Profis
- Verwende
Option Explicit
am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind. Dies hilft, Fehler zu vermeiden.
- Teste Deinen Code mit verschiedenen Wildcard-Kombinationen, um sicherzustellen, dass Du alle möglichen Treffer findest.
- Nutze
Debug.Print
zur Überprüfung, welche Werte in Deinen Variablen gespeichert sind.
FAQ: Häufige Fragen
1. Was sind Wildcards in VBA?
Wildcards sind Platzhalter, die in Suchanfragen verwendet werden, um eine Vielzahl von möglichen Übereinstimmungen zu berücksichtigen. Zum Beispiel steht *
für beliebige Zeichenfolgen.
2. Wie kann ich mehrere Wildcards in einer Suche kombinieren?
Du kannst mehrere Wildcards in einem Suchbegriff kombinieren, indem Du sie einfach im Suchstring anfügst, z.B. "*Test*Wildcards*"
.
3. Welche Excel-Version benötige ich, um VBA mit Wildcards zu verwenden?
VBA mit Wildcards ist in den meisten modernen Excel-Versionen verfügbar, einschließlich Excel 2010, 2013, 2016, 2019 und Microsoft 365.