比较 ListBox 中的循环结果
Posted
技术标签:
【中文标题】比较 ListBox 中的循环结果【英文标题】:Compare results of loop in ListBox 【发布时间】:2017-11-27 22:01:24 【问题描述】:下午好,
我正在维护一个 Access 数据库,并且我在表单上有一个多选和多列列表框。我正在查询列表框以根据所有用户选择的行获取第三列(包含文本)中的值。代码如下:
Dim varItem As Variant
For Each varItem In Me!Lst_CPList.ItemsSelected
Debug.Print Lst_CPList.Column(2, varItem)
Next varItem
我可以在即时窗口中看到我得到了正确的结果。我需要做的是:
1 - 比较上述代码的结果(与列表框中选定的行一样多的结果)
2 - 确保结果都相同。如果不是,我将退出 sub 并提示用户在列表框的第三列中进行相同值的选择。
我希望这足够清楚,谢谢大家的帮助。
【问题讨论】:
【参考方案1】:如果一个差异就足以触发错误,这很简单。
Dim varItem As Variant
Dim strValue As String
Dim strFirst As String
strFirst = ""
For Each varItem In Me!Lst_CPList.ItemsSelected
strValue = Nz(Lst_CPList.Column(2, varItem), "")
Debug.Print strValue
' First item? Then store for comparison
If strFirst = "" Then
strFirst = strValue
' Not first item: compare with first one
Else
If strValue <> strFirst Then
MsgBox "Wrong pick!"
Exit Sub
End If
End If
Next varItem
【讨论】:
谢谢安德烈,非常有帮助。我在网上找不到某种指南来做到这一点,所以你很有帮助。解决方案效果很好。以上是关于比较 ListBox 中的循环结果的主要内容,如果未能解决你的问题,请参考以下文章
python tkinter 中 listbox绑定scrollbar实现自动循环滚动