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

Copy Paste zwischen zwei Exceldateien

Copy Paste zwischen zwei Exceldateien
09.11.2020 11:31:30
Michael
Hallo Zusammen
Datei: https://www.herber.de/bbs/user/141424.xls
Ich habe mehrere Excel Listen von mehreren Tabellenblätter mit dem Namen "PLZ 25", "PLZ 30", "PLZ 31" oder "PLZ 60" darin sind unterschiedliche Zeilen (manche auch ohne Inhalte und dann wieder mit Inhalte)
Ziel ist es diese Daten in ein einziges Excel-File namens "Mainfile" zu exportieren. Dabei müsste vor dem nächsten einfügen der Dateien eine Zeile nach unten gesprungen werden, damit die vorherigen Daten nicht überschrieben werden.
Kann mir jemand helfen, den vba code zu schreiben. Folgendes habe ich bereits:
Option Explicit
Private Sub Workbook_Open()
Sheets("PLZ 25").Activate
End Sub

Sub copypaste()
' copypaste Makro
' Tastenkombination: Strg+a
Rows("2:40").Select
Selection.Copy
Windows("Mainfile.xlsm").Activate
ActiveSheet.Paste
' letzte Zeile ermitteln
letztezeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
'Ausgabe letzte Zeile
MsgBox letztezeile
'Leere Zeile einfügen
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Copy Paste zwischen zwei Exceldateien
09.11.2020 12:56:02
Werner
Hallo,
eine entscheidende Frage: In welcher Datei ist der Code um die Daten zu "sammeln" ?
Gruß Werner
AW: Copy Paste zwischen zwei Exceldateien
09.11.2020 19:03:14
Michael
Hallo Werner
Ich habe den VBA-Code in der Excel Datei „Mainfile“ sowie als Personal gesetzt, um jederzeit beim Öffnen der Arbeitsmappen darauf zugreifen zu können.
Gruss Michi
AW: Copy Paste zwischen zwei Exceldateien
10.11.2020 06:06:49
Werner
Hallo,
teste mal.
Option Explicit
Public Sub Sammeln()
Dim ws As Worksheet, loLetzteQuelle As Long, loLetzteZiel As Long
Application.ScreenUpdating = False
'Dateiname anpassen
For Each ws In Workbooks("Datei_mit_PLZ.xlsx").Worksheets
If Left(ws.Name, 3) = "PLZ" Then
With ws
loLetzteQuelle = .Cells(.Rows.Count, "A").End(xlUp).Row
.Range(.Cells(2, 1), .Cells(loLetzteQuelle, 20)).Copy
'Blattname anpassen
With Workbooks("Mainfile.xlsm").Worksheets("Tabelle1")
loLetzteZiel = .Cells(.Rows.Count, "A").End(xlUp).Offset(1).Row
.Cells(loLetzteZiel, "A").PasteSpecial Paste:=xlPasteValues
End With
End With
End If
Next ws
'Blattname anpassen
With Workbooks("Mainfile.xlsm").Worksheets("Tabelle1")
loLetzteQuelle = .Cells(.Rows.Count, "A").End(xlUp).Row
.Sort.SortFields.Add Key:=Range("B1"), SortOn:=xlSortOnValues, _
Order:=xlAscending, DataOption:=xlSortNormal
With .Sort
.SetRange Range("A2:T" & loLetzteQuelle)
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.Apply
End With
End With
Application.CutCopyMode = False
End Sub
Gruß Werner
Anzeige
AW: Copy Paste zwischen zwei Exceldateien
10.11.2020 09:36:06
Michael
Guten Morgen lieber Werner
Erstens Mal Chapeau - hat das soweit sehr gut geklappt! Aber musste noch zwei Debug Fehler beheben (Zuordnung der Dateinamen sowie beide Excelsheets geöffnet haben inkl. Tabelle 1 noch einfügen (hatte nur noch das Mainfile als worksheet drin - mit der ich ja arbeite. Das mit der Schleife habe ich nun auch begriffen.
Frage & nur sofern möglich, kann man jede einzelne Datei im entsprechenden Laufwerk-Ordner (automatisch öffnen und die Daten untereinander in der Zieldatei mit der Schleife kopieren und einfügen?
Gruss Michi

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige