Excel Tabs mit Tabellen Kopieren

  • Excel

Es gibt 4 Antworten in diesem Thema. Der letzte Beitrag () ist von Panter.

    Excel Tabs mit Tabellen Kopieren

    Hallo zusammen,

    Ich scheiterte aktuell an folgenden Sachverhalt in Excel/ VBA.

    Ich möchte in Excel drei Tabellenblätter aus einer großen Excel Datei in eine neue Datei kopieren und speichern. Problem ist, dass ein kopieren von Excel sheets nicht funktioniert wenn auf diesen Sheets Tabellen sind.
    Die Daten müssen in diesen Fall allerdings zwingend als Tabelle vorliegen, da ich sie in Power Query weiter verarbeite.

    Die Daten ändern sich dabei je nach gewählten Objekt zb. Gewählte Stadt. (Per VBA Schleife werden alle Objekte durch laufen).

    Alternativ zum kopieren der Sheets wäre auch folgendes Szenario denkbar.

    Die Datei wird als Kopie unter gewählten Objekt gespeichert und alle nicht benötigen Sheets werden gelöscht. In Anschluß wird die original Datei wieder geöffnet und eine Datei fürs nächste Filterobjekt erstellt.

    Ein kopieren der Rohdaten in eine neue Excel und die dortige Weitergabe in Power Query ist aus meiner Sicht keine Option. Da ich versuchten müsste die ganze Weiterverarbeitung dort (Sprache dort ist M) in VBA unterzubringen.

    Hoffe es war einigermaßen verständlich erklärt.

    Und hoffe jemand hat noch Ende gute Idee.

    Danke euch

    Zimbo
    Hallo

    Du schreibst ja, dass Du die Daten dann mit PowerQuery weiterverarbeiten willst.

    Kannst Du dann nicht direkt mit PowerQuery anfangen, also neue Excel Datei - Menuband Daten - Datenabrufen Aus Datei - Excel?

    Nachtrag: Ich habe ein gutes Viedeo zu PowerQuery gefunden. Da wird erklärt, wie eben verschiedene Tabellen verbunden werden: digicomp.ch/blog/2022/01/07/po…shzy06_2hJQ8aAtl1EALw_wcB

    Was ist eigentlich die Sprache M?

    LG Panter

    Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Panter“ ()

    Hallo

    Du könntest die Daten mit Inhalte einfügen Werte kopieren und dann eine inteligente Tabelle daraus machen. Wie erwähnt denke ich, dass das nicht der richtige Weg ist.
    Zeile 5 müsste natürlich angepasst werden...

    Visual Basic-Quellcode

    1. Dim x, y
    2. Dim wb As Workbook
    3. Dim Ws As Worksheet
    4. Sheets("Tabelle1").ListObjects("Tbl_X1").Range.Copy
    5. Set wb = Workbooks.Add
    6. Set Ws = wb.Sheets(1)
    7. Ws.Cells(1, 1).PasteSpecial Paste:=xlPasteValues
    8. x = Ws.Cells(Rows.Count, 1).End(xlUp).Row ' letzte Zeile
    9. y = Ws.Cells(1, Columns.Count).End(xlToLeft).Column ' letzte Spalte
    10. Ws.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(x, y)), , xlYes).Name = "Copy_TBL_X1"


    lg Panter

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Panter“ ()

    Hallo,
    Vielen Dank für deine Antworten.
    Vielleicht sollte ich die Datei wirklich anders aufsetzen und die Ursprungsdaten in einer Datei lassen und diese von dort in Power Query laden und ggf. Direkt dort filtern.

    M ist die Formelsprache in Power Query, die auch über VBA geändert werden kann. Aber da habe ich nur rudimentäre Grundlagen und würde wohl scheitern alles über Code zu machen;)

    @
    Hallo Zimbo

    Vielleicht wenn Du uns mitteilst, wie die Daten im Excel aussehen, und wie sie am Schluss aussehen sollten, könnten wir Dir ein paar Tipps geben.

    Ich könnte mir gut vorstellen, dass dann einfach das Powerquery aktualisiert wird, erst danach die Auswahl getätigt - evtl. über die Funktion Schnittmenge, und so ein schöner Report entsteht.

    LG