任何人都可以帮我一个Do while Not循环。 我是编程新手:
我需要检查并打印一个列表,并将其限制为5个名称。
Do While Not rsP.EOF And iCount > 5
sLT = sLT & rsP![Name] & vbNewLine
iCount = iCount + 1
rsP.MoveNext
Loop
If rsP.RecordCount > 5 Then
sLT = sLT & "..."
End If
现在它不打印列表,如果我拿出iCount> 5,它显示,但我需要将它限制为最多只显示5个名字?我应该将iCount更改为什么? 感谢
答案 0 :(得分:3)
假设iCount
在循环外为零:iCount > 5
最初为假,因此循环不会运行。
只需更改为:
Do While Not rsP.EOF And iCount < 5
答案 1 :(得分:0)
放弃使用否定逻辑:
Do Until rsP.EOF Or iCount >= 5
sLT = sLT & rsP![Name] & vbNewLine
iCount = iCount + 1
rsP.MoveNext
Loop
答案 2 :(得分:0)
问题是尝试在同一语句中评估记录集EOF和循环计数。尝试循环记录集,并在打印所需数量的记录时退出循环。如果您的记录少于5条,则Do While语句将评估为False,并且将退出循环。
Do While Not rsP.EOF
sLT = sLT & rsP![Name] & vbNewLine
iCount = iCount + 1
If iCount >= 5 Then
Exit Do
End If
rsP.MoveNext
Loop