Hi Mark,
auch ich verwende Code am ehesten so wie du und würde das sogar empfehlen. Da wie schon von Gast 5745 geschrieben das ganze auch nach meiner Erfahrung dann schneller und v.a. stabiler läuft, weil die gesamte vorherige Objektstruktur nicht mit jedem Schleifendurchlauf von neuem aufgebaut werden muss. Damit wäre ich dann wohl bereits der Dritte, der die von dir gefundene Aussage nicht versteht.
Mir fällt auch grad kein Beispiel ein, wo ein unter With angegebenes Objekt gleichzeitig ein Iterator sein kann. Der Iterator ist in deinem Beispiel k und ist in normalen For Schleifen immer vom Typ Byte, Integer oder Long, bzw. Variant. Um ein Objekt als Iterator zu verwenden benötigt man eine For Each-Schleife. z.B.
Dim c As Range
For Each c In Tabelle1.Range("A1:C10").Cells
Next c
Dann gibt es aber wiederum keinen Grund für einen With-Block, da man direkt auf c.Value z.B. zugreifen kann.
Vielleicht ist der von dir gefundene Kommentar auch nur eine ungünstig gemachte Aussage, die eigentlich etwas ganz anderes meint. z.B. dass man With und For Each nicht bei dem selben Objekt mixen sollte, einfach aus dem Grund, weil es keinen Sinn macht.
Gruß Mr. K.
|