我正在處理一個項目,該項目要求我根據數組中某個位置的值選擇工作表。我用值填充了desArr()
(String類型),desArr(0)
包含了我想要引用的表的名稱。爲了避免用戶更改標籤名稱和弄亂代碼的問題,我試圖引用工作表的CodeName。使用數組引用名稱屬性
通常情況下,我能做到這一點:其中被列在VB編輯器的(Name)
屬性指定Import
ThisWorkbook.Worksheets(Import.Name)
。但是,現在我想要根據desArr(0)
的值輸入輸入名稱。我試圖做以下但無濟於事:
ThisWorkbook.Worksheets(desArr(0).Name)
ThisWorkbook.Worksheets(desArr(0) & ".Name")
有沒有人有任何想法如何解決這個問題?
ThisWorkbook.Worksheets(desArr(0))? – dee
感謝您的回覆!但是,這隻會引用工作表的標籤名稱。因此,如果工作簿中的某個選項卡是「導出」並且desArr(0)包含「導出」,那麼它將起作用。我想要實現的是調用工作表的名稱屬性,該屬性可能與選項卡名稱相同也可能不同。有任何想法嗎? – user3715632
也許收集工作表對象而不是他們的名字會更容易?如果在數組中有工作表對象而不是名稱,則可以調用desArr(0).Name請注意,如果您已適當設置工作表,則不需要「ThisWorkbook.WorkSheets」部分。 – CodeJockey