Vba: so finden sie einen wert in einer spalte (mit beispiel)


Sie können die folgende grundlegende Syntax in VBA verwenden, um einen Wert in einer Spalte in Excel zu finden:

 Sub FindValue()

Dim rng As Range
Dim cell As Range
Dim findString As String

'specify range to look in
Set rng = ActiveSheet.Columns(" A:A ")

'specify string to look for
findString = " Rockets "

'find cell with string
Set cell = rng.Find(What:=findString, LookIn:=xlFormulas, _
                    LookAt:=xlWhole, MatchCase:=False)

If cell Is Nothing Then
    cell.Font.Color = vbBlack
Else
    cell.Font.Color = vbRed
    cell.Font.Bold = True
End If

End Sub

Dieses spezielle Makro durchsucht die gesamte Spalte A des aktuell aktiven Blatts nach der Zeichenfolge „Rockets“ und ändert, falls gefunden, die Schriftfarbe der Zelle in Rot und macht die Schrift fett.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: So finden Sie mit VBA einen Wert in einer Spalte

Angenommen, wir haben den folgenden Datensatz mit Informationen über verschiedene Basketballspieler:

Nehmen wir an, wir möchten den Teamnamen „Rockets“ in Spalte A finden und, sobald er gefunden ist, die Schriftfarbe der Zelle in Rot konvertieren und die Schriftart fett formatieren.

Dazu können wir das folgende Makro erstellen:

 Sub FindValues()

Dim rng As Range
Dim cell As Range
Dim findString As String

'specify range to look in
Set rng = ActiveSheet.Columns(" A:A ")

'specify string to look for
findString = " Rockets "

'find cell with string
Set cell = rng.Find(What:=findString, LookIn:=xlFormulas, _
                    LookAt:=xlWhole, MatchCase:=False)

If cell Is Nothing Then
    cell.Font.Color = vbBlack
Else
    cell.Font.Color = vbRed
    cell.Font.Bold = True
End If

End Sub

Wenn wir dieses Makro ausführen, erhalten wir die folgende Ausgabe:

Beachten Sie, dass die Schriftart in der Zelle, die die Zeichenfolge „Rockets“ enthält, jetzt rot und fett ist.

Alle anderen Zellen behielten einfach ihre schwarze Schrift.

Beachten Sie, dass das Argument MatchCase:=False im Code VBA anweist, eine Suche ohne Berücksichtigung der Groß- und Kleinschreibung durchzuführen.

Wenn der Teamname in Spalte A also „Raketen“ wäre, würde das Makro immer diese Zeichenfolge finden und die Schriftart rot und fett formatieren.

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in VBA ausführen:

VBA: So schreiben Sie die Funktionen AVERAGEIF und AVERAGEIFS
VBA: So schreiben Sie SUMIF- und SUMIFS-Funktionen
VBA: So schreiben Sie COUNTIF- und COUNTIFS-Funktionen

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert