vb编程出现了问题,希望大家帮忙啊。

来源:百度知道 编辑:UC知道 时间:2024/05/21 06:59:35
Private Sub Form_Load()

Dim sqlstr As String
Dim rs As Recordset
Dim i As Integer

sqlstr = "select 文件名 from 常用文件表" '09/06/22修改过
Set rs = ExecuteSQL(sqlstr)

rs.MoveFirst
For i = 0 To rs.RecordCount
List1.AddItem (rs.Fields("文件名"))
rs.MoveNext
Next i

End Sub
老是显示
eof或bof有一个是真,或者当前记录已被删除,所需的操作要求有一个当前记录。

要不加上rs.RecordCount>0 试试。
Private Sub Form_Load()

Dim sqlstr As String
Dim rs As Recordset
Dim i As Integer

sqlstr = "select 文件名 from 常用文件表" '09/06/22修改过
Set rs = ExecuteSQL(sqlstr)
'加上这段试试
If rs.RecordCount>0 then
rs.MoveFirst
Else
Exit Sub
End if

For i = 0 To rs.RecordCount
List1.AddItem (rs.Fields("文件名"))
rs.MoveNext
Next i

End

是不是少了一个判断语句:

Private Sub Form_Load()

Dim sqlstr As String
Dim rs As Recordset
Dim i As Integer

sqlstr = "select 文件名 from 常用文件表" '09/06/22修改过
Set rs = ExecuteSQL(sqlstr)
If rs.EOF = False Then
rs.MoveFirst
For i = 0 To rs.RecordCount
List1.AddItem (rs.Fields("文件名"))

rs.MoveNext
Next i
End if
End Sub

试试看行不行~!

设置指针为第一个记录就可以了,试试吧