使用Pastespecial和sourcetheme时的运行时错误1004

时间:2018-02-19 10:04:28

标签: excel vba excel-vba

我正在尝试使用pastespecial将复制的数据粘贴到我的工作表中。它工作正常,但如果我想通过添加保持现有格式 粘贴:= xlPasteAllUsingSourceTheme我得到了

  

运行时错误1004

。有人可以帮忙吗?这是一个摘录:

Sub Zielerreichung_TPG124_Aktualisieren()
        Dim status
        Dim status2
        Dim Anz_Zeilen As Integer
        Dim Fehlerstatus As Boolean
        Dim Bereich As Range
        Dim ReportDatei As Workbook

    Dim RohDatei As Workbook
    Dim Pfad As String

    'Beschleunigungen für Operationen
    status = Application.Calculation
    status2 = Application.ScreenUpdating
    Application.Calculation = xlManual      'Automatische Berechung aus
    Application.ScreenUpdating = False      'Screenupdating aus
    Fehlerstatus = Application.DisplayAlerts

    ActiveSheet.Rows(10 & ":" & ActiveSheet.Rows.Count).Delete

    Set ReportDatei = ActiveWorkbook
    Pfad = ReportDatei.Path

    'Öffne Rohdatei -> Achtung: Argument True (Sonst keine CSV Auswertung möglich)
    Workbooks.Open (Pfad & "\ZETPG124.xlsm")
    Set RohDatei = ActiveWorkbook

    'Doppelte & Irrelevante Zeilen löschen
    Rows("1:9").Delete Shift:=xlUp

    'Daten kopieren
    Anz_Zeilen = ActiveSheet.Cells(Rows.Count, 3).End(xlUp).Row

    Set Bereich = Range(Cells(1, 1), Cells(Anz_Zeilen, 30))
    Bereich.Select
    Bereich.Copy

    'Rohdatei schließen
    Application.DisplayAlerts = False
    RohDatei.Close
    Application.DisplayAlerts = Fehlerstatus

    'Warten vor dem Einfügen
    Application.Wait (Now + TimeValue("0:00:01"))

    'Werte einfügen;
    Range("A10").PasteSpecial Paste:=xlPasteAllUsingSourceTheme

1 个答案:

答案 0 :(得分:1)

range.PasteSpecial方法使用Paste:= xlPasteAllUsingSourceTheme选项时,在完成复制和粘贴操作之前无法关闭源。

只需移动以下代码行

即可
Range("A10").PasteSpecial Paste:=xlPasteAllUsingSourceTheme

......在此部分之上,

'Rohdatei schließen
Application.DisplayAlerts = False
RohDatei.Close
Application.DisplayAlerts = Fehlerstatus

...确保您提供正确的父工作簿/工作表父级参考。