ich bearbeite aktuell eine Exceldatei in welcher im Tabellenblatt 1 ("SAP_Grundlage") die SAP-Grundlage über das Excel Add-In aktualisiert und innerhalb der Liste gespeichert wird. Da dies öfters geschieht, werden über mein Makro zuerst im 2. Tabellenblatt ("Daten") die alten Daten gelöscht und im Anschluss mit den neuen Daten aus der "SAP_Grundlage" ersetzt. Anhand dem "Daten" Tabellenblatt wird im Nachgang an die über das Makro ausgeführten Rechnungen eine Pivot-Tabelle in einem neuen Tabellenblatt "Pivotbearbeitet" aktualisiert. --> Soviel zur groben Funktionsweise :)
Da das Makro nicht allein von mir, sondern auch von Kollegen benutzt werden soll, habe ich auf dem Tabellenblatt "Pivotbearbeitet" zwei Buttons mit einer Makroverknüpfung erstellt. Ein Button aktualisiert die Pivot, der andere führt das oben beschriebene Makro aus.
Das Makro funktioniert über die Vorgehensweise "Entwicklungstools" "Makros" und anschließend den "Ausführen" Button in der Menüleiste einwandfrei. Allerdings wird mir der folgende Fehler über den Button angezeigt:
"Laufzeitfehler "1004": Wir können diese Änderungen an den ausgewählten Zellen nicht vornehmen, da sie sich auf eine PivotTable auswirken. Verwenden Sie die Feldliste, um den Bericht zu ändern. Wenn Sie Zellen einfügen oder löschen möchten, verschieben Sie die PivotTable, und versuchen Sie es dann erneut.
Im VBA-Editor wird mir folgendes als Fehler angezeigt:
Range("A3").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.ClearContents
Sheets("SAP_Grundlage").Select
Range("A3").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Daten").Select
Range("A3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("B2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "Produkt"
Range("O3").Select
Die "Fett-Markierung" stellt hier das Problem dar. Wichtig ist das lediglich das "Daten" Tabellenblatt geleert wird und lediglich die Überschriften vorhanden bleiben, sodass die neu eingefügten Daten aus dem Tabellenblatt "SAP_Grundlagen" als Bezug für die Pivot genommen werden können. Wie stelle ich hier im Code den Bezug so her, dass bei jeder neuausführung des Makros die Daten lediglich aus dem "Daten" Tabellenblatt gelöscht werden und dies über den Button im anderen Tabellenblatt "Pivotbearbeitet" ausgeführt werden kann?
Danke vorab für eure Hilfe - ich hoffe ihr könnt mir folgen! :)
LG
Lars