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

2 Tabellenblätter zusammenbringen

2 Tabellenblätter zusammenbringen
15.10.2013 10:56:37
Marcel
Hallo Zusammen,
hätte da wieder mal ein Problem wofür ich eine Makrolösung bräuchte.
Hoffe jemand hat eine Idee.
Ich habe 2 Tabellenblätter. Spalten sind gleich. In der ersten steht eine Artikelnummer in der 5ten Text. Wenn jetzt aus Tabelle 2 der Artikel in Tabelle 1 vorkommt (kann in beiden Mehrzeilig sein) soll die Zeile(n) aus Tabelle 2 in Tabelle 1 an die letzte gefundene Zeile zu dem Artikel gefügt werden.
Hoffe ihr könnt mir folgen :-)
Anbei auch eine Beispieldatei. Auf dem Sheet Ergebnis ist gezeigt wie es am Ende aussehen soll.
https://www.herber.de/bbs/user/87655.xlsx
Vielen Dank im Voraus.
Grüße Marcel

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

Betreff
Datum
Anwender
Anzeige
AW: 2 Tabellenblätter zusammenbringen
15.10.2013 11:35:23
Klaus
Hi Marcel,
quick and dirty:
Option Explicit
Sub WerteDazu()
Const TabQuelle As String = "Tabelle2"
Const TabDazu As String = "Tabelle1"    'Tabellenblattnamen
Const RowFirst As Long = 2              'geht los in Zeile 2
Const ColArtikel As Long = 1            'Artikelnummern in Spalte 1
Dim RowLast As Long
Dim RowZiel As Long
Dim ArtikelAnz As Long
Dim r As Range
With Sheets(TabQuelle)
RowLast = .Cells(.Rows.Count, ColArtikel).End(xlUp).Row
For Each r In .Range(.Cells(RowFirst, ColArtikel), .Cells(RowLast, ColArtikel))
'Artikel zählen
ArtikelAnz = Application.WorksheetFunction.CountIf(Sheets(TabDazu).Columns(ColArtikel),  _
r.Value)
If ArtikelAnz > 0 Then  'wenn dieser Artikel überhaupt vorkommt
'Zeile feststellen
RowZiel = Application.WorksheetFunction.Match(--r.Value, Sheets(TabDazu).Columns( _
ColArtikel), False)
'Zeile einfügen
Sheets(TabDazu).Rows(RowZiel + ArtikelAnz).Insert
'Inhalt kopieren
r.EntireRow.Copy Sheets(TabDazu).Rows(RowZiel + ArtikelAnz)
End If
Next r
End With
End Sub
Grüße,
Klaus M.vdT.

Anzeige
AW: 2 Tabellenblätter zusammenbringen
15.10.2013 12:28:58
Marcel
Hallo Klaus M.vdT. ,
vielen Dank für deine Hilfe!!
Leider klappt es bei mir nicht ganz. Er meckert an der Zeile

RowZiel = Application.WorksheetFunction.Match(--r.Value, Sheets(TabDazu).Columns(ColArtikel),  _
False)
und sagt: "Die Match-Eigenschaft des WorksheetFunction-Objektes kann nicht zugeordnet werden"
Hast du eine Idee?
Dankeschön.
Grüße Marcel

AW: 2 Tabellenblätter zusammenbringen
15.10.2013 13:57:05
Marcel
Hallo Klaus M.vdT.,
habe glaube den Fehler gefunden:
Zumindest, wenn man bei (--r... die -- entfernt läuft das Makro.
Kann das sein? :-)
Grüße Marcel

Anzeige
AW: 2 Tabellenblätter zusammenbringen
15.10.2013 14:27:17
Klaus
Hallo Marcel,
zumindest in deiner Musterdatei hast du "Text-als-Zahl" mit "Zahl" verglichen. Die -- vor r.value sind dafür da, aus "Text-als-Zahl" eine "Zahl" zu machen, innerhalb deiner Musterdatei läuft das Makro so und nur so durch.
Wenn deine "echten" Daten anders aussehen (zB. vergleichst du vielleicht "Zahl" mit "Zahl" und "Text" mit "Text") funktioniert es mit der Umwandlung natürlich nicht mehr! Dann ist das entfernen der "--" genau der richtige Weg.
Aber hier im Forum können wir nur so gut helfen, wie die Mustervorlage ist!
Grüße,
Klaus M.vdT.

AW: 2 Tabellenblätter zusammenbringen
15.10.2013 14:34:35
Marcel
Hallo Klaus M.vdT.,
alles klar. Vielen Dank für deine Hilfe und das Makro! Hab die Formate angepasst und es tut genau das was es soll :-)
Schönen Tag noch & viele Grüße
M.

Anzeige
danke für die Rückmeldung! owT.
15.10.2013 15:40:33
Klaus
.

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige