VBA For-next Schleife: brauche kleinen Denkanstoss
16.09.2005 09:40:19
Klaus
Ich hab mir mit Codefetzen aus der Recherche einen VBA Code zur Ermittlung der letzten benutzten Zeile gebastelt.
(Erklärung: Die Liste fängt in Zeile 11 an, darum k2=11. In Spalte 9 und Spalte 16 stehen bis ans Listenende kopierte Formeln, darum sollen die bei der Ermittlung übersprungen werden. Es werden 17 Spalten insgesamt benutzt.)
[...]
k2 = 11
For spalteL = 1 To 17
If spalteL = 9 Then GoTo skipformel
If spalteL = 16 Then GoTo skipformel
k = Cells(Rows.Count, spalteL).End(xlUp).Row
If k > k2 Then k2 = k
skipformel:
Next spalteL
az = "A" & k2 + 1
Range(az).PasteSpecial Paste:=xlValues
[...]
Funktionieren tut es auch soweit, nur bin ich nicht glücklich mit den "goto"s. Ich hatte an "if spalteL = 9 then resume next" als Abbruch gedacht, aber das gab Laufzeitfehler.
Kann ich den Code eleganter schreiben, eventuell kürzer und ohne Goto's?
Dank und Gruß,
Klaus M.vdT.
P.S.:Ganz toll währs auch, abzufragen ob sich Formeln in den Zellen befinden oder ob sie leer sind statt statisch die Spalten 9 und 16 anzugeben, aber über das Thema schau ich nochmal in die Recherche.