Voilà un code qui te propose un nombre aléatoire choisi parmi ceux qui n'existent pas en colonne A entre 1 et le numéro Max et, lorsqu'ils existent tous te propose celui qui suit le n° max :
Sub NombreAléatoire()
n = 0
nMax = Application.Max(Range("A7:A" & Range("A" & Rows.Count).End(xlUp).Row))
For i = 1 To nMax
n = Int(nMax * Rnd + 1)
If Range("A7:A" & Range("A" & Rows.Count).End(xlUp).Row).Find(n, lookat:=xlWhole) Is Nothing Then
GoTo fin
End If
Next i
n = nMax + 1
fin:
MsgBox n
End Sub
Bye !