Robert Smidt
Gebruiker
- Lid geworden
- 26 mei 2009
- Berichten
- 947
Hallo Helpmijers,
Ik ben op zoek naar een macro die alle rijen verwijderen waar in kolom A niet de waarden: 101 of 112 of 113 of 120 voorkomen. Ik doe hierbij een voorbeeld toekomen die alleen de regels laten staan die beginnen met "101". Nu is mijn verzoek dat deze ook de regels waar in kolom A: 112 of 113 of 120 niet verwijderen.
Een antwoord zie ik met belangstelling tegemoet.
Mvrgr.
Robert
Sub verwijderen()
Dim lastrow As Long
Dim a As Integer
Dim hide As Range
With ActiveWorkbook.Sheets(1)
'kolom 1 gebruikt om het aantal rijen te tellen, gebruik altijd een kolom die steeds gevuld is
lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
For a = 2 To lastrow
If Not .Cells(a, "A") = "101" Then
If hide Is Nothing Then
Set hide = .Cells(a, "A").Cells
Else
Set hide = Application.Union(hide, .Cells(a, "A").Cells)
End If
End If
Next a
If Not hide Is Nothing Then hide.EntireRow.Delete
End With
End Sub
Ik ben op zoek naar een macro die alle rijen verwijderen waar in kolom A niet de waarden: 101 of 112 of 113 of 120 voorkomen. Ik doe hierbij een voorbeeld toekomen die alleen de regels laten staan die beginnen met "101". Nu is mijn verzoek dat deze ook de regels waar in kolom A: 112 of 113 of 120 niet verwijderen.
Een antwoord zie ik met belangstelling tegemoet.
Mvrgr.
Robert
Dim lastrow As Long
Dim a As Integer
Dim hide As Range
With ActiveWorkbook.Sheets(1)
'kolom 1 gebruikt om het aantal rijen te tellen, gebruik altijd een kolom die steeds gevuld is
lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
For a = 2 To lastrow
If Not .Cells(a, "A") = "101" Then
If hide Is Nothing Then
Set hide = .Cells(a, "A").Cells
Else
Set hide = Application.Union(hide, .Cells(a, "A").Cells)
End If
End If
Next a
If Not hide Is Nothing Then hide.EntireRow.Delete
End With
End Sub