【发布时间】:2016-02-19 18:00:43
【问题描述】:
我有一个包含多个列表框的表单,所有工作都很好,除了 1!这是唯一一个源为数字数据类型的列表框。我知道这无关紧要,但我看到的是对于这个列表框 only,返回的变体始终为 1,我不明白为什么其他(数据类型文本)可以正常工作而这个没有。我的所有 Google 搜索和 MSN 搜索以及 StackOverflow 上的搜索都没有帮助解决我的具体问题,尽管关于 ListBoxes 的内容很多。请帮忙!
编辑:抱歉@Mat's Mug...我希望这不是必需的,因为所有检查都需要很长时间,但这是要点。
For Each ctl In Form.Controls
With ctl
Select Case .ControlType
Case acListBox
If .Visible = True Then
.SetFocus
ItemCount = .ItemsSelected.Count
If .ItemsSelected.Count > 0 Then
For Each varItm In .ItemsSelected
If .Name = "lstRating" Then
sWhereClause = sWhereClause & "ThisRating=" & .ItemData(varItem) & " Or ThatRating = " & .ItemData(varItem)
Else
sWhereClause = sWhereClause & Mid(.Name, 4, Len(.Name)) & " = """ & .ItemData(varItm) & """"
End If
Next varItm
End If
End If
End Select
End With
Next ctl
注意:当 .Name = "lstRating" 为 True 时,无论选择什么,varItem 返回的行都是 1。列表框以 0.5 的增量填充从 1 到 5 的值。
【问题讨论】:
-
向我们展示一些代码可能会帮助我们在这里为您提供帮助...
-
您在使用什么应用程序?
-
我正在使用 MS Access。对不起,糟糕的代码输入......论坛不允许我正确地做......我试过了!
-
感谢@Ken White 的编辑! 咧嘴