[Excel] Macro regels verwijderen

Pagina: 1
Acties:
  • 196 views sinds 30-01-2008
  • Reageer

  • marchanekamp
  • Registratie: Maart 2004
  • Laatst online: 04-06-2025
Goedemiddag,

Ik ben een macro in excel aan het schrijven om regels in excel te verwijderen als een resultaat van een formule in die regel gelijk is aan 0.

Bijvoordeeld:

Rij 1, m1 is resultaat formule 0 => verwijder rij 1 en 2
Rij 3, m3 is resultaat formule 50 => niks doen
Rij 5, m5 is resultaat formule 0 => verwijder rij 5 en 6
Rij 7, m7 is resultaat formule 0 => verwijder rij 7 en 8

Ik kom zover:

Sheets("Intro exact").Select
Cells.Select
Selection.Copy
Sheets("marcro").Select
Cells.Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False

If m1 = 0 Then
Rows("1:2").Select
Selection.Delete Shift:=xlUp

End If

If m3 = 0 Then
Rows("3:4").Select
Selection.Delete Shift:=xlUp

End If

If m5 = 0 Then
Rows("5:6").Select
Selection.Delete Shift:=xlUp

End If

If m7 = 0 Then
Rows("7:8").Select
Selection.Delete Shift:=xlUp

End If

End Sub

Het probleem is dat er meer dan 500 regels in deze excel file staan...dus dit gaat niet werken.

Op de een of andere manier moet ik dit doe d.m.v. een loop (en die ook weer laten stoppen). Maar weet absoluut niet hoe.

Kan iemand mij helpen?

marc

Verwijderd

ik had je liever zelf nog eens een poging zien wagen om een lus te ontwerpen, maar goed :
Visual Basic:
1
2
3
4
5
6
7
8
9
Sub VerwijderRijen()
  Dim DelRows As Long
  
  For DelRows = 499 To 1 Step -2
    If Worksheets("marcro").Range("m" & CStr(DelRows)).Value = 0 Then
      Worksheets("marcro").Rows(CStr(DelRows) & ":" & CStr(DelRows + 1)).Delete shift:=xlUp
    End If
  Next
End Sub