vba - 使用vba选择列表框项目

标签 vba ms-access listbox

我的问题是能够使用 vba 选择列表框中的行。 我的程序循环遍历一个表并找到列表框的值,即一个整数/行号,并将它设置在一个变量中,同样用于列表框名称。

所以列表框名称 = 变量 LstName
ListBox 值 = strvalue 作为整数。

然后我想在列表框中选择该行,使其突出显示 我就是无法让它工作。如果我使用实际名称和 nemeric 值,它会完美地工作,但结合 me.LstName.selected(strValue) = True 会产生错误

最佳答案

列表框不是这样工作的。 LstName.Selected(iRow as Long) As Long 只接受数字,返回 -1 为真,0 为假。

如果你想在一个基于字符串的列表框中设置一个项目,你可以使用如下:

Public Sub ListboxSelectString(lstListbox As ListBox, strToSelect As String, Optional SelectDeselect As Boolean = True)
    Dim i As Integer
    For i = 0 To lstListbox.ListCount - 1
        If lstListbox.ItemData(i) = strToSelect Then
            lstListbox.Selected(i) = SelectDeselect
        End If
    Next i
End Sub

然后你可以使用ListboxSelectString Me.LstName, strValue来选择Me.LstName上的strValue

关于vba - 使用vba选择列表框项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46845690/

相关文章:

.net - ListBox 和 ListView 突出显示 .NET 4.0

excel - 在 MsgBox 中显示工作簿每张表的注释

ms-access - 如何获取MS Access中表的列名?

Vba代码在同一工作簿的不同工作表中打开多个文件

c# - ASP.NET Web 应用程序 - 自从从 mysql 切换到 access db 以来,我的数据库连接出现问题

java - 在java中通过ucanaccess执行INSERT INTO查询后,MS Access不会更新表

c# - BindingList<T> 如何知道选中的 Item?

C# 当我在列表框中选择一个项目时,我应该使用哪个事件在文本框中显示数据?

vba - Vba错误处理/仅int

excel - 在 Excel VBA 中将整数与货币相乘