VBA – Wert in Spalte suchen

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Zakarya El Oirzadi

Last updated on Dezember 29, 2022

In diesem Artikel zeigen wir Ihnen, wie Sie mit VBA einen Wert in einer Spalte suchen können.

Mit Range.Find kann man in VBA eine Spalte mit Werten in einer Schleife durchlaufen, um alle Zellen, die den angegebenen Kriterien entsprechen, im Bereich zu finden.

Eine Spalte mit Range.Find und Range.FindNext durchlaufen

Im folgenden Beispiel werden die Spaltendaten in einer Schleife durchlaufen und nach dem Wort „Überfällig“ gesucht.  Wenn das Wort gefunden wird, wird die Zelle durch Ändern der Zellentextfarbe in rot markiert.  Dann wird die Methode Range.FindNext verwendet, um zur nächsten Zelle zu gelangen und weiter nach dem Wort zu suchen, wobei die Schleife bis zum Ende des angegebenen Zellenbereichs fortgesetzt wird.

Sub Suchschleife()
   Dim strErsteAdresse As String
   Dim rngWertSuchen As Range
   Dim rngSuche As Range
   Dim rngSuchen As Range
   Set rngSuchen = ActiveSheet.Range("F1:F17")
   Set rngSuche = rngSuchen.Cells(rngSuchen.Cells.Count)
   Set rngWertSuchen = rngSuchen.Find("Overdue", rngSuche, xlValues)
   If Not rngWertSuchen Is Nothing Then
      strErsteAdresse = rngWertSuchen.Address
      rngWertSuchen.Font.Color = vbRed
      Do
         Set rngWertSuchen = rngSuchen.FindNext(rngWertSuchen)
         rngWertSuchen.Font.Color = vbRed
      Loop Until rngWertSuchen.Address = strErsteAdresse
   End If
End Sub

Wenn der Code ausgeführt wird, speichert er die Adresse der ersten Zelle, in der die Daten gefunden wurden, in der Variablen strErsteAdresse und ändert die Textfarbe in rot. Anschließend wird eine Schleife erstellt, um die nächste Zelle zu finden, die die erforderlichen Daten enthält. Wenn der Wert gefunden wird, wird die Farbe des Textes in rot geändert und dann die Adresse der Zelle, in der der Wert gefunden wurde , mit der Zeichenkette strErsteAdresse verglichen.  Wenn diese nicht übereinstimmen, wird die Schleife fortgesetzt und jedes Vorkommen des Wortes „Überfällig“ gesucht.  Sobald die Schleife das Ende des Zellenbereichs erreicht (d. h. F17), beginnt sie wieder am Anfang des Bereichs (F1) und setzt sich fort.  Sobald die Schleife zum zweiten Mal die Zellenadresse F3 erreicht, die mit der gespeicherten Variablen strErsteAdresse übereinstimmt,  wird sie angehalten.

 

vba wertsuche in spalte

 

vba-free-addin

Add-In für VBA-Code-Beispiele

Auf alle Code-Beispiele aus unserer Website einfach zugreifen.

Navigieren Sie einfach zum Menü, klicken Sie darauf und der Code wird direkt in Ihr Modul eingefügt. .xlam add-in.

(Keine Installation erforderlich!)

Kostenloser Download

Return to VBA Code Examples