Supportnet / Forum / Tabellenkalkulation
9 Zeilen löschen, eine überspringen und wieder von vorne --> wie mach ich das
Frage
Hallo,
ich möchte gerne ein Makro schreiben, welche 9 Zeilen löscht, eine Zeile überspringt und dann wieder von vorne läuft! Wie mach ich das?
MfG der_raubfisch
Antwort 1 von rainberg
Hallo Hai :-))
aus Deiner Frage werde ich nicht schlau, welche Zeilen nun gelöscht werden sollen.
Könnte es sein, dass jede 10. Zeile bleiben und alle anderen Zeilen gelöscht werden sollen?
Wenn das so wäre, hilft Dir folgender Code
Gruß
Rainer
aus Deiner Frage werde ich nicht schlau, welche Zeilen nun gelöscht werden sollen.
Könnte es sein, dass jede 10. Zeile bleiben und alle anderen Zeilen gelöscht werden sollen?
Wenn das so wäre, hilft Dir folgender Code
Option Explicit
Sub zeilen_loeschen()
Dim lngI As Long
Application.ScreenUpdating = False
For lngI = Cells.Find("*", searchdirection:=xlPrevious).Row To 1 Step -1
If lngI Mod 10 <> 0 Then Rows(lngI).Delete Shift:=xlUp
Next
Application.ScreenUpdating = True
End SubGruß
Rainer
Antwort 2 von der_raubfisch
Hi,
wie füge ich den Quellcode ein? Mache das zum ersten Mal!
MfG
wie füge ich den Quellcode ein? Mache das zum ersten Mal!
MfG
Antwort 3 von rainberg
Hallo,
führe einen Rechtsklick auf den Tabellenreiter aus in dessen Tabelle der Code wirken soll und wähle die Option "Code anzeigen".
Jetzt fügst Du den Code in das rechte große Fenster ein.
Kehre zur Tabelle zurück und starte das Makro.
Gruß
Rainer
führe einen Rechtsklick auf den Tabellenreiter aus in dessen Tabelle der Code wirken soll und wähle die Option "Code anzeigen".
Jetzt fügst Du den Code in das rechte große Fenster ein.
Kehre zur Tabelle zurück und starte das Makro.
Gruß
Rainer
Antwort 4 von der_raubfisch
Hallo,
danke, eben ausgeführt. Es läuft aber immer noch, ist das normal? Läuft jetzt schon ca. 4min? Sind aber auch ca. 40000 Werte!
MfG
danke, eben ausgeführt. Es läuft aber immer noch, ist das normal? Läuft jetzt schon ca. 4min? Sind aber auch ca. 40000 Werte!
MfG
Antwort 5 von der_raubfisch
So nun habe ich noch ein Problem! Ich habe mir eine Funktion erstellt, mit der ich immer nur einen wert pro Sek. erhalte und mir in einer neuen Spalte eine 1 oder 0 geschrieben wird! Kann ich die Zeilen mit einer 1 extra schreiben, so dass ich wieder jede 10. Zeile stehen lassen kann?
MfG
MfG
Antwort 6 von rainberg
Hallo,
nur noch soviel:
Mein Makro läuft bei mir bei 40000 Zeilen rund 3,5 min.
Eine weitere Frage kann ich Dir leider nicht beantworten, da Du bei beiden Fragen alles offen gelassen hast, was für eine Antwort relevant wäre.
Gruß
Rainer
nur noch soviel:
Mein Makro läuft bei mir bei 40000 Zeilen rund 3,5 min.
Eine weitere Frage kann ich Dir leider nicht beantworten, da Du bei beiden Fragen alles offen gelassen hast, was für eine Antwort relevant wäre.
Gruß
Rainer
Antwort 7 von der_raubfisch
Hallo,
du hattest recht, es soll nur jede 10. Zeile stehen bleiben! Habe deinen Code schon ngewandt auf jede 2. Zeile stehen lassen und es hat prima funktioniert!
Ich habe die Daten jetzt gefiltert, so dass wieder jede 10. Zeile stehen bleiben kann und versuche es jetzt nocheinmal!
MfG
du hattest recht, es soll nur jede 10. Zeile stehen bleiben! Habe deinen Code schon ngewandt auf jede 2. Zeile stehen lassen und es hat prima funktioniert!
Ich habe die Daten jetzt gefiltert, so dass wieder jede 10. Zeile stehen bleiben kann und versuche es jetzt nocheinmal!
MfG
Antwort 8 von der_raubfisch
Hi,
besten Dank für deine Hilfe! Hat jetzt alles prima geklappt!
MfG
besten Dank für deine Hilfe! Hat jetzt alles prima geklappt!
MfG

