Quando usar o método MoveFirst ?
Ao trabalhar com banco de dados ( Access ) , quantas vezes você , após abrir um Recordset utilizou o método MoveFirst para mover o ponteiro para o primeiro registro antes de fazer um Loop pelo recordset ??
Com a versão 3.6 da DAO e ao usar ADO não é mais necessário este desperdício. Ao abrir um recordset tanto a DAO como a ADO agora movem o ponteiro para o primeiro registro automaticamente. Se o recordset está vazio , as propriedades BOF e EOF serão setadas como True.
Então para saber se um recordset contém ou não registros apenas use a propriedade EOF a seguir comande um MoveNext antes de fazer o Loop pelos registros. Veja o exemplo a seguir:
Usando DAO:
Dim rst As DAO.Recordset
Set rst = db.OpenRecordset("Sua Tabela")
With rst
Do Until .EOF
Debug.Print .Fields(1)
.MoveNext
Loop
.Close
End With
Set rst = Nothing
Se quiser usar ADO a única diferença será a forma de abrir o recordset o resto do código é o mesmo...
Até mais...