visual programar ejemplos codigos ms-access access-vba

ms access - programar - ¿Cómo pruebo si un recordSet está vacío? ¿es nulo?



vba access pdf (5)

RecordCount es lo que quieres usar.

If Not temp_rst1.RecordCount > 0 ...

¿Cómo se puede probar si un conjunto de registros está vacío?

Dim temp_rst1 As Recordset Dim temp_rst2 As Recordset Set temp_rst1 = db.OpenRecordset("SELECT * FROM ORDER_DATA WHERE SKUS_ORDERED = ''" & curSKU1 & "'' AND [ORDER] = " & curOrder) Set temp_rst2 = db.OpenRecordset("SELECT * FROM ORDER_DATA WHERE SKUS_ORDERED = ''" & curSKU2 & "'' AND [ORDER] = " & curOrder) If IsNull(temp_rst1) Or IsNull(temp_rst2) Then MsgBox "null"

Estoy abriendo un par de conjuntos de registros basados ​​en una declaración seleccionada. Si no hay registros, ¿IsNull devolverá verdadero?


Si temp_rst1.BOF y temp_rst1.EOF , el conjunto de registros está vacío. Esto siempre será cierto para un conjunto de registros vacío, vinculado o local.


Si no es temp_rst1, entonces no hay nada ...


Una forma simple es escribirlo:

Dim rs As Object Set rs = Me.Recordset.Clone If Me.Recordset.RecordCount = 0 then ''checks for number of records msgbox "There is no records" End if


Verificaría el indicador "Fin del archivo":

If temp_rst1.EOF Or temp_rst2.EOF Then MsgBox "null"