anoniem Geplaatst: 14 juni 2006 Delen Geplaatst: 14 juni 2006 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 Quote Link naar reactie
anoniem Geplaatst: 15 juni 2006 Auteur Delen Geplaatst: 15 juni 2006 Je kunt natuurlijk een variabele aanmaken en hiermee rondrennen over je werkblad heen [code:1:5c8572b951]Dim Teller as Integer Sheets("Intro exact").Select Cells.Select Selection.Copy Sheets("marcro").Select Cells.Select Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _ False, Transpose:=False For Teller = 1 to 501 Step 2 Range("M" & CStr(Teller).Select If ActiveCell.FormulaR1C1 <> 0 then Rows(CStr(Teller) & ":" & CStr(Teller+1)).Select Selection.Delete Shift:=xlUp End If Next Teller [/code:1:5c8572b951] Quote Link naar reactie
Aanbevolen berichten
Om een reactie te plaatsen, moet je eerst inloggen