HERBERS Excel-Forum - das Archiv
For-Each-Schleife funktioniert nicht.
moohdan

Hallo Leute,
ich möchte die For-Each -Schleife in der unteren Form benutzen. Es funktioniert leider nicht. Könnte mir jemand sagen, woran es liegen kann.
Hier der Code:

Sub For_Each()
'For_Each Makro
Dim VList As String
VList = [+0MA+K4H, +7IH+K4H, +7IH+K5A, +7IG+K4H, +1TR+K5A, +1TU+K5A]
Dim V As Variant
For p = 2 To 7
Cells(p + 2, 19).Value = p * 100
For Each V In VList
Cells(p + 2, 23).Value = V
Next
Next
End Sub

Mit freundlichen Grüßen
moohdan

AW: For-Each-Schleife funktioniert nicht.
Rudi

Hallo,
woran es liegen kann.
am Code.
was soll das:
VList = [+0MA+K4H, +7IH+K4H, +7IH+K5A, +7IG+K4H, +1TR+K5A, +1TU+K5A]
?
Meinst du
VList = Array("0MA+K4H", "7IH+K4H","7IH+K5A", "7IG+K4H","1TR+K5A", "1TU+K5A")
Gruß
Rudi

AW: For-Each-Schleife funktioniert nicht.
Daniel

Hi
die übliche Schreibweise wäre (hier nur die korrigierten Zeilen):
dim  VList as Variant
VList = Array("+0MA+K4H", "+7IH+K4H", "+7IH+K5A", "+7IG+K4H", "+1TR+K5A", "+1TU+K5A")

Diese Schleife ist Unsinn:
            For Each V In VList
Cells(p + 2, 23).Value = V
Next

da du innerhalb der Schleife die Zelle nicht veränderst, überschreibst du immer die gleiche Zelle mit dem neuen Wert V.
am Schluss steht dann der letze Wert aus dem Array in der Zelle und du könntest anstatt der Schleife genausogut schreiben:
Cells(p + 2, 23) = VList(Ubound(VList))
Gruß Daniel

For-Each-Schleife funktioniert nicht.
moohdan

Hallo Leute,
ich möchte die For-Each -Schleife in der unteren Form benutzen. Es funktioniert leider nicht. Könnte mir jemand sagen, woran es liegen kann.
Hier der Code:

Sub For_Each()
'For_Each Makro
Dim VList As String
VList = [+0MA+K4H, +7IH+K4H, +7IH+K5A, +7IG+K4H, +1TR+K5A, +1TU+K5A]
Dim V As Variant
For p = 2 To 7
Cells(p + 2, 19).Value = p * 100
For Each V In VList
Cells(p + 2, 23).Value = V
Next
Next
End Sub

Mit freundlichen Grüßen
moohdan

AW: For-Each-Schleife funktioniert nicht.
Rudi

Hallo,
woran es liegen kann.
am Code.
was soll das:
VList = [+0MA+K4H, +7IH+K4H, +7IH+K5A, +7IG+K4H, +1TR+K5A, +1TU+K5A]
?
Meinst du
VList = Array("0MA+K4H", "7IH+K4H","7IH+K5A", "7IG+K4H","1TR+K5A", "1TU+K5A")
Gruß
Rudi

AW: For-Each-Schleife funktioniert nicht.
Daniel

Hi
die übliche Schreibweise wäre (hier nur die korrigierten Zeilen):
dim  VList as Variant
VList = Array("+0MA+K4H", "+7IH+K4H", "+7IH+K5A", "+7IG+K4H", "+1TR+K5A", "+1TU+K5A")

Diese Schleife ist Unsinn:
            For Each V In VList
Cells(p + 2, 23).Value = V
Next

da du innerhalb der Schleife die Zelle nicht veränderst, überschreibst du immer die gleiche Zelle mit dem neuen Wert V.
am Schluss steht dann der letze Wert aus dem Array in der Zelle und du könntest anstatt der Schleife genausogut schreiben:
Cells(p + 2, 23) = VList(Ubound(VList))
Gruß Daniel

Bewerten Sie hier bitte das Excel-Portal