Live-Forum - Die aktuellen Beiträge
Datum
Titel
29.03.2024 13:14:12
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
880to884
880to884
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zeilen löschen

Zeilen löschen
25.06.2007 09:19:50
sascha76er
Hallo,
vielleicht kann mir jemand hier weiterhelfen, ich möchte gerne Zeilen löschen bei denen in einer bestimmten Spalte ein bestimmter Wert auftaucht. Dies funktioniert mit dem folgenden Skript mit einem Wert einwandfrei, wie muss ich das Skript abändern damit ich auch mehrere Werte abfragen kann.
Kann man eigentlich mit einem Makro ein anderes anstossen?

Sub ZeilenKiller()
Dim i As Long, laR As Long
Dim sp As Integer
sp = 1  'Spaltennummer (1=A, 2=B, ...)
Application.ScreenUpdating = False
laR = Cells(Rows.Count, sp).End(xlUp).Row
For i = laR To 1 Step -1
If Cells(i, sp).Value = "abc" Then
Cells(i, sp).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub


Gruß
Sascha

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeilen löschen
25.06.2007 09:21:53
Hajo_Zi
Hallo Sascha,
If Cells(i, sp).Value = "abc" or Cells(i, sp).Value = "Sascha" Then

AW: Zeilen löschen
25.06.2007 09:29:19
sascha76er
Hallo Hajo,
funktioniert einwandfrei, wie sieht es aus wenn ich eine Zeile löschen will wenn der entsprechende Suchwert eine leere Zelle ist?
Gruß
Sascha

AW: Zeilen löschen
25.06.2007 09:37:55
Hajo_Zi
Hallo Sascha,
=""
Gruß Hajo

AW: Zeilen löschen
25.06.2007 10:24:51
sascha76er
Hallo Hajo,
funktioniert alles einwandfrei.
Vielen Dank
Sascha

AW: Zeilen löschen
25.06.2007 23:10:00
Daniel
Hi Sascha
wenn es mehrere Werte sind, bei denen die Zelle gelöscht werden soll, dann ist die SELECT CASE anweisung etwas eleganter und übersichtlicher als IF-THEN, da die einzelnen Bedingungen einfach bei CASE hintereinander aufgelistet werden können.
Es können auch beliebig verschieden CASES für unterschiedliche Aktionen verwendet werden
also in deinem Fall:

For i = laR To 1 Step -1
select case  Cells(i, sp).Value
case "abc", "Sascha", ""      '---das "" steht für Leere Zellen
Cells(i, sp).EntireRow.Delete
case else
'--- hier passiert nichts
end select
Next i


Gruß, Daniel

Anzeige
AW: Zeilen löschen
26.06.2007 09:03:00
sascha76er
Hallo Daniel,
vielen Dank für deine Hilfe , stimmt ist wirklich eleganter werde es dann so einbauen.
Gruß
Sascha

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige