0

我现在只使用 VBA 大约两个星期,所以如果我用错误的名称称呼事物,对不起。无论如何,我一直在使用组合框时遇到问题。盒子里装满了物品,我可以看到它们,滚动浏览它们并单击它们。但是,当我单击检查组合框值的按钮时,无论我在其中选择了什么项目,该值始终为 null 并被

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”

除了使它成为一个列表框之外,还有其他人有什么建议吗?提前致谢。

4

2 回答 2

2

您需要确保在“数据”选项卡中为包含数据的列设置了“绑定列”属性。例如,如果您将其设置为 1,它将查看 RowSource 并从那里列出的第一列中获取值。确保该列中有数据。

于 2012-08-09T18:49:21.270 回答
0

检查组合框中的值 - forms!frmName!ToolReportBox.column(0)(然后增加到 1,2,3,但是组合框中有很多列) - 这是以防万一你看到的实际上不是返回的值。

这通常发生在ListWidth组合框中的属性为零时

于 2012-08-09T18:49:36.933 回答