我在userform中有一个列表框。我使用SQL查询来提取数据,然后填充列表框。当我在SQL中查看查询时,它很好并在这些字段中显示文本。列表框显示了这些数字,4和5,我假设的是列名称或字段值?
它应该说"垃圾填埋场/ Wellfield"和" O2级别",因此它不是文本长度问题。这是所有测试数据。最后一列正确显示" Sparkplugs / Ignition System"
列表框有7列数据。
列表框填充代码:
lbx_SSM.Clear
Do Until XL_RSet.EOF = True
For i = 1 To 7
If i = 1 Then
lbx_SSM.AddItem (XL_RSet.Fields(columnName(i)))
Else
If Not (XL_RSet.Fields(columnName(i)) = "Null")
Then lbx_SSM.List(lbx_SSM.ListCount - 1, i - 1) =(XL_RSet.Fields(columnName(i)))
End If
Next i
XL_RSet.MoveNext
Loop
答案 0 :(得分:0)
我想通了,我不确定问题是什么,但使用它来填充列表框而不是上面的内容不会导致问题。我之前一直使用过第一个代码,因此它可能是Fields()问题或其他问题。见下文:
XL_RSet.Open
XL_RSet.MoveFirst
i = 0
With Me.lbx_SSM
.Clear
Do
.AddItem
.List(i, 0) = XL_RSet![ID]
.List(i, 1) = XL_RSet![Unit]
.List(i, 2) = XL_RSet![Begin Time] ***Etc for other columns
i = i + 1
XL_RSet.MoveNext
Loop Until XL_RSet.EOF
End With