Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1524to1528
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

Tabellen zusammen führen

Tabellen zusammen führen
18.11.2016 09:04:10
Larissa
Hallo,
ich habe zwei Tabellen u.a. mit der Spalte "Straße". Nun möchte ich alle Einträge aus der Tabelle quelle in Tabelle ziel haben, die noch nicht in Tabelle Ziel vor kommen. Also die Tabellen zusammenführen.
Sub zusam()
Dim ziel As Object
Dim export As Object
Set ziel = ThisWorkbook.Worksheets(1)
Set quelle = ThisWorkbook.Worksheets(2)
letztezeileZiel = ziel.Cells(Rows.Count, 5).End(xlUp).Row
letztezeileQuelle = quelle.Cells(Rows.Count, 5).End(xlUp).Row
For x = 1115 To 2 Step -1
For y = 99 To 2 Step -1
If ziel.Range("D" & x).Value = quelle.Range("E" & y).Value Then
Else
quelle.Range("A" & y).EntireRow.Copy Destination:=ziel.Range("A" & letztezeileZiel)
End If
Next
Next
End Sub
Das ist mein bisheriger Code, aber da ist ein Denkfehler drin, da die Else-Bedingung viel zu häufig erfüllt wird.
Was mache ich falsch?

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

Betreff
Datum
Anwender
Anzeige
AW: Tabellen zusammen führen
18.11.2016 12:02:01
Oberschlumpf
Hi Larissa
Zeig uns doch mal bitte per Upload eine Bsp-Datei inklusive aller Bsp-Daten, die zum Erfüllen deiner Bedingungen wichtig sind.
Ciao
Thorsten
AW: Tabellen zusammen führen
20.11.2016 10:33:03
fcs
Hallo Larissa,
in deinem Makro vergleichst du die Werte in Spalte E der Quelle mit Spalte D des Ziels.
Ist das so beabsichtigt?
Außerdem solltest du die Werte der letzten Zeilen in den For-Next-Schleifenzähler einsetzen.
Für die Ziel-Tabelle musst du vor dem Einfügen eines neuen Datensates aus der Quelle den Zähler für die letzte Zeile um 1 ehöhen.
Insgesamt schneller und eindeutiger wird es aber, wenn du die Werte in der Quelle im Ziel mit der Find-Methode suchst und falls nicht gefunden am Ende der Liste in Ziel anhängst.
LG
Franz
Sub zusam()
Dim ziel As Object
Dim quelle As Object
Dim Zeile_Q As Long, letztezeileZiel As Long, letztezeileQuelle As Long
Dim varSuch, ZelleSuch As Range
Set ziel = ActiveWorkbook.Worksheets(1)
Set quelle = ActiveWorkbook.Worksheets(2)
letztezeileZiel = ziel.Cells(Rows.Count, 5).End(xlUp).Row
letztezeileQuelle = quelle.Cells(Rows.Count, 5).End(xlUp).Row
Application.ScreenUpdating = False
For Zeile_Q = letztezeileQuelle To 2 Step -1
'Suchwert in Spalte E der Quelle
varSuch = quelle.Cells(Zeile_Q, 5)
If Not IsEmpty(varSuch) Then
'Suchwert in Spalte E der Zieltabelle suche
Set ZelleSuch = ziel.Range("E:E").Find(What:=varSuch, LookIn:=xlValues, _
lookat:=xlWhole)
If ZelleSuch Is Nothing Then
letztezeileZiel = letztezeileZiel + 1
quelle.Rows(Zeile_Q).Copy Destination:=ziel.Cells(letztezeileZiel, 1)
End If
End If
Next
Application.ScreenUpdating = True
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige