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

Forumthread: 2 Excellisten vergleichen

2 Excellisten vergleichen
14.08.2006 13:14:46
Detlef
Hallo,
ich habe folgendes Problem:
2 Excellisten beinhalten ähnliche Daten. (Artikelnr, Test, Stückzahl...)
Nun kann es sein das der Datensatz "A" in Tebelle 1 und in Tabelle 2 vorkommt.
Wenn das so ist, soll er komplett gelöscht werden.
Kommt ein Datensatz nur in Tabelle 1 oder Tabelle 2 vor, soll er in ein neues Tabellenblatt geschrieben werden.
Ich habe zwar schon VBA-Scripte gefunden, die Duplexe löschen, aber keines, was einen Datensatz koplett löscht.
Vielen Dank
Detlef
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 2 Excellisten vergleichen
14.08.2006 14:23:42
Anna
Hi Detlef
deine Fragestellung bitte etwas genauer definieren!
wo soll der Datensatz gelöscht werden? Tab1 oder Tab2 oder in beiden?
wenn ein Datensatz nur einmal vorkommt, warum soll er dann in ein (3.?)Blatt geschrieben werden?
Vorschlag meinerseits:Kopiere die Daten von Tab2 in Tab1 und lösche die doppelten Sätze, dann brauchst Du nur eine Tabelle?!!
Gruss Anna
Anzeige
AW: 2 Excellisten vergleichen
14.08.2006 15:08:33
Detlef
Hallo Anna,
prinzipiell geht Dein Vorschlag.
Aber wie lösche ich die doppelten Datensätzte.
Alle Scripte löschen immer nur einen von 2 Datensätzen.
Keines löscht beide .
Gruss
Detlef
AW: 2 Excellisten vergleichen
14.08.2006 15:13:52
Anna
Hallo Detlef
versuchs damit:

Sub AlleDoppelten_ganzweg()
Dim zelle As Range
Dim container() As Long
Dim i As Long
Dim a As Long
With Application
.Calculation = xlCalculationManual
.ScreenUpdating = False
.EnableEvents = False
End With
For Each zelle In Range("a1:a1000")
If WorksheetFunction.CountIf(Range("A1:a1000"), zelle) > 1 Then
ReDim Preserve container(i)
container(i) = zelle.Row
i = i + 1
End If
Next
For a = UBound(container) To LBound(container) Step -1
Rows(container(a)).Delete
Next
With Application
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub

die Zellenangaben musst Du anpassen
Grüsse Anna
Anzeige
AW: 2 Excellisten vergleichen
14.08.2006 15:54:30
Mag
Hi,
Tabelle2 unter Tabelle1 kopieren und Programm starten
Option Explicit

Sub LöschDoppelte()
Dim i As Long, j As Long
i = Tabelle1.Cells(65536, 1).End(xlUp).Row
Do
j = 1
Do
If Cells(j, 1).Value = Cells(i, 1) And Cells(j, 2).Value = Cells(i, 2) Then 'ggf. erweitern um weitere Spalten
Rows(j).Delete
i = i - 1
Else
j = j + 1
End If
Loop Until j = i
i = i - 1
Loop Until i = 0
End Sub

Gruss
Anzeige
AW: 2 Excellisten vergleichen
14.08.2006 16:05:12
Mag
... am Ende muss es heißen:
Loop Until i = 1 statt i=0 ...
Gruss
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige