[英]Activating Excel Workbook/Sheet using cell reference as name of Workbook and Worksheet
這是我的代碼。
我在Workbooks(FileName).Activate
行上遇到下標錯誤。
Sub GoToRoomSchedule()
'
' GoToRoomSchedule Macro
' Set up Workbook as a reference to Cell J9 contents (MonthYear based on calendar selection)
' Set up Worksheet as a reference to Cell H4 contents (Day of month based on calendar selection)
Dim WBook As String
Dim FileName As String
FileName = Range("J4")
WBook = FileName
Workbooks(FileName).Activate
Dim WSheet As String
Dim SheetName As String
SheetName = Range("H4")
WSheet = SheetName
Sheets(SheetName).Select
End Sub
這里可能發生幾件事。
在我的測試中都給出了錯誤
運行時錯誤“ 9”:下標超出范圍
首先,在您的一條評論中,您說您將月份和年份從其他兩個單元格連接到J4中,例如,如果給出的是November2017 ,則將出現上面的錯誤,因為它正在尋找文件名。 但是,如果J4提供November11.xlsx,則它將查找該文件。
其次,如果J4提供November2017.xlsx,但此文件尚未打開,則還將顯示上述錯誤。
我有同樣的問題。
將工作簿(FileName).Activate更改為工作簿(FileName.value).Activate
您必須提供.value方法,因為您要引用的是單元格的值而不是單元格的目的地。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.