2017-08-25 291 views
0

我有一個工作簿:「檢查日誌記錄」。從我想要複製列「A」的地方粘貼到工作簿中:「單元測試模板」。在「A」欄中。Excel宏將副本從一個工作簿複製到另一個工作簿

我一直在嘗試使用下面的代碼:雖然每次我試圖運行宏時,我得到一個消息說

Private Sub CopyColumnsButton_Click() 

Dim sourceColumn As Range, targetColumn As Range 

Set sourceColumn = Workbooks("Check for logging.xlsm").Worksheets("Parameters").Columns("A") 
Set targetColumn = Workbooks("Unit test template.xlsm").Worksheets("Sheet1").Columns("A") 

sourceColumn.Copy Destination:=targetColumn 

End Sub 

:「運行時錯誤‘9’:下標越界」然後這條線突出顯示:

Set targetColumn = Workbooks("Unit test template.xlsm").Worksheets("Sheet1").Columns("A") 

當我嘗試運行宏時,兩個工作簿都打開。

我會非常心存感激,如果有人可以幫助

+0

你的代碼「在我的機器上工作」(當然有測試工作簿)。你有什麼特別的設置在Excel中? – JensS

回答

1

「運行時錯誤‘9’:下標超出範圍」。

它大多無法找到工作簿中兩個「單元測試template.xlsm」或「Sheet1」中的一個。

工作簿的問題..
1.檢查文件名是 「單元測試template.xls X」(不.xls的
2.檢查文件「單元測試template.xlsm「在與」檢查logging.xlsm「相同的會話中打開(如果Ctrl + Tab不會將您帶到下一個工作簿,這意味着它們在兩個不同的Excel應用程序會話中打開)
3。文件名稍微偏離。

工作表的問題..
1.檢查 「工作表Sheet1」 已被刪除。所以它可能實際上是「Sheet2」等...

+0

謝謝,這是因爲這兩本工作簿不在同一會話中。 –

相關問題