2016-05-12 62 views
0

我用VBA來複制一個表的內容並粘貼到另一臺。我使用的代碼是:運行時錯誤1004,無法完成操作,

Sub Get_Original_OutPutDataTable() 
    Application.DisplayAlerts = False 
    Worksheets("Input&Map").Activate 
    Range("InitialMap").Select 
    Selection.Delete 
    Worksheets("OutPutDataTable").Activate 
    Range("OutPutDataTable").Select 
    Selection.Copy 
    Worksheets("Input&Map").Activate 
    Range("InitialMap").Select 
    ActiveSheet.Paste 
    Application.CutCopyMode = False 
    Application.DisplayAlerts = True 
End Sub 

兩個"InitialMap""OutPutDataTable"是由Power查詢創建兩個表。

有時候,上述做工精細的代碼。不過,如果我刷新"InitialMap"第一,我會遇到錯誤。

enter image description here

或者其他錯誤 enter image description here

如果我碰上了第二個錯誤,內容將被粘貼到下一行。例如,如果從小區A4 "InitialMap"開始(第4行中包含頭,表的內容從5行開始),內容將被粘貼到單元格A6,這樣 enter image description here 任何人都知道這是爲什麼?

感謝

回答

1

我會作爲一個普通的Excel表,不使用電源查詢創建替換您InitialMap表。

Excel試圖防止您編輯源自Power Query的表,因爲如果用戶刷新PQ或數據,您的更新將被清除。

+0

感謝。我想你是對的。我會使用替代解決方案,而不是將數據從一個表複製到另一個表中。 – NewGuyComesIn