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

VBA Integration einer Tabelle in eine andere

VBA Integration einer Tabelle in eine andere
25.07.2019 15:59:38
Liebold
Hallo ihr Lieben,
ich bin kompletter Neuling bei VBA und hoffe auf Hilfe, da ich im Internet nichts genau passendes gefunden habe und meine Kenntnisse zum umformulieren von Codes nicht ausreichen. Die Zeit, für diese eine Aufgabe VBA von Grund auf zu erlernen, habe ich leider nicht und hoffe deshalb auf eure Hilfe. Das Umformulieren von vorhandenen Codes hat nämlich gar nicht geklappt..:(
Folgendes Problem möchte ich lösen:
Ich habe eine Excel Datei, die auf einem Tab ein paar beschriebene Zeilen hat (abc.xlsx). Eine zweite (abc2.xlsx), die ähnlich aufgebaut ist. Beide haben die gleiche Spaltenanzahl, jedoch unterschiedliche viele beschriebene Zeilen. Nun möchte ich ein VBA Skript haben, welches mir die Inhalte der beiden Dateien in einem Tab in einer Datei zusammenführt, sodass die Zeilen von der zweiten Datei nach der letzten Zeile der ersten Datei eingefügt werden (abc_abc2.xlsx).
Das Ganze soll so dynamisch formuliert sein, dass es automatisch erkennt wie viele Dateien in der ersten wie auch in der zweiten Datei stehen.
Könnt ihr mir weiterhelfen? Vielen Dank schonmal!
Viele Grüße,
Anna

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Integration einer Tabelle in eine andere
25.07.2019 18:58:29
Dieter
Hallo Anna,
ich gehe mal von den folgenden Voraussetzungen aus:
- Die Daten werden jeweils aus dem ersten Tabellenblatt der Quelldateien entnommen und sie werden in das erste Tabellenblatt der Zieldatei geschrieben.
- Die Anzahl der vorhandenen Sätze wird jeweils anhand von Spalte A bestimmt.
- Die Zieldatei wird jeweils neu angelegt und in dem Verzeichnis gespeichert, aus dem die beiden Quelldateien stammen.
Unter diesen Voraussetzungen kannst du das mit dem folgenden Programm machen (Pfad und Dateinamen anpassen):
Sub Zusammenführen()
Dim i As Long
Dim letzteZeile(1 To 2) As Long
Dim mappeQ(1 To 2) As String ' Q für Quelle
Dim mappeZ As String         ' Z für Ziel
Dim pfad As String
Dim wbQ(1 To 2) As Workbook
Dim wbZ As Workbook
Dim wsQ(1 To 2) As Worksheet
Dim wsZ As Worksheet
Dim zeileZ As Long
'############ Hier anpassen ########
pfad = "C:\Herber\"
mappeQ(1) = "abc.xlsx"
mappeQ(2) = "abc2.xlsx"
mappeZ = "abc_abc2.xlsx"
For i = 1 To 2
If Dir(pfad & mappeQ(i)) = "" Then
MsgBox pfad & mappeQ(i) & vbNewLine & "existiert nicht"
Exit Sub
End If
Next i
For i = 1 To 2
On Error Resume Next
Workbooks(mappeQ(i)).Close SaveChanges:=False
On Error GoTo 0
Set wbQ(i) = Workbooks.Open(Filename:=pfad & mappeQ(i))
Set wsQ(i) = wbQ(i).Worksheets(1)
letzteZeile(i) = wsQ(i).Cells(wsQ(i).Rows.Count, "A").End(xlUp).Row
Next i
Set wbZ = Workbooks.Add
Set wsZ = wbZ.Worksheets(1)
zeileZ = 1
For i = 1 To 2
If i = 2 Then
zeileZ = letzteZeile(1) + 1
End If
wsQ(i).Rows(1).Resize(letzteZeile(i)).Copy Destination:=wsZ.Rows(zeileZ)
wbQ(i).Close SaveChanges:=False
Next i
On Error Resume Next
Workbooks(mappeZ).Close SaveChanges:=False
On Error GoTo 0
Application.DisplayAlerts = False
wbZ.SaveAs Filename:=pfad & mappeZ
Application.DisplayAlerts = True
End Sub
https://www.herber.de/bbs/user/131085.xlsm
Viele Grüße
Dieter
Anzeige

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige