Hallo,
ich würde gerne in einer Excel Tabelle Daten reduzieren indem ich
einfach nur jede 10. Zeile übernehme und den Rest lösche. Dafür hab ich
mich mit einem Makro versucht, habe aber bisher garnichts mit VB
gemacht. Nachdem ich ein wenig mit dem Makrorecorder gespielt habe und
nach der Syntax von Schleifen gesucht habe, habe ich mir folgendes
überlegt:
Sub test()
For i = 5 To 6600
Rows("i:i+8").Select
Selection.Delete Shift:=xlUp
Next
End Sub
Beim Ausführen kommt aber dann dass die Typen unverträglich wären in der
Rows(... Zeile.
Was kann ich da tun? Muss man bei VB eigentlich keine Variablen
deklarieren oder so?
Gruß,
Chris
Dank für die Antwort. Das Programm läuft dann zwar, aber es löscht nur jede zweite Zeile. Das i+8 sollte ja immer 9 Zeilen markieren damit diese dann auf einmal gelöscht werden.
For i = 5 To 6600 Range(Rows(i + 1), Rows(i + 7)).Select Selection.Delete Next
Vielen Dank für die Hinweise. Warum das mit dem was mir der Makrorecorder gezeigt hat nicht funktioniert hab ich zwar noch immer nicht durchschaut, aber mit Range().Select hats funktioniert. Ich musste nur noch das i+7 in i+9 abändern. Vielen Dank!
Ähm, wie soll "i:i+8" bitteschön funktionieren? Ist doch ein string, wie soll da i richtig ersetzt werden. Wenn dann müsste es wohl so aussehen: CStr(i)+":"+CStr(i+8) Gruß Tom
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.