2012-08-09 64 views
0

我現在只用VBA工作了大約兩週,所以如果我用錯誤的名稱調用事件,對不起。無論如何,我一直在用組合框遇到麻煩。箱子裏裝滿了物品,我可以看到它們,滾動它們並點擊它們。然而,當我按一下按鈕我有檢查組合框的值,不管什麼項目我在它選擇的價值永遠是爲null,由VBA - Combobox值始終爲空

If IsNull(ToolReportBox.Value) = True Then 
    MsgBox "Please Enter a tool" 
    Exit Sub 
End If 

抓到如果我不去有這樣的檢查在那裏,並試圖將值分配給一個刺痛如

Dim toolName_str As String 
    toolName_str = ToolReportBox.Value 

的程序後,它引發錯誤「運行時錯誤‘94’:無效的使用Null」

人除了讓它成爲一個列表框之外還有其他建議嗎 在此先感謝。

回答

2

您需要確保在Data選項卡中爲包含數據的列設置了Bound Column屬性。例如,如果將它設置爲1,它將查看RowSource並從列出的第一列中獲取值。確保列中有數據。

+0

我有6個是沒有必要的其他組合框,但這正是問題。感謝您的快速回復,它完美運作 – 2012-08-09 18:56:12

0

檢查組合框中的值 - forms!frmName!ToolReportBox.column(0)(然後增加到1,2,3組合框中的許多列) - 這是爲了防止您看到的實際上不是返回的值。

這通常發生在組合框中性能ListWidth具有零有