Supportnet / Forum / Tabellenkalkulation
Leerzeilen einfügen
Frage
Hallo,
vielleicht kann mir einer von euch helfen.
Ich möchte immer nach z.B. 2 Sternen (**) in Spalte A
2 Leerzeilen einfügen. Die Zeilen in den diese Sterne stehen,
haben aber nicht immer den gleichen Zeilenabstand, d.h. es sind unterschiedlich viele Zeilen bis zu den nächstren Sternen.
Wie kann ich das machen?
Wäre toll wenn es da eine Möglichkeit gäbe.
Antwort 1 von DukeNT
Hi,
das geht per VBA.
Drücke ALT+F11 - Einfügen - Modul
und kopiere folgenden Code in das neue Fenster.
Sub leerzeilen()
For a = Sheets(1).Range("A65536").End(xlUp).Row + 1 To 1 Step -1
If Cells(a, 1) = "**" Then Rows(a + 1 & ":" & a + 2).Insert
Next a
End Sub
Starte das Makro "leerzeilen" und schon hast du die gewünschten beiden Leerzeilen.
Gruß Niels
das geht per VBA.
Drücke ALT+F11 - Einfügen - Modul
und kopiere folgenden Code in das neue Fenster.
Sub leerzeilen()
For a = Sheets(1).Range("A65536").End(xlUp).Row + 1 To 1 Step -1
If Cells(a, 1) = "**" Then Rows(a + 1 & ":" & a + 2).Insert
Next a
End Sub
Starte das Makro "leerzeilen" und schon hast du die gewünschten beiden Leerzeilen.
Gruß Niels
Antwort 2 von hallokati
Hallo DukeNet,
vielen Dank für Deine super schnelle Hilfe,
hat bestens funktioniert. Vielen, vielen Dank.
LG Katja
vielen Dank für Deine super schnelle Hilfe,
hat bestens funktioniert. Vielen, vielen Dank.
LG Katja
Antwort 3 von gast123
hallo dukent
du koenntest dein makro verbessern,das es zeilenunabhaengig wird :-)
statt Range("A65536")
Range("A" & Rows.count)
gruss gast123
du koenntest dein makro verbessern,das es zeilenunabhaengig wird :-)
statt Range("A65536")
Range("A" & Rows.count)
gruss gast123
Antwort 4 von DukeNT
Hi gast123,
ich weiss jetzt nicht ob deine Variante wiklich besser ist da die letzte Zeile eh immer 65536 ist.
Denke mal das der Code mit Range("A65536") schneller ist (kürzer sowieso), da nicht noch erst mit .count eine weitere funktion abgearbeitet werden muß.
Korrigiert mich wenn ich da falsch liege bzw. in welchem fall die Funktion "Range("A" & Rows.count)" zu einem anderen Ergebniss als Range("A65536") führt.
Gruß Niels
ich weiss jetzt nicht ob deine Variante wiklich besser ist da die letzte Zeile eh immer 65536 ist.
Denke mal das der Code mit Range("A65536") schneller ist (kürzer sowieso), da nicht noch erst mit .count eine weitere funktion abgearbeitet werden muß.
Korrigiert mich wenn ich da falsch liege bzw. in welchem fall die Funktion "Range("A" & Rows.count)" zu einem anderen Ergebniss als Range("A65536") führt.
Gruß Niels
Antwort 5 von gast123
hi all
es gibt sehr viele excelvarianten mit unterschiedlicher zeilen wie spaltenanzahl
wenn man zeit sparen wollte deklariere deine variablen,in deinem fall als long,sehr hilfreich bzw ein soll,ist option explicit
gruss gast123
es gibt sehr viele excelvarianten mit unterschiedlicher zeilen wie spaltenanzahl
wenn man zeit sparen wollte deklariere deine variablen,in deinem fall als long,sehr hilfreich bzw ein soll,ist option explicit
gruss gast123
Antwort 6 von DukeNT
Hi gast123,
danke für den Tipp. Mann lernt ja nie aus.
Gruß Niels
danke für den Tipp. Mann lernt ja nie aus.
Gruß Niels

