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

Datenbanken zusammenlegen

Datenbanken zusammenlegen
Andreas
Hallo,
ich habe zwei Adressdatenbanken (jeweils an die 2000 Einträge), die ich zusammenlegen möchte. Problem: Beide Datenbanken haben möglicherweise z.T. die gleichen Einträge.
Wie kann ich mit einer Formel beide Datenbanken zusammenlegen und Dopplungen vermeiden. Mit dem Nachnamen als Suchkriterium (z.B. Meyer) geht es nicht. Ich müsste doch eigentlich mehrere Suchkriterien mit einbeziehen. Nachname + Vorname + Adresse, etc.
Hier eine Beispieldatei: https://www.herber.de/bbs/user/73220.xlsx
Kann mir jemand helfen? Ich danke Euch schonmal im Voraus für Eure Mühen!
LG, Andreas
P.S. Ich habe aus einer SVERWEIS-Abfrage Nullen in den leeren Zellen der Datenbank. Gibt es da einen eleganten weg die loszuwerden?

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datenbanken zusammenlegen
25.01.2011 11:20:01
Eugen
Hi Andreas
Public Sub add_db()
Dim i As Long, nMaxRow As Long
Dim x As Long, bFound As Boolean
Dim WS1 As Worksheet, WS2 As Worksheet
Set WS1 = Sheets(1)
For i = 2 To 20000
If WS1.Cells(i, 2).Value = "" And WS1.Cells(i, 3).Value = "" Then Exit For
Next i
nMaxRow = i
Set WS2 = Sheets(2)
For i = 2 To 20000
' Abbruch wenn Zeile leer
If WS2.Cells(i, 2).Value = "" And WS2.Cells(i, 3).Value = "" Then Exit For
For x = 2 To 20000
bFound = False
If WS1.Cells(x, 2).Value = "" And WS1.Cells(x, 3).Value = "" Then Exit For
If WS1.Cells(x, 2).Value = WS2.Cells(i, 2).Value And _
WS1.Cells(x, 3).Value = WS2.Cells(i, 3).Value And _
WS1.Cells(x, 9).Value = WS2.Cells(i, 9).Value And _
WS1.Cells(x, 12).Value = WS2.Cells(i, 12).Value And _
WS1.Cells(x, 14).Value = WS2.Cells(i, 14).Value Then
bFound = True
Exit For
End If
Next x
' Eintrag in ws1 vornehmen
If Not bFound Then
For x = 1 To 15
WS1.Cells(nMaxRow, x).Value = WS2.Cells(i, x).Value
Next x
nMaxRow = nMaxRow + 1
End If
Next i
End Sub

Gruss Eugen
Anzeige
AW: Datenbanken zusammenlegen
25.01.2011 13:45:03
Andreas
Klasse! Funktioniert prima!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige