VBA ListBox - 所选值返回空白
VBA ListBox - Selected Value is Returning a Blank
我有一个带有一些单选按钮和两个单列列表框的用户窗体。在某些情况下,我无法从第二个 ListBox 返回值。
如果用户 select 使用其中一个单选按钮,他们会从第一个列表框中获得一系列 select 的项目。一旦他们 select 来自第一个 ListBox,第二个 ListBox 就会填充项目。
如果它们 select 其他单选按钮,则两个列表框只会填充一个值“不适用”,我会立即 select 处理它。
这是我用来将两个 ListBox 设置为“不适用”的代码
ListBox_First.Clear
ListBox_Second.Clear
ListBox_First.List = Array("Not Applicable")
ListBox_First.Selected(0) = True
ListBox_Second.List = Array("Not Applicable")
ListBox_Second.Selected(0) = True
这是我获取值的代码 selected
Dim firstValue As String
Dim secondValue As String
firstValue = ListBox_First.Value
secondValue = ListBox_Second.Value
firstValue
可以,因为它等于“不适用”,但是 secondValue
等于“”。当您查看表单时,每个 ListBox 中的值看起来都是 selected,所以我不明白为什么它是空白的。我已经检查了 ListCount 属性,每个 ListBox 只有一项,所以它应该是正确的 selected。
如果我在第二个 ListBox 中使用鼠标手动 select“不适用”可以正常工作,但我试图避免用户在它是唯一值时不得不 select .
我不知道这是错误还是我的代码有问题。
我正在使用一个名为 WRQ Reflections 的产品。
通过添加setfocus命令识别该值。
firstValue = ListBox_First.Value
ListBox_Second.SetFocus
secondValue = ListBox_Second.Value
MS 表单注意事项 Value
属性
除了 Dy.Lees 有效答案之外,注意最好避免 .Value
并参考例如改为 ListBox2.List(0, 0)。
另外请注意,由于 MS 帮助参考 Value property MS Forms
- .Value 仅反映“当前 selected 行的 ►BoundColumn 中的值”和
- 值不能与多select 列表框一起使用
我有一个带有一些单选按钮和两个单列列表框的用户窗体。在某些情况下,我无法从第二个 ListBox 返回值。
如果用户 select 使用其中一个单选按钮,他们会从第一个列表框中获得一系列 select 的项目。一旦他们 select 来自第一个 ListBox,第二个 ListBox 就会填充项目。
如果它们 select 其他单选按钮,则两个列表框只会填充一个值“不适用”,我会立即 select 处理它。
这是我用来将两个 ListBox 设置为“不适用”的代码
ListBox_First.Clear
ListBox_Second.Clear
ListBox_First.List = Array("Not Applicable")
ListBox_First.Selected(0) = True
ListBox_Second.List = Array("Not Applicable")
ListBox_Second.Selected(0) = True
这是我获取值的代码 selected
Dim firstValue As String
Dim secondValue As String
firstValue = ListBox_First.Value
secondValue = ListBox_Second.Value
firstValue
可以,因为它等于“不适用”,但是 secondValue
等于“”。当您查看表单时,每个 ListBox 中的值看起来都是 selected,所以我不明白为什么它是空白的。我已经检查了 ListCount 属性,每个 ListBox 只有一项,所以它应该是正确的 selected。
如果我在第二个 ListBox 中使用鼠标手动 select“不适用”可以正常工作,但我试图避免用户在它是唯一值时不得不 select .
我不知道这是错误还是我的代码有问题。
我正在使用一个名为 WRQ Reflections 的产品。
通过添加setfocus命令识别该值。
firstValue = ListBox_First.Value
ListBox_Second.SetFocus
secondValue = ListBox_Second.Value
MS 表单注意事项 Value
属性
除了 Dy.Lees 有效答案之外,注意最好避免 .Value
并参考例如改为 ListBox2.List(0, 0)。
另外请注意,由于 MS 帮助参考 Value property MS Forms
- .Value 仅反映“当前 selected 行的 ►BoundColumn 中的值”和
- 值不能与多select 列表框一起使用