Excel: Jede 2. Zeile eine leere Zeile einfügen

  • #1
M

mlissy

Guest
Man stelle sich vor man hat eine sehr lange Excel-Liste und muß nun jede 2. Zeile eine leere Zeile einfügen.

Wie kann man dies:

- auf 1x machen
- auf schnelle Art und Weise machen

(Kein Macro)

Mir ist leider nur bekannt, Zeile für Zeile einfügen, aber bei einer sehr langen Tabelle wird man ja irre dabei.

Wißt Ihr was schnelleres?

Danke Vorab!

Lissy
 
  • #2
etwas was das automatisch macht?

sprich dynamisch ist

und ohne makro?

wieso ohne makro?
 
  • #3
Weil ich nicht weiß, wie ich ein Macro programmiere. Habe mich noch nicht daran getraut, obwohl ich mich sonst sehr gut in Excel auskenne.
 
  • #4
ich versuch mal so ein ding zu mache, sonst der Matjes (wann er wider on kommt) weiss schon wie das am einfachsten geht =)
 
  • #5
Hallo mlissy,

wie sieht denn deine Tabelle aus ?

a) Sind verbunde Zellen enthalten ?
b) Welches ist die erste Werte-Zeile ? Oder wie kann man die Überschriftenzeile erkennen ?

Gruß Matjes :)
 
  • #6
Hallo mlissy,

ich hab dir den folgenden Makro mit Ausführungshinweisen per mail gesendet.

Der entgegengesetzte Makro LeereZeileLoeschen ist auch dabei.

Gruß Matjes  :)
Code:
Sub Jede2teZeileLeerzeileEinfuegen()
  Const c_ZersteWerteZeile = 5
  Const c_MaxZeilenAnzahl = 65535
  Dim x As Long, l_Zeilemax As Long, ws As Worksheet
  
  Set ws = ActiveSheet
  Application.ScreenUpdating = False
  l_Zeilemax = ws.UsedRange.Rows.Count
  If l_Zeilemax > (c_MaxZeilenAnzahl - 1) / 2 Then
    MsgBox ( _
      vorhandene Zeilenanzahl  & l_Zeilemax & _
       * 2 ist größer als max. Zeilenanzahl  & c_MaxZeilenAnzahl)
  Else
    For x = l_Zeilemax To c_ZersteWerteZeile + 1 Step -1
      If x Mod 100 Then DoEvents
      Application.StatusBar = l_Zeilemax & / & x
      ws.Rows(x).Insert Shift:=xlDown
    Next
  End If
  Application.StatusBar = 
  Application.ScreenUpdating = True
  Set ws = Nothing
End Sub
'*****************************************************************
Sub LeereZeilenLoeschen()
  Const c_ZersteWerteZeile = 5
  Dim x As Long, y As Long, l_Zeilemax As Long, l_SpalteMax As Long
  Dim ws As Worksheet
  
  Set ws = ActiveSheet
  Application.ScreenUpdating = False
  l_Zeilemax = ws.UsedRange.Rows.Count
  l_SpalteMax = ws.UsedRange.Columns.Count
 ->On Error Resume Next
  For x = l_Zeilemax To c_ZersteWerteZeile Step -1
    If x Mod 100 Then DoEvents
    Application.StatusBar = l_Zeilemax & / & x
    For y = 1 To l_SpalteMax
      If Not IsEmpty(ws.Cells(x, y).Value) Then GoTo HatInhalt
    Next
    ws.Rows(x).Delete
HatInhalt:
  Next
  Application.StatusBar = 
  Application.ScreenUpdating = True
  Set ws = Nothing
End Sub
 
  • #7
Hallo Matjes,

vielen Dank für das Makro. Werde es morgen gleich ausprobieren.

Habe nur in der 1. Zeile die Überschrift und es sind keine verbundenen Zellen dabei.

Nochmals danke und Gruß

Lissy
 
Thema:

Excel: Jede 2. Zeile eine leere Zeile einfügen

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.838
Beiträge
707.961
Mitglieder
51.491
Neuestes Mitglied
haraldmuc
Oben