For Each...Next-Anweisung läuft nicht mehr richtig
23.06.2015 19:28:51
Friedhelm
ich hatte von Tino am 22.04.2014 22:02:04 eine Hilfe bekommen die ich mit der For Each...Next Anweisung super lösen konnte.
Sub test()
Dim Re_Nr(), ArData, rng As Range
Dim n&, nn&
For Each rng In Tabelle1.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Areas
ArData = rng.Columns(2).Resize(, 2) 'Spalte mit RE-Nr Angeben
Redim Preserve Re_Nr(Ubound(ArData) + nn - 2)
For n = 1 To Ubound(ArData)
If nn > 0 Then
Re_Nr(nn - 1) = ArData(n, 1)
End If
nn = nn + 1
Next n
Next rng
'Ausgabe
For n = Lbound(Re_Nr) To Ubound(Re_Nr)
MsgBox Re_Nr(n)
Next n
End Sub
Ich hatte eine Erweiterung, durch Eingefügen einer Spalte, in der betroffenen Tabelle gemacht, aber außerhalb des Bereiches, der von der Anweisung genutzt wird (.Columns(4).Resize(,3) ).
Folgendes ist mir aufgefallen:
Wenn ich im Modul mit dem Curser über den Programmcode gehe, wird bei den Variablen, wenn vorhanden, der Wert angezeigt. In diesem Fall wird jetzt bei:
For Each rng In Tabe.....
der rng Wert: nothing angezeigt.
In der alten Version war das nicht.
Die Auswirkung in der neuen Version: die For Each...Next Anweisung wird zunächst komplett durchlaufen, die Daten richtig eingelesen, dann ist der Wert "nothing" bei rng weg, die Anweisung wird noch mal durchlaufen aber mit Werten, die irgendwo her kommen für mich aber nicht nachvollziehbar sind.
Eine Bsp Datei konnte ich nicht erstellen, da der Fehler dort nicht auftritt.
Ich hoffe das aus diesem Ganzen jemand schlau wird und mir helfen kann.
Schönen Gruß
Friedhelm