Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1444to1448
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
Inhaltsverzeichnis

Spaltenvergleich -> Zellen löschen

Spaltenvergleich -> Zellen löschen
09.09.2015 13:15:52
Adrian
Hallo liebe Community!
Ich brauche mal wieder eure Hilfe, und zwar möchte ich Zwei Spalten zweier unterscheidlicher Tabellen miteinander vergleichen und aus einer Spalte all jene Einträge entfernen, die NICHT auch in der anderen Spalte vorhanden sind...
Der Code, den ich hierfür eigentlich für sinnvoll halte, funktioniert aber irgendwie noch nicht so recht...

LZ2 = IIf(IsEmpty(sh2.Cells(sh2.Rows.Count, 1)), sh2.Cells(sh2.Rows.Count, 1).End(xlUp).Row,  _
sh2.Rows.Count)
set sh1 = Activeworkbook.Sheet(1) 'Vergleichsliste
set sh1 = Activeworkbook.Sheet(2) 'aus dieser Liste sollen Einträge verschwinden
Dim ZeileD As Long
For ZeileD = LZ2 To 2 Step -1
If WorksheetFunction.CountIf(sh1.Columns(2), sh2.Cells(ZeileD, 5)) = 0 Then sh2.Cells( _
ZeileD, 5).EntireRow.Delete
Next ZeileD
Bitte um schnelle Hilfe und vielen Dank vorab... :)

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spaltenvergleich -> Zellen löschen
09.09.2015 14:07:13
Gerd
Hallo Adrian,
vielleicht sollte man die letzte Zelle in Spalte 5 ermitteln u. sh2 mit einer Set-Anweisung ein Blatt zuweisen, u. die beiden Set-Anweisungen zuvor (darüber im Code) machen.
Gruß Gerd

AW: Spaltenvergleich -> Zellen löschen
09.09.2015 14:20:31
Adrian
Hallo Gerd,
sorry das war ein FLüchtigkeitsfehler meinerseits, habe alles schnell aus dem code zusammenkopiert damit jeder sehen kann, wie die variablen definiert sind. sh2 ist im original code natürlich vor LZ2 definiert und LZ2 zählt auch die letzte Zeile (von spalte 5) richtig aus. Das ist leider nicht des rätsels lösung...
Trotzdem vielen Dank!

Anzeige
AW: Spaltenvergleich -> Zellen löschen
09.09.2015 14:29:37
Gerd
Hallo Adrian,
wenn soweit alles o.K. ist, könntest du noch erläutern, was "funktioniert nicht so richtig!" denn bedeutet u. eine Beispiel-Datei hochladen.
Gruß Gerd

AW: Spaltenvergleich -> Zellen löschen
09.09.2015 15:02:33
Adrian
Hallo Gerd,
zunächst die Datei: https://www.herber.de/bbs/user/100098.xlsx
Mein Code soll eigentlich Zeile2 in Tabelle1 und Zeile2 in Tabelle2 miteinander vergleichen und alle Werte (die komplette zeile) aus Tabelle2 löschen, die eben nicht in Tabelle1 vorkommen. Im Beispiel sind all diese Einträge mal von mir Gelb markiert worden...
Die Idee hinter dem Code: zählen, wie oft die nummer einer Zelle in der Spalte "Zeile2" der Tabelle 1 vorkommt, wenn "0" gezählt wird, die gesamte zeile löschen... Hoffentlich konnte ich mich halbwegs verständlich machen ^^

Anzeige
AW: Spaltenvergleich -> Zellen löschen
09.09.2015 15:21:52
Gerd
Hallo Adrian,
ich sehe mit deiner Beispieldatei kein Problem.
Sub test()
Dim X As Long
For X = Tabelle2.Cells(Tabelle2.Rows.Count, 7).End(xlUp).Row To 3 Step -1
If WorksheetFunction.CountIf(Tabelle1.Columns(3), Tabelle2.Cells(X, 7).Value) Then
'mach nichts
Else
Tabelle2.Cells(X, 7).EntireRow.Delete shift:=xlShiftDown
End If
Next
End Sub
Gruß Gerd

AW: Spaltenvergleich -> Zellen löschen
10.09.2015 08:21:35
Adrian
Ja es funktioniert endlich!! Super vielen Dank für deine Hilfe :) Muss wohl doch an irgendwelchen Bezügen gelegen haben, die ich nicht richtig definiert habe (habe jetzt zb. sh2 durch Sheets(2) ersetzt).
Oder macht es einen Unterschied, ob ich die IF-Funktion nach

"= 0"
suchen lasse um "THEN" den Delete-Befehl auszuführen bzw. nach

">0"
suchen lasse um "Else" zu löschen...?
Lieben Gruß!

Anzeige
AW: Spaltenvergleich -> Zellen löschen
10.09.2015 08:31:37
Gerd
Hallo Adrian,
nein, das macht m.E. keinen Unterschied.
Gruß Gerd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige