Per prima cosa controlla RecAppo.Recordcount se è >0...
Prova ad usare queste righe di codice:
Dim strSqlAng As String
Dim RecAppo As Adodb.Recordset
Set RecAppo = New ADODB.Recordset
strSqlAng="" 'Metti la tua SELECT
RecAppo.Open strSqlAng, g_MyConn
If RecAppo.Recordcount>0 Then
RecAppo.MoveLast: RecAppo.MoveFirst
End If
'Controlla i tuoi record
Non so per quale motivo (non essendomi mai documentato) ma a volte è necessario spostarsi alla fine del record per poi tornare all'inizio.
Ciao
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole