VBA - Datenquelle einer "Tabelle" (externe CSV) automatisch ändern

  • Excel

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von MemoAnMichSelbst.

    VBA - Datenquelle einer "Tabelle" (externe CSV) automatisch ändern

    Moin,

    vorab, ich sag es immer mal wieder... ich bin nicht sonderlich der Held in Excel.
    Nun habe ich eine Anforderung, welche ich per VBA umsetzen soll.
    Ausgangspunkt:
    Es gibt eine xlsx(dann wohl xlsm) Datei bestehend aus einer Pivottabelle, welche wiederum als Datenquelle eine "Tabelle" eines anderen Blattes hat. Also diese "als Tabelle formatieren"-Tabelle.
    Nun soll diese Tabelle per Makro mit Daten aus einer CSV-Datei NEU befüllt werden.
    Nun ist die Frage, kann man das gescheit automatisieren?

    Ich denke vom Vorgehen müsste ich
    - die erste Zeile ermitteln
    - die letzte Zeile ermitteln
    - alle Zeilen aus der "Tabelle" markieren
    - die markierten Zeilen löschen
    - die Daten der CSV-Datei "importieren"!? (geht sowas direkt in eine "Tabelle" oder nur in ein Arbeitsblatt?)
    - Die Pivot-Tabelle refreshen


    Denke ich richtig oder zu kompliziert?
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D
    Es gibt glaub eine Funktion ClearContents für Tables.

    Und für solche Tables gibts doch immer eine Datasource auf einem Arbeitsblatt oder nicht ? Importier die CSV dort rein?
    Versuch das Ganze manuell und zeichne es mit dem Makro Recorder mal auf.

    LG
    Das ist meine Signatur und sie wird wunderbar sein!
    Hi,

    das mit dem Aufzeichnen war mein erster Ansatz.
    Daher ja auch der gedachte Ablauf.

    Dass es Clear Tables gibt, wusste ich nicht.
    Der Datasource einer solchen Tabelle muss sich laut Excel auf der selben Tabelle befinden.
    Die Idee mit der Tabelle kam mir deshalb, weil ich dann in der Pivot-Tabelle nicht immer die Länge der Tabelle abfragen muss.
    Da ich die CSV-Daten aber eh immer importieren muss, scheint es so, als ob ich auch einfach die Länge einer CSV-Datei auslesen könnte und diese an die Pivot übergeben kann.

    Also im Grunde nur eine neue Tabellen-Länge ins Makro aufnehmen.

    Ich glaube mittlerweile das ist der sinnvollere Weg.
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    Es war einmal ein kleiner Bär... der wollte eine Geschichte hörn... Da erzählte ihm seine Mutti:
    ... Nun solltest es selber wissen. :'D