2017-06-03 146 views
2

我有2個工作簿test1(有3張)和測試(有1張)。將一個工作簿的工作表的名稱添加到另一個工作簿的組合框中

測試我有一個名爲ComboBox1。我的組合框必須從工作簿test1的在這個ComboBox1添加紙張的名稱。

我寫了下面的代碼

Sub Workbook_open() 

Dim sht As Worksheet 

Set wkbSource = Workbooks.Open("test1.xls") 

For Each sht In wkbSource.Worksheets 

ActiveWorkbook.Worksheets(1).ComboBox1.AddItem sht.Name 

Next sht 

End Sub 

這是給我一個錯誤

錯誤:對象不支持就行此屬性或方法 ActiveWorkbook.Worksheets(1).ComboBox1 .AddItem sht.Name

我該如何解決?

回答

3

由於您使用ActiveWorkbook而出現此錯誤。打開"test1.xls"後,它變爲活動狀態,因此線路ActiveWorkbook.Worksheets(1).ComboBox1.AddItem sht.Name因無法找到組合框而失敗。

ThisWorkbook

ThisWorkbook.Worksheets(1).ComboBox1.AddItem sht.Name 
+0

是perfect.Thanks :) 更換ActiveWorkbook,如果我不想打開工作簿什麼,只是想設置的路徑? – user3126632

+0

要獲取表單名稱,您必須打開它。否則使用ADODB從封閉的工作簿中獲取表名 –

相關問題