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

Blatt Inhalt kopieren

Blatt Inhalt kopieren
09.11.2018 08:58:52
Georg
Hallo zusammen,
ich habe jetzt einige Seiten durchsucht und auch shcon ein paar Lösungen probiert aber keine funktioniert bis jetzt.
Mein Problem/Aufgabe ist Ein Excel Makro zu erstellen, das zunächst einen Datei öffnen Dialog aufruft und dann aus der ausgewählten Datei den Inhalt des ersten Blattes in das Blatt "Import" des Excel files mit dem Makro schreibt.
Also in einfachen schritten:
-Excel Datei "A" öffnen
-Makro ausführen
-Excel Datei "B" auswählen
-Makro kopiert Inhalt von Blatt 1 aus Datei B
-In Blatt 2 ("Import") von Datei A
-Datei B wird geschlossen
Also im Grunde ein recht einfacher Import sollte man meinen. Die konkreten Schritte sind dabie nicht so wichtig, also gerne ohne öffnen und schließen, Hauptsache die Daten kommen von B nach A ^^.
Bis jetzt klappt auch schon das auswählen und öffnen der Datei:
Public Sub Import()
Dim VarDateiPfad As Variant
Dim Source As Workbook
Dim FilterDestination As Workbook
'Legt Standard Verzeichnis des "Datei öffnen" Dialogs fest.
ChDrive ("X:\") 'hier Laufwerk angeben
ChDir ("X:\X....") ' hier exakten Pfad angeben
'Startet "Import" Dialog und legt ausgewählte Datei in "VarDateiPfad" ab
VarDateiPfad = Application.GetOpenFilename("Exceldateien,*.xls*", 1)
Alles soweit so gut denke ich. Vom folgenden funktioniert aber wohl nur die erste Zeile (ausgewählte Excel öffnet sich aber es ist nichts in der Zwischenablage und es wird auch nichts kopiert):
Workbooks.Open Filename:=VarDateiPfad, ReadOnly:=False
ActiveWorkbook.Sheets("X").UsedRange.Copy
ThisWorkbook.Sheets("Import").PasteSpecial xlValues
ActiveWorkbook.Close
Ich hoffe ihr könnt mir helfen.
Danke schonmal.

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

Betreff
Datum
Anwender
Anzeige
AW: Blatt Inhalt kopieren
09.11.2018 09:06:43
Georg
Noch ein kleienr Nachtrag (finde leider keine Möglichkeit zum editieren)
Füge ich nach der Zeile
Workbooks.Open Filename:=VarDateiPfad, ReadOnly:=False
eine einfache MsgBox ein, wird diese nicht angezeigt.
Also "stoppt" diese Zeile mein Makro?
Zu diesem Zeitpunkt öffnet sich eben das ausgewählte File und sonst passiert nichts mehr... kurios...
AW: Blatt Inhalt kopieren
09.11.2018 09:34:56
Torsten
Hallo Georg,
ich habs mal nachgestellt. Bei mir funktionierts, da ich dem code sage, wo er hinkopieren soll im Zielsheet.
ThisWorkbook.Sheets("Import").Range("A1").PasteSpecial xlValues
Das hast du vergessen.
Gruss Torsten
Anzeige
AW: Blatt Inhalt kopieren
09.11.2018 09:51:15
Bernd
Servus Georg,
von wo nach wo (Zellbereich) sollen die Daten kopiert werden?
Falls beide Blätter die gleiche Struktur haben würde ich eine Kopie des Rohdatenblattes (Dat: B) in die Zieldatei (Dat: A) vorschlagen und den kopierten Tabellenreiter ggf. umbenennen...
z.B. so:

Sub Import()
wb = Application.GetOpenFilename("Excel-Dateien, *.xlsx")
If wb = False Then
MsgBox "Keine Datei ausgewählt. Das Makro wird beendet."
Exit Sub
End If
Set wb_ziel = ThisWorkbook
Set ws_ziel = wb_ziel.Sheets(Sheets.Count)
Set wb_roh = Workbooks.Open(wb, ReadOnly:=True)
Set ws_roh = wb_roh.Sheets(2)
For Each ws In wb_ziel.Worksheets
If ws.Name = "Import" Then
Application.DisplayAlerts = False
ws.Delete
Application.DisplayAlerts = True
End If
Next ws
With wb_roh
ws_roh.Copy After:=ws_ziel
.Close False
End With
Set ws_roh = Nothing
Set ws_ziel = Nothing
Set wb_roh = Nothing
Set wb_ziel = Nothing
End Sub
Grüße, Bernd
Anzeige
AW: Blatt Inhalt kopieren
09.11.2018 10:11:43
Georg
Vielen DAnk schonmal für die Hilfe :)
Leider klappt Torstens Lösung
Workbooks.Open Filename:=VarDateiPfad, ReadOnly:=False
ActiveWorkbook.Sheets("X").UsedRange.Copy
ThisWorkbook.Sheets("Import").Range("A1").PasteSpecial xlValues
ActiveWorkbook.Close
nicht. Das Fehlerbild bleibt identisch. Ausgewählte Datei öffnet sich und das wars.
Schade, sieht eig. nach iener super Lösung aus :/
@Bernd
Das "Import Blatt wird vorher (clear) gelöscht also ist komplett leer. Die Formattierung kann übernommen werden aber eignetlich gibt es keine, also nicht relevant.
Das Blatt "Import" kann auch just in Time erst angelegt werden oder das neue Blatt rüberkopiert werden.
Wichtig ist wie gesag nur das die Info von A nach B kommt ^^
Anzeige
AW: Blatt Inhalt kopieren
09.11.2018 10:40:08
Herbert
Hallo Georg,
probiers mal damit (ANPASSEN!!! nicht vergessen):
Const strFile As String = "C:\xxx\xxx.xlsm" ' Pfad und Datei
Const strSheetQ As String = "Tabelle1" ' DIE Tabelle wird ausgelesen"
Const strSheetZ As String = "Import" ' Die Tabelle in DIESER Datei
Const strRange As String = "F5:F30" ' Der Bereich wird ausgelesen
Public Sub Main()
With ThisWorkbook.Worksheets(strSheetZ)
.UsedRange.ClearContents
.Range("F5:F30").Formula = "='" & Mid(strFile, 1, _
InStrRev(strFile, "\")) & "[" & Mid(strFile, InStrRev(strFile, _
"\") + 1) & "]" & strSheetQ & "'!" & strRange
End With
End Sub
Servus
P.S.: Dank an Case!
Anzeige
AW: Blatt Inhalt kopieren
09.11.2018 11:45:16
Torsten
komisch, wie gesagt. habs nachgebaut und bei mir funktionierts

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige