ciao,
allora , -1 potrebbe essere legato al
rec.LockType = adLockBatchOptimistic

per il resto del codice nn capisco a che serve questa parte:

codice:
If Not rec.EOF Then
                Do While Not rec.EOF
                
                    autore = (rec.Fields("autore"))
                    descrizione = (rec.Fields("descrizione"))
                    url = (rec.Fields("url"))
                    foto = (rec.Fields("foto"))
                    foto1024 = (rec.Fields("foto1024"))
                    tipo = (rec.Fields("tipo"))
                    
                rec.MoveNext
                
                Loop
                
                Else
                
                    MsgBox "Nessun record"
                    autore = "?"
                    descrizione = "?"
                    url = "?"
                    foto = "?"
                    
                End If