1
雖然這看起來很基本,但我一直在嘗試在我的宏中的工作簿中選擇某個工作表中的某個單元格時收到錯誤消息。有人知道爲什麼這不起作用嗎?我收到錯誤消息運行時錯誤'1004'。 牀單名稱是「工作表Sheet1」,我的代碼如下:VBA:引用活動工作簿中的工作表
Application.ActiveWorkbook.Worksheets("Sheet1").Range("N2").Select
雖然這看起來很基本,但我一直在嘗試在我的宏中的工作簿中選擇某個工作表中的某個單元格時收到錯誤消息。有人知道爲什麼這不起作用嗎?我收到錯誤消息運行時錯誤'1004'。 牀單名稱是「工作表Sheet1」,我的代碼如下:VBA:引用活動工作簿中的工作表
Application.ActiveWorkbook.Worksheets("Sheet1").Range("N2").Select
這是不好的做法,使用ActiveWorkbook
當你不需要。將工作簿和工作表設置爲可以調用的實際變量總是更好。我認爲你的代碼正在激活另一個工作簿,然後試圖在工作表中選擇一個找不到的範圍。 。
Sub TryThis()
Dim wbk As Workbook
Dim ws As Worksheet
Set wbk = Workbooks("myWorkbook.xlsm")
Set ws = wbk.Worksheets("Sheet1")
'Now when we say "ws." it is actually "Workbooks("myWorkbook.xlsm").Worksheets("Sheet1")."
'This is okay to start with but it's better to work with the cells directly
ws.Select
Range("N2").Select
Selection = "myText"
'This is much faster and you won't have to worry about what is currently selected
ws.Range("N2") = "myText"
End Sub
@ YowE3K好點!更新。 – BerticusMaximus
選擇第一片'表( 「工作表Sheet」)Select' – user1274820
'Application.Goto(ActiveWorkbook.Sheets( 「工作表Sheet」)範圍( 「N2」))' HTTPS://支持。 microsoft.com/zh-cn/help/291308/how-to-select-cells-ranges-by-using-visual-basic-procedures-in-excel – luke
你的代碼還在做什麼?你能發佈整件事嗎?在此之前可能會發生一些事情,這會給你帶來問題。那麼這將是很好的審查[如何避免使用選擇](https://stackoverflow.com/questions/10714251/how-to-avoid-using-select-in-excel-vba)。 – BerticusMaximus