Laufzeitfehler 1004 die Paste-Methode des Worksheet ist Fehlgeschlagen (der Versuch aus der Zwischenablage Einfügen)

(Excel-VBA 2007). Ich erhalte eine Fehlermeldung in code generiert eine makro - Excel-schrieb den code, also nicht warum es ausführen?

Etwas hintergrund:
In meinem VBA-Anwendung, die ich bin versucht zu kopieren ein Arbeitsblatt mit einer formatierten pivot-Tabelle und fügen Sie Sie in eine neue Arbeitsmappe, halten Sie die Formatierung, aber nicht links zur Quelle Daten. Ein einfaches "Paste" - enthält die Quell-Daten. Ein 'Inhalte Einfügen' mit den Werten und dann die Formate nicht über PivotTable-Formate.

Fand ich ein post http://blog.contextures.com/archives/2010/09/22/copy-pivot-table-format-and-values/ die erklärt, wie Sie manuell tun - in einfügen aus der Zwischenablage. Dies funktioniert, wenn manuell durchgeführt.

Ich ein makro aufgezeichnet und es generiert den folgenden code:

Sub PivotCopyPaste()
'
' PivotCopyPaste Macro
'

'  Aim:  Open a workbook with a pivot table report on the first sheet.
'  Create a new workbook and paste the pivot table in, without
'  pivot source data, but keeping pivot formatting

Workbooks.Open Filename:="\\MyServer\MyFolder\PivotReport.xls"
Cells.Select
Selection.Copy
Workbooks.Add
Cells.Select
'I think the line below forces the paste from the Clipboard
Application.CutCopyMode = False
ActiveSheet.Paste   'ERRORS on this line

End Sub

Wenn ich dieses 'wie es ist', bekomme ich eine Fehlermeldung: "Laufzeitfehler 1004: die Paste-Methode des Worksheet class failed" auf der ActiveSheet.Fügen Sie Linie.

Wenn ich die Anwendung.CutCopyMode = False Linie, wird das makro ausgeführt, aber es fügt die Quelle der Daten (d.h. es ist immer noch ein aktiver PivotTable -) - nicht, was ich will.

Habe ich gefunden, viele Referenzen zu diesem Fehler, einschließlich http://www.mrexcel.com/forum/excel-questions/387000-runtime-error-1004-a.html.

Sie schlagen vor, die Zwischenablage kann auch leer sein. Ich habe den clipboard-Bereich sichtbar, in Excel, und es zeigt, etwas ist da.

Sie empfehlen, explizite Verweise auf das alte und neue Blätter/Bereiche, so dass auf Sie verwiesen werden können, die durch variable anstatt auf die richtige eine als 'Aktiv' - ich habe versucht, und es nicht viel Unterschied (wurde nur der text der Fehlermeldung " die Methode 'Paste' für das Objekt '_Worksheet' ist fehlgeschlagen".

Ist es möglich, das zu tun, was ich versuche zu tun? Wenn ja, wie? Alle Hilfe dankbar angenommen.

{Follow-up: auf dem gleichen blog, Debra bietet einige code zum einfügen in die Daten/Formate für eine pivot-Tabelle: ich kann nicht den link hier einfügen, nicht genügend Ruf noch - aber ich habe den link in meinem Kommentar zu @Rory unten.

Dies ermöglicht es mir, fügen Sie jedes pivot-Tabelle individuell, aber es gibt andere Elemente, die auf jeden Bericht, jedes mal anders, wie Firmenlogo (Optional) versteckte Zeilen mit der pivot-Tabelle filtern, Titeln etc. Ich war wirklich nach einer 'paste, alles, was auf dem Blatt' Lösung, um meinen code einfach! }

  • Willst du ein pastespecial Werte?
  • Wenn Sie Lesen Sie die Kommentare unter diesem post, sehen Sie Debra hat geschrieben code zu tun, was Sie wollen.
  • Nein, denn das verliert die Formatierung. Und wenn ich dann verwenden PasteSpecial-Formate, es bringt nur über Formate für einzelne Zellen, nicht die Formate aus der PivotTable-Stil. Ich habe auch ein Bild (Firmenlogo), die ich einfügen wollen, über - dies scheint nicht zu kommen mit PasteSpecial.
  • Danke für den Zeiger, Rory, ich nehme einen Blick auf Debra ' s Seite jetzt - sorry ich bin nicht vor Ort, dass, bevor Sie... erhalten zurück zu Ihnen, wenn ich es getestet habe aus.
  • Hi @Rory danke für die pointer - Debra s Lösung ermöglicht es mir, fügen Sie die Werte und Pivot-Format für jede pivot-Tabelle individuell. Dies ist ein Fortschritt. Allerdings habe ich andere Elemente auf der Seite (unterschiedlich für jeden Bericht) und manchmal möchten Nutzer ausblenden der Zeilen zeigen die Filter etc.... also der code wird komplizierter. Ich war nach 'paste' - Lösung, aber vielleicht gibt es nicht so etwas! Ich werde ein park-problem für jetzt.. bin neu Beitrag - verlasse ich dieses 'wie es ist' oder als 'beantwortet'?
  • Hi @SiddharthRout ich bin neu in posting so nicht setzen Ihren Namen in meine Antwort - mein Kommentar " Nein, denn das verliert Formatierung...' wurde oben für Sie! Ich habe ein paar mehr Infos jetzt, aber nicht 'vollständige' Lösung.
  • Keine sorgen, jj. Siehe Rorys Antwort. Sie sind in guten Händen 🙂

InformationsquelleAutor jj_searcher | 2014-07-17
Schreibe einen Kommentar