我想在下面的代码找到first null值。我可以使用选择的位置,但它会删除非空值。我想保留整个记录集,这样我就可以使用rs.AbsolutePosition向用户报告哪一行是空的。我基本上已经设置它来将用户在临时表中输入的信息与另一个表进行比较。如果匹配的字符串在那里出现,否则在记录集上应该为空。VBA访问 - FindFirst空值
strSQL = "SELECT Tbl_Temp.ID, Tbl_List.String FROM Tbl_Temp LEFT JOIN Tbl_List ON Tbl_Temp.string = Tbl_List.string"
Set rs = CurrentDb.OpenRecordset(strSQL, dbOpenDynaset)
strIsN = "IsNull(string)"
rs.FindFirst strIsN
If rs.NoMatch Then
MsgBox "no null values"
Do While Not rs.NoMatch
MsgBox "Found null" & rs.AbsolutePosition
rs.FindNext strIsN
Loop
rs.FindNext strIsN
End If
它现在基本上什么也没做。甚至不会触发错误或不匹配。我究竟做错了什么?
尝试'strIsN =“[String]为空'' – Andre
不起作用,甚至不会触发不匹配。当我使用该SQL创建一个选择查询时,有3个结果,2个为空。 – Jaehaerys68
我也尝试过IsNull(string)='True'作为字符串,它不接受匹配,但仍然不起作用 – Jaehaerys68