Come si fa lo so ed uso questo metodo
codice:
dim aforisma_Max
	dim aforisma_Casuale
	sql = "SELECT COUNT(*) FROM Aforismi"
	Set RS = dbConn.Execute(sql)
	aforisma_Max = RS(0)

	Randomize()
	aforisma_Casuale = Int(Rnd() * aforisma_Max)

	sql = "SELECT * FROM Aforismi"
	Set RS = dbConn.Execute(sql)

	If Not RS.EOF Then
		RS.MoveFirst
		RS.Move aforisma_Casuale
		aforisma = decodifica(RS("aforisma")) & " [" & decodifica(RS("autore")) & "]"
	Else
		aforisma = "Nulla"
	End If
	
	RS_evaso.Close
	Set RS = Nothing
Però se io cancello un recordset e a random mi va a beccare proprio il recordset inesistente su "RS.Move aforisma_Casuale" mi da un errore (giustamente)

Come faccio a fargli verificare se la riga esiste e nell'eventualità a fargli ripetere l'operazione?