rijen verwijderen en lus afmaken

Status
Niet open voor verdere reacties.

RDIE

Gebruiker
Lid geworden
25 aug 2013
Berichten
80
Ik wil in een excel sheet de cellen in kolom c en d vergelijken. Als bijvoorbeeld de cellen C2 en D2 niet gelijk zijn moet de desbetreffende rij verwijderd worden. Zijn ze wel gelijk dan moet de rij blijven staan en moeten de cellen in volgende rij (C3 en D3) vergeleken worden waarbij dezelfde aktie moet worden uitgevoerd.
Het aantal rijen is in elke excel sheet variabel dus de code moet die op voorhand tellen.

Het vergelijken en de rij verwijderen lukt me met het volgende blokje:

Code:
Sub cellenvergelijken3()
    With Sheets(1)
        If [C2] <> [D2] Then
        Selection.EntireRow.Delete
        Else
        End If
    End With
End Sub

Hoe krijg ik de code zover dat ie nu naar de volgende rij gaat, dezelfde aktie uitvoert en na de laatste rij stopt?
 
Laatst bewerkt door een moderator:
Verplaatst van Visual Basic naar Visual Basic for Applications
 
Dit is een optie
Code:
Sub Spaarie()
    With Sheets(1)
        For c = .UsedRange.Rows.Count To 2 Step -1
            If .Cells(c, 3) <> .Cells(c, 4) Then c.EntireRow.Delete
        Next
    End With
End Sub
Zo lees je de rijen van beneden naar boven, want wanneer een regel verwijderd wordt de volgende regel de huidige regelnummer.
Bijvoorbeeld; Als ik van boven naar beneden werk en regel 10 verwijder, dan wordt regel 11 > regel 10 en wordt regel 10 niet nog een keer vergeleken..
 
Laatst bewerkt:
Thxs Spaarie
Werkt perfect, met een minimale aanpassing: de code bleef hangen op c.EntireRow.Delete Daar heb ik Rows(c).Delete van gemaakt, en het werkt 100%
Nogmaals bedankt voor de hulp
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan