VBA Wert suchen und Bereich markieren in Excel
Schritt-für-Schritt-Anleitung
Um ein VBA-Makro zu erstellen, das einen Wert in einem bestimmten Bereich sucht und den entsprechenden Bereich markiert, folge diesen Schritten:
-
Öffne Excel und gehe zu Entwicklertools > Visual Basic, um den VBA-Editor zu öffnen.
-
Füge ein neues Modul hinzu: Rechtsklick auf VBAProject (DeineDatei.xlsx) > Einfügen > Modul.
-
Kopiere den folgenden Code in das Modul:
Sub milan()
Dim vntRet As Variant
With Sheets("Tabelle2")
vntRet = Application.Match(ActiveCell, .Range("J7:J40000"), 0)
If IsNumeric(vntRet) Then
Application.Goto .Range(.Cells(vntRet + 6, 1), .Cells(vntRet + 6, 12))
Else
MsgBox "Nada!"
End If
End With
End Sub
-
Schließe den VBA-Editor und gehe zurück zu Excel.
-
Wähle die Zelle aus, deren Wert Du suchen möchtest, und führe das Makro mit Alt + F8 aus.
Häufige Fehler und Lösungen
-
Laufzeitfehler 1004: Dieser Fehler tritt auf, wenn die Select-Eigenschaft des Range-Objekts nicht zugeordnet werden kann. Stelle sicher, dass der Range korrekt ist. Du kannst die Zeile Application.Goto .Range(.Cells(vntRet + 6, 1), .Cells(vntRet + 6, 12)).Select in Application.Goto .Range(.Cells(vntRet + 6, 1), .Cells(vntRet + 6, 12)) ändern, um den Fehler zu vermeiden.
-
Wert nicht gefunden: Wenn der gesuchte Wert nicht im Bereich vorhanden ist, wird die Nachricht "Nada!" angezeigt. Überprüfe, ob der Wert in der aktiven Zelle tatsächlich im Range J7:J40000 vorhanden ist.
Alternative Methoden
Falls Du keine VBA-Programmierung verwenden möchtest, kannst Du auch die Excel-Funktion SVERWEIS oder FILTER nutzen, um Werte zu suchen und anzuzeigen. Diese Funktionen sind einfacher, jedoch weniger flexibel als ein VBA-Makro.
Beispiel für SVERWEIS:
=SVERWEIS(A1;Tabelle2!J7:L40000;2;FALSCH)
Praktische Beispiele
Angenommen, Du hast in Tabelle1 den Wert "Test" in Zelle A1. Der VBA-Code sucht in Tabelle2 im Bereich J7:J40000 nach diesem Wert. Wenn er in Zelle J40 gefunden wird, wird der Bereich von A40 bis L40 markiert.
Tipps für Profis
- Nutze die
Option Explicit-Anweisung am Anfang Deines Moduls, um sicherzustellen, dass alle Variablen deklariert werden. Das hilft, Fehler zu vermeiden.
- Du kannst das Makro erweitern, um auch mehrere Werte zu suchen oder die Ergebnisse in einer Liste darzustellen.
- Speichere Deine Datei als
.xlsm, um die Makros zu aktivieren.
FAQ: Häufige Fragen
1. Wie kann ich das Makro anpassen, um mehrere Werte zu suchen?
Du kannst eine Schleife (z. B. For Each) verwenden, um durch eine Liste von Werten zu iterieren und das Suchmakro für jeden Wert auszuführen.
2. Wo finde ich die Entwicklertools in Excel?
Wenn die Entwicklertools nicht sichtbar sind, kannst Du sie aktivieren, indem Du zu Datei > Optionen > Menüband anpassen gehst und das Kontrollkästchen „Entwicklertools“ aktivierst.