2010-04-28 28 views
2

所以我在excel工作表中有一些namedRanges。我想用這些在同一個WorkBook中的用戶窗體上填寫組合框。在excel工作表中使用命名區域來傳播列表框

我曾嘗試:給予

cboMember.DataSource = Globals.Sheet1.MemberRange.Value 

沒有錯誤,但該組合是空白。有人有任何想法嗎?

我想在VS2008的excel 2003工作簿上使用VSTO。

回答

2

cboMember.RowSource = 「NamedRange」

你不將它設置爲一個對象。將其設置爲一個字符串。 Excel計算出其餘的。

2

這是一個猜測,但我相信在VBA中,您可以像Range("MyRangeName")那樣獲取指定範圍,因此您可以嘗試相當於此。

Excel中的一些範圍對於工作表是局部的,其中一些對於工作簿是全局的。如果它們位於工作表的本地,則需要以工作表名稱作爲前綴,例如Range("Sheet1!MyRangeName")

+0

謝謝羅裏 Globals.Sheet1.MemberRange.Value確實返回數組中的正確值,但我無法讓我的組合框綁定到它。我想我將不得不遍歷這個數組來分別賦值給組合框,就像 cboMember.additem Globals.Sheet1.MemberRange.Value [i] 但是我想那裏一定要有更簡單的方法。 – Dowlers 2010-04-29 20:37:39

+0

我認爲你是對的,有一個更簡單的方法。如何手動綁定組合框,然後查看它在使用VBA /調試器進行檢查時的外觀? – Rory 2010-05-01 21:34:12

相關問題