VBA Zeilen löschen wenn Kriterien nicht erfüllt

Bild

Betrifft: VBA Zeilen löschen wenn Kriterien nicht erfüllt
von: Michael
Geschrieben am: 26.05.2015 10:24:49

Hallo Forum,
ich nutze folgenden Code um mir Zeilen löschen zu lassen die einem Kriterium nicht entsprechen:
LZ = Cells(Rows.Count, 7).End(xlUp).Row
For z = LZ To 3 Step -1
If Not Cells(z, 7) = "Schmitz" Then Rows(z).Delete Shift:=xlUp
Next z
kann ich diesen Code auch nutzen / umschreiben wenn ich mehr als ein Kriterium hab. Sprich, wenn nicht Schmitz, Meier, Peters etc. dann bitte löschen, und wie könnte ich das realisieren?
Gruß
Michael

Bild

Betrifft: benutze AND
von: Matthias L
Geschrieben am: 26.05.2015 10:34:33
Hallo
nach folgendem Schema
If Cells(z, 7) <> "Schmitz" And Cells(z, 7) <> "Meier" Then Rows(z).Delete Shift:=xlUp
Gruß Matthias

Bild

Betrifft: AW: benutze AND
von: Michael
Geschrieben am: 26.05.2015 10:38:44
Danke Matthias,
werde ich gleich mal ausprobieren!
Gruß
Michael

Bild

Betrifft: Bedinung mit mehreren Kriterien: Select Case
von: Daniel
Geschrieben am: 26.05.2015 10:37:58
Hi
für mehere Bedingungen bietet sich das Select case an:

LZ = Cells(Rows.Count, 7).End(xlUp).Row
 For z = LZ To 3 Step -1
     Select case Cells(z, 7).value
         Case "Schmitz", "Meier", "Peters"
         case else
             Rows(z).Delete Shift:=xlUp
     end Select
 Next z

andere Möglichkeit:

if Instr(";Schmitz;Meier;Peters;"),";" & Cells(z, 7) & ";") = 0 Then Rows(z).Delete
Gruß Daniel

Bild

Betrifft: AW: Bedinung mit mehreren Kriterien: Select Case
von: Michael
Geschrieben am: 26.05.2015 10:39:56
Danke Daniel,
ich probiere es mal aus.
Gruß
Michael

 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA Zeilen löschen wenn Kriterien nicht erfüllt"