Suchwert mit VBA finden und markieren
Schritt-für-Schritt-Anleitung
Um in Excel einen Suchwert mit VBA zu finden und die entsprechende Zelle zu markieren, gehe wie folgt vor:
-
Öffne Excel und drücke ALT + F11
, um den VBA-Editor zu öffnen.
-
Füge ein neues Modul hinzu: Klicke im Projekt-Explorer mit der rechten Maustaste auf „VBAProject (deine Arbeitsmappe)“, wähle „Einfügen“ und dann „Modul“.
-
Kopiere den folgenden VBA-Code in das Modul:
Sub Finden()
Dim strSUCH As Variant
Dim rngSUCH As Range
Dim lngFind As Long
strSUCH = Application.InputBox("Bitte Eingabe tätigen:")
Set rngSUCH = ActiveSheet.Range("A3:A30").Find(What:=strSUCH, _
Lookat:=xlWhole, LookIn:=xlValues, MatchCase:=True)
If Not rngSUCH Is Nothing Then
lngFind = rngSUCH.Row
Cells(lngFind, 1).Interior.ColorIndex = 3 ' Zelle rot färben
Cells(lngFind, 1).Select ' Zelle auswählen
Else
MsgBox "Der gesuchte Wert " & strSUCH & " wurde nicht gefunden.", _
64, "Nicht gefunden."
End If
Set rngSUCH = Nothing
End Sub
-
Schließe den VBA-Editor und kehre zu Excel zurück.
-
Führe das Makro aus: Drücke ALT + F8
, wähle „Finden“ aus und klicke auf „Ausführen“. Es wird ein Eingabefeld angezeigt, in dem du den Suchwert eingeben kannst.
Häufige Fehler und Lösungen
Alternative Methoden
Falls du VBA nicht nutzen möchtest, kannst du auch die Bedingte Formatierung verwenden:
-
Wähle den Bereich A3:A30 aus.
-
Gehe zu „Start“ > „Bedingte Formatierung“ > „Neue Regel“.
-
Wähle „Formel zur Ermittlung der zu formatierenden Zellen verwenden“ und gib die folgende Formel ein:
=ISTZAHL(SUCHEN($B$1; A3))
-
Wähle ein Format (z.B. eine Hintergrundfarbe) aus und klicke auf „OK“. Der Suchwert wird dann in der Excel-Suche hervorgehoben.
Praktische Beispiele
Beispiel 1: Wenn du nach der Artikelnummer „12345“ suchst, gib diese einfach in das Eingabefeld ein, und das Makro wird die Zelle in rot markieren, wenn sie gefunden wird.
Beispiel 2: Verwende die Bedingte Formatierung, um alle Zellen in A3:A30, die den Text „Artikel“ enthalten, hervorzuheben. Dazu kannst du „Artikel“ im Feld B1 eingeben.
Tipps für Profis
- Nutze Jokerzeichen wie
*
und ?
in deinem Suchbegriff, um flexiblere Suchanfragen durchzuführen.
- Experimentiere mit dem Autofilter in Excel, um die Ergebnisse schneller zu verfeinern, besonders wenn du mit großen Datensätzen arbeitest.
- Speichere dein VBA-Makro als Teil deiner Arbeitsmappe, um es bei zukünftigen Suchen wiederverwenden zu können.
FAQ: Häufige Fragen
1. Frage
Kann ich das Makro anpassen, um auch in anderen Spalten zu suchen?
Antwort: Ja, du kannst den Bereich in der Zeile Set rngSUCH = ActiveSheet.Range("A3:A30")
anpassen, um andere Spalten zu durchsuchen.
2. Frage
Wie kann ich die Farbe ändern, in der die Zelle markiert wird?
Antwort: Ändere den Wert in Cells(lngFind, 1).Interior.ColorIndex = 3
zu einer anderen Zahl (z.B. 6 für gelb) oder verwende Interior.Color = RGB(255, 0, 0)
für eine benutzerdefinierte Farbe.