这是我的代码
Dim Reloc, RelocPrev1, RelocPrev2 As String
Dim Blk, Blk2, Lt, Lt2, PrevDate As String
Dim LotComp, BlockComp As Integer
Dim DB As Database
Dim RS As Recordset
Private Sub SearchBtn_Click()
Reloc = Me.RArea.Value
Set DB = CurrentDb()
Set RS = DB.OpenRecordset(Reloc, dbOpenDynaset)
Blk = RS!Block
Lt = RS!Lot
Blk2 = Me.BlockTxt
Lt2 = Me.LotTxt
BlockComp = StrComp(Blk, Blk2, 1)
LotComp = StrComp(Lt, Lt2, 1)
RS.MoveFirst
Do Until BlockComp = LotComp
RS.MoveNext
Loop
Call RetrieveData
End Sub
RS!Block和RS!Lot可以正常工作,只有我尝试过的RS.Movenext和RS.Edit不起作用。我的表中填充了50多个行。可以很好地将表中的第一项拉出,而我无法使用RS.MoveNext移至下一行
有什么想法可以使这项工作吗?
您显然希望只有1条记录才能符合条件。最好将过滤条件应用于记录集SQL,以便仅提取所需的记录,然后测试记录集是否为空。
要转到符合条件的单个记录,而不是循环记录集,请使用FindFirst和NoMatch。
RS.FindFirst "Block='" & Blk2 & "' AND Lot='" & Lt2 & "'"
If Not RS.NoMatch Then
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句