Office: (Office 2016) Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen

Helfe beim Thema Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, leider kann ich maximal Makros aufzeichnen. Damit komme ich bei meinem jetzigen Problem allerdings nicht weiter. Problem: Monatlich soll ein... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von MoSim, 27. Oktober 2020.

  1. MoSim Neuer User

    Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen


    Hallo, leider kann ich maximal Makros aufzeichnen. Damit komme ich bei meinem jetzigen Problem allerdings nicht weiter. Problem: Monatlich soll ein Auszug von Daten aus einer Quelldatei die ich zugeschickt bekomme in eine eigene Zieldatei übernommen werden. Quell- und Zieldatei bestehen aus mehreren Tabellenblättern mit festen Namen.
    Der VBA-Code soll aus der Quelldatei, aus der Tabelle KundeA einen Bereich auswählen, kopieren und diesen ausgewählten Bereich transponiert in die Zieldatei KundeA einkopieren. Danach soll er zum nächsten Tabellenblatt KundeB gehen und hier den gleichen Arbeitsschritt durchführen. Das ganze geht über mehrere Tabellenblätter.
    Aufgezeichnet sieht das Makro wie folgt aus:
    Sub Makro2()
    '
    ' Makro2 Makro
    '

    '
    Workbooks.Open Filename:= _
    "G:\Mitarbeiter VRM\Mueller_Noss\Access\Hilfe\Zieldatei.xlsx"
    Windows("Quelldatei.xlsx").Activate
    Range("B3:I5").Select
    Selection.Copy
    Windows("Zieldatei.xlsx").Activate
    Sheets("KundeC").Select
    Range("B3:D10").Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True
    Windows("Quelldatei.xlsx").Activate
    Sheets("KundeB").Select
    Range("B3:I5").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Zieldatei.xlsx").Activate
    Sheets("KundeB").Select
    Range("B3").Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True
    Windows("Quelldatei.xlsx").Activate
    Sheets("KundeA").Select
    Range("B3:I5").Select
    Application.CutCopyMode = False
    Selection.Copy
    Windows("Zieldatei.xlsx").Activate
    Sheets("KundeA").Select
    Range("B3:D10").Select
    Selection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _
    False, Transpose:=True
    Windows("Quelldatei.xlsx").Activate
    Application.CutCopyMode = False
    Application.Goto Reference:="Makro2"
    Application.Goto Reference:="Makro2"
    End Sub

    Ich möchte allerdings gerne, dass die VBA automatisch von der einen Tabelle zur nächsten Tabelle springt, ohne das jeder Tabellennamen in der VBA angeben werden muss. Kann mir jemand weiterhelfen?
     
    Zuletzt von einem Moderator bearbeitet: 30. November 2020
  2. Beverly
    Beverly Erfahrener User
    Hi,

    ich hoffe ich habe deine Konstellation richtig interpretiert: die Arbeitsmappe "Quelldatei.xlsx" ist bereits geöffnet und der Code soll sich einer dritten Arbeitsmappe befinden, da du hier 2 xlsx-Dateien hochgeladen hast?

    Code:
    Sub Uebertragen()
        Dim wkbZ As Workbook
        Dim wkbQ As Workbook
        Dim wksKundeZ As Worksheet
        Dim wksKundeQ As Worksheet
        Set wkbZ = Workbooks.Open("G:\Mitarbeiter VRM\Mueller_Noss\Access\Hilfe\Zieldatei.xlsx")
        Set wkbQ = Workbooks("Quelldatei.xlsx")
        Application.ScreenUpdating = False
        With wkbZ
            For Each wksKundeZ In .Worksheets
                On Error Resume Next
                Set wksKundeQ = wkbQ.Worksheets(wksKundeZ.Name)
                If Err.Number <> 9 Then
                    wksKundeQ.Range("B3:I5").Copy
                    wksKundeZ.Range("B3").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=True
                End If
                On Error GoTo 0
            Next wksKundeZ
        End With
        Application.ScreenUpdating = True
    End Sub
    
    
    Bis später,
    Karin
     
    Beverly, 28. Oktober 2020
    #2
  3. MoSim Neuer User
    Hallo, vielen Dank für Deine Mühe. Sorry das ich erst jetzt antworte. Ich hatte früher keine Möglichkeit. Die Arbeitsmappe Quelldatei.xlsx ist bereits geöffnet und ich dachte der Code müsse dann in diese Datei. Der Code in der Quelldatei soll die Datei Zieldatei öffnen und dann einen Bereich im ersten Tabellenblatt der Quelldatei markieren, kopieren und dann in der Zieldatei das passende Tabellenblatt auswählen und dann den kopierten Bereich transponiert einfügen.

    Wahlweise könnte ich auch beide Dateien öffnen und die Programmierung müßte nur noch Tabellenblatt auswählen, Bereich markieren, kopieren zur Datei Zieldatei wechseln hier transponiert einfügen. Dann wieder zurück zur Quelldatei, nächstes Tabellenblatt usw. usw. VG

    Eine dritte Arbeitsmappe wird nic
     
  4. Beverly
    Beverly Erfahrener User

    Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen

    Hi,

    lade bitte das nächstemal die Mappe, in die der Code soll, als XLSM-Datei hoch, selbst wenn noch kein Code drin steht - nur dann ist es nämlich eindeutig, was genau du willst...

    Ändere diese Codezeile:

    Code:
        Set wkbQ = [B][COLOR=#ff0000]ThisWorkbook[/COLOR][/B]
    
    
    Bis später,
    Karin
     
    Beverly, 3. November 2020
    #4
Thema:

Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen

Die Seite wird geladen...
  1. Makro VBA: Kopieren aus Quelldatei nach Zieldatei über mehrere Tabellen - Similar Threads - Makro VBA Kopieren

  2. User Defined Functions (UDF) auch ohne VBA / Makro möglich ?

    in Microsoft Excel Hilfe
    User Defined Functions (UDF) auch ohne VBA / Makro möglich ?: Moin, Ich hab ne ganz einfache Frage, die sich wohl direkt mit Ja oder Nein beantworten läßt. Meine Tabelle ist 450 Zeilen hoch und 365 Spalten breit. *eek.gif* In jeder Zelle ist die gleiche...
  3. aktives Excel-Datenblatt per VBA-Makro nach Outlook kopieren

    in Microsoft Excel Hilfe
    aktives Excel-Datenblatt per VBA-Makro nach Outlook kopieren: Hallo, ich möchte eine aktive Excel-Datenblatt per VBA-Makro nach Outlook kopieren (Nachricht) und als Anhang versenden. Kann mir jemand mit dem Makro helfen? @ mumpel Danke Dank...
  4. Makro / VBA Hilfe Ausschneiden Kopieren und Löschen

    in Microsoft Excel Hilfe
    Makro / VBA Hilfe Ausschneiden Kopieren und Löschen: Hallo zusammen, ich habe ein Problem mit meinem Makro, dass folgendes erledigen soll: 1. Filter die Spalte E = Datum des Tabellenblatts "Selim" (alle nicht leeren Datensätze) 2. Markiere...
  5. Macro für Tabellenblatt mehrfach Kopie sowie Datumänderung

    in Microsoft Excel Hilfe
    Macro für Tabellenblatt mehrfach Kopie sowie Datumänderung: Hallo miteinander, seit Tagen suche ich eine Lösung! In der Exceldatei gibst es einen "Tagesplaner". Dieser Tagesplaner bzw Name soll ersetzt werden durch ein Datum wie zb "04.01.2016"....
  6. Grafik auf mehrere Arbeitsblätter kopieren

    in Microsoft Excel Hilfe
    Grafik auf mehrere Arbeitsblätter kopieren: Hallo zusammen, ich habe eine Excel Datei mit 9 Arbeitsblättern. Ich möchte auf dem ersten Arbeitsblatt ein Bild in Zelle J1 einfügen. Dieses Bild soll dann auf den Arbeitsblättern 2-7...
  7. VBA-Makro: Kalendereintrag kopieren?

    in Microsoft Outlook Hilfe
    VBA-Makro: Kalendereintrag kopieren?: Hallo! ich würde das Thema gerne wieder aufnehmen, denn ich stehe an fast dem selben Punkt der Vorkenntnisse (Pascal kann ich noch) und habe das gleiche Problem. Ich habe die Ordnerstruktur...
  8. VBA-Makro: Kalendereintrag kopieren?

    in Microsoft Outlook Hilfe
    VBA-Makro: Kalendereintrag kopieren?: Hallo, kennt jemand ein Makro, mit dem ich einen Kalendereintrag von meinem Kalender in unseren Gruppenkalender kopieren kann? Einige Kollegen schaffen es nicht, den Eintrag mit der Maus rüber...
Schlagworte: