Vba 如何区分列表框中显示的文本与实际值。?
我有一个带有多选选项的列表框。我使用Vba 如何区分列表框中显示的文本与实际值。?,vba,Vba,我有一个带有多选选项的列表框。我使用addItem函数填充它。 我在谷歌上找不到任何关于这方面的文章,但我需要区分列表框中显示的文本和实际值 例如: shown hiddenvalue -------- ----------- monday A1 tuesday A2 wednesday C7 等等 可能吗?如何访问这些值?对于VBA列表框,您要: 声明两列(ColumnCount=2) 将第二个设置为隐藏:ColumnWidths=“;0” 将第二列声明为绑定(
addItem
函数填充它。
我在谷歌上找不到任何关于这方面的文章,但我需要区分列表框中显示的文本和实际值
例如:
shown hiddenvalue
-------- -----------
monday A1
tuesday A2
wednesday C7
等等
可能吗?如何访问这些值?对于VBA列表框,您要:
ColumnCount=2
)ColumnWidths=“;0”
BoundColumn=2
),将第一列声明为文本(TextColumn=1
)Private Sub AddWithID(Text As String, ID As String)
ListBox1.AddItem Text
ListBox1.List(ListBox1.ListCount - 1, 1) = ID
End Sub
.Value
或.Text
查找所选值/文本
对于多选列表框,您可以使用
.List(i,0)
作为文本,使用.List(i,1)
作为值,其中i
作为行的索引。另一种方式。。。使用集合
Private HiddenValue As New Collection
Private Sub CommandButton1_Click()
AddItems "monday", "A1"
AddItems "tuesday", "A2"
AddItems "wednesday", "C7"
End Sub
Private Sub CommandButton2_Click()
MsgBox "Shown Value :" & ListBox1.List(ListBox1.ListIndex) & vbNewLine & _
"Hidden Value " & HiddenValue(ListBox1.ListIndex + 1)
End Sub
Private Sub AddItems(Text As String, ID As String)
ListBox1.AddItem Text
HiddenValue.Add ID
End Sub
快照