Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
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

Schleife

Schleife
03.06.2016 10:40:19
Larissa
Hallo,
ich habe zwei separate Excel-Listen mit Einträgen, die teilweise in der ersten Spalte ("A") übereinstimmen (Kundennummer).
Ich möchte jetzt aus der ersten Liste alle Einträge löschen, die in der zweiten Liste nicht vorkommen.
Außerdem möchte ich, dass alle die in der zweiten Liste vorkommen, aber nicht in der ersten, in die erste Liste übernommen werden.
Wie mache ich das am besten?

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

Betreff
Datum
Anwender
Anzeige
AW: Schleife
03.06.2016 10:47:41
Daniel
Hi
wie gross ist denn deine Liste?
bei kleineren Datenmengen kannst du mit
=ZählenWenn(AndereTabelle!A:A;A2)
feststellen, ob der Wert in der anderen Liste vorkommt oder nicht. (wenn nicht, dann Ergebnis = 0, ansonsten 1 oder mehr)
dh diese Formel in beiden Tabellen eintragen, dann kannst die Zeilen, bei denen eine 0 steht dann löschen bzw in die andere Tabelle kopieren.
Gruß Daniel

AW: Schleife
03.06.2016 10:58:35
Larissa
Ich würde es gerne mit VBA lösen. Die Tabellen umfassen über 1000 Einträge.

AW: Schleife
03.06.2016 11:06:08
Daniel
Hi
ja und?
Formeln kann und darf man auch per VBA eintragen.
ebenso kann man alle Excelfunktionen per VBA nutzen.
der Recorder ist dein Freund
ansonsten ist es so, wenn du in der alten Liste die Einträge löschst, die in der neuen nicht vorkommen und die, die in der neuen Liste vorkommen aber nicht in der alten Liste vorhanden sind hinzufügst, dann kannst du gleich die neue Liste verwenden.
Gruß Daniel

Anzeige
AW: Schleife
03.06.2016 11:01:19
UweD
Hallo
Option Explicit
Sub vergleichen()
On Error GoTo Fehler
Dim TB1, TB2, SP%, ZE%, i&
Dim LR1&, LR2&
SP = 1 'spalte A
ZE = 2 'wegen möglicher Überschrift
Set TB1 = Sheets("Tabelle1")
Set TB2 = Sheets("Tabelle2")
LR1 = TB1.Cells(Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
For i = ZE To LR1
If WorksheetFunction.CountIf(TB2.Columns(1), TB1.Cells(i, 1)) = 0 Then
TB1.Rows(i).Delete xlUp
End If
Next
LR2 = TB2.Cells(Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte
For i = ZE To LR2
If WorksheetFunction.CountIf(TB1.Columns(1), TB2.Cells(i, 1)) = 0 Then
LR1 = TB1.Cells(Rows.Count, SP).End(xlUp).Row + 1
TB2.Rows(i).Copy TB1.Cells(LR1, SP)
End If
Next
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & _
Err.Number & vbLf & Err.Description: Err.Clear
End Sub

Gruß UweD

Anzeige
AW: Schleife
03.06.2016 11:31:14
Larissa
Danke! Das hat mir geholfen, genau das habe ich gesucht :)!

Danke für die Rückmeldung owT
03.06.2016 15:27:36
UweD

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige