HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
2010
Erfahrungslevel des Fragestellers:
Excel-Profi - VBA gut
Yal
27.04.2026 09:17:02
AW: For Each Schleife
Hallo Gerd,

um VBA im Griff zu bekommen, muss man die Konzepte von Objekte und Eigenschaften von Objekt kennen.
Mit For c in Range(...) setzst Du in der Variable c einen Zeiger auf jede einzelne Zelle des gebebenen Bereichs. Also c hat den Typ Zelle (in VBA "Range" benannt).

Du willst aber den Inhalt von Zellen vergleichen.

Version 1: Inhalt von B1 in einer Variable aufnehmen und Inhalt vergleichen
Sub AufTrefffer_platzieren()

Dim such
Dim c As Range

With Worksheets("Tabelle1")
such = .Range("B1").Value
For Each c In .Range("B7:B72")
If c.Value = such Then
c.Activate
Exit For
End If
Next
End With
End Sub


Version 2, ohne Zwischenvariable:
Sub AufTrefffer_platzieren()

Dim c As Range

With Worksheets("Tabelle1")
For Each c In .Range("B7:B72")
If c.Value = .Range("B1").Value Then
c.Activate
Exit For
End If
Next
End With
End Sub


VG
Yal
Als Antwort auf diesen Beitrag
Gerd K
26.04.2026 21:25:39
For Each Schleife
Hallo, ich habe eine For Each Schleife.

Dim such
Dim c as Range

such = [b1]

For Each c In Range("b7:b72")
If c = such then c.activate: goto 10
Next

Es wird b1 gesucht. In b1 steht z. B. 18.

Such = [b1] ergibt aber "18" in Anführungszeichen
und c ergibt 18, somit gibt es keine Übereinstimmung und die Schleife läuft durch ohne bei 18 anzuhalten.

Ich habe vieles versucht und finde keine Lösung für mein Problem.

Vielleicht kann mir jemand helfen.
Vielen Dank im Voraus.

Gerd K
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.