使用 VBA 在列表框中保存所选项目的值

save value of selected item in listbox with VBA

我有一个让我发疯的问题。 我正在使用 Access 在 VBA 脚本中工作,我需要将列表框的值保存在变量中。 目前只能保存项目列表顺序(从 0 开始),但我想保存突出显示的行值。 我怎么能达到这个? 太感谢了, 问候, 里卡多

您将需要循环获取所选项目。

Dim item As Variant

For Each item In YourListBox.ItemsSelected
    MsgBox YourListBox.ItemData(item)
Next

将所选项目存储在数组中:

Dim arr() As Variant, item As Variant

With YourListBox

    ReDim arr(.ItemsSelected.Count - 1)
    
    For Each item In .ItemsSelected
        arr(item - 1) = .ItemData(item)
    Next
    
End With

您还可以使用 Join 函数展平数组。

Dim s As String
s = Join(arr, ",") 

Debug.Print s