Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Löschen von Inhalt, wenn keine Übereinstimmung

Forumthread: Löschen von Inhalt, wenn keine Übereinstimmung

Löschen von Inhalt, wenn keine Übereinstimmung
04.06.2014 12:36:19
Inhalt,
Hallo zusammen,
ich steh vor folgendem Problem. Und zwar sollen aus einer Tabelle (Tabelle1) Zeilen gelöscht werden, die folgende Bedingungen haben:
- die Zelle in Spalte 3 ist leer (" ")
- der Wert aus Tabelle1 ist nicht in der Spalte 1 der Tabelle2 zu finden
Bisher habe ich folgenden Code:
Dim loeschen2 As Double
For loeschen2 = Sheets("Tabelle1").Cells(Rows.Count, 1).End(xlUp).row To 1 Step -1
For FindeWert = Sheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).row To 3 Step -1
If Sheets("Tabelle1").Cells(loeschen2, 3).value = "" Then
If (IsError(Application.Match(Sheets("Tabelle2").Cells(FindeWert, 1).value, Sheets("Tabelle1").Columns(2), 0))) Then
Rows(loeschen2).Delete
End If
End If
Next FindeWert
Next loeschen2
Dieser Code löscht mir aber alle Zeilen, die in der dritten Spalte leer sind.
Die Zeilen, in der eine Übereinstimmung mit der Spalte 1 in Tabelle2 vorliegt, werden ebenfalls gelöscht, obwohl diese ja gerade erhalten bleiben sollen.
Stehe da gerade ein wenig auf dem Schlauch.
Schon mal vielen Dank im Voraus.
Gruß,
Michael

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Löschen von Inhalt, wenn keine Übereinstimmung
04.06.2014 12:45:00
Inhalt,
Hallo,
die 2. Schleife ist überflüssig.
Sub aaaa()
Dim loeschen2 As Long
With Sheets("Tabelle1")
For loeschen2 = .Cells(.Rows.Count, 1).End(xlUp).Row To 1 Step -1
If .Cells(loeschen2, 3) = "" Then
If IsError(Application.Match(.Cells(loeschen2, 1), Sheets("Tabelle2").Columns(1), 0))  _
Then
.Rows(loeschen2).Delete
End If
End If
Next loeschen2
End With
End Sub

Gruß
Rudi
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige