AW: VBA
08.09.2023 11:42:19
daniel
Hi
ja kann man nachen, wobei ich, wenn ich so eine Endlosscheifen absicherung haben will, das DO durch FOR ersetze.
For x = 1 to 100000
set Zelle = Cells.Find(....)
if Zelle is Nothing then Exit for
Zelle.EntireColumn.autofit
Next
das nächste problem wäre dann aber, dass ggf nach dem Text die folgenden Spalten nicht mehr gefunden werden, weil die suche immer den Text mit ## findet.
hier müsste man dann auch noch sicherstellen, dass die Suche auch die danach liegenden Zellen finden kann:
set Zelle = Cells.Find(what:="##", After:=Zelle...)
eine andere Möglichkeit,das Problem zu lösen wäre, dass man die Suche gleich auf die Zellen mit Zahlen einschränkt, dann werden Zellen mit Text gar nicht erst in die Suche einbezogen.
Do
set Zelle Cells.SpecialCells(xlcelltypeconstants, 1).Find(what:="#", ...)
...
Loop
Problem hierbei ist, dass man hierbei auch unterscheiden muss, ob Konstante (xlcelltypeconstants) oder Formeln (xlcelltypeformulas) vorliegen.
kommt beides vor, muss man den Code für beide Varianten getrennt ausführen.
Gruß Daniel