HERBERS Excel-Forum - das Archiv
Makro zum löschen jeder 2. Zeile
philG

Hallo liebe Herber-Gemeinde,
ich habe ein Problem: elend Lange Tabelle, wo ich die 1., 3., 5. Zeile usw. löschen muss.
Kann mir jemand mit einem VB-Befehl aushelfen, der jede 2. Zeile der Tabelle löscht?
Ich wäre suuperhappy! Habt vielen Dank im Voraus! :-)

AW: Makro zum löschen jeder 2. Zeile
welga

Hallo,
versuche es mal damit:
Dim i As Long
Dim lnglastrow As Long
With ActiveSheet
lnglastrow = .Cells.Find(What:="*", After:=Range("A1"), _
SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
End With
If lnglastrow Mod 2 = 0 Then lnglastrow = lnglastrow - 1
For i = lnglastrow To 1 Step -2
Rows(i).Select
Selection.Delete Shift:=xlUp
Next i
Gruß
welga
AW: Makro zum löschen jeder 2. Zeile
Tino

Hallo,
kannst mal diesen Code testen, Tabellenname noch anpassen.
Sub LoescheJedeZweite()
Dim oSH As Worksheet

Set oSH = Sheets("Tabelle1") 'Tabelle anpassen 

With oSH.UsedRange.Columns(oSH.UsedRange.Columns.Count).Offset(0, 1)
 .FormulaR1C1 = "=IF(MOD(ROW(),2)=0,ROW(),TRUE)"
 oSH.EnableCalculation = False
 oSH.UsedRange.Sort Key1:=.Cells(1, 1), Order1:=xlAscending, Header:=xlNo
 
 On Error Resume Next
  .SpecialCells(xlCellTypeFormulas, 4).EntireRow.Delete
  .EntireColumn.Delete
 On Error GoTo 0
End With

oSH.EnableCalculation = True

End Sub
Gruß Tino
AW: Makro zum löschen jeder 2. Zeile
philG

habt Dank, ich werd gleich mal testen, supernett