Sub test2()
Dim tablo, t, x&, i&, q&
Randomize
tablo = Range("A1", Cells(Rows.Count, "A").End(xlUp)).Value
q = Application.Max(Int(UBound(tablo) * Range("F1")) + 1, 3)
ReDim t(1 To q, 1 To 1)
Do While i < q
x = 1 + Round(Rnd * (UBound(tablo) - 1))
If IsError(Application.Match(tablo(x, 1), t, 0)) Then i = i + 1: t(i, 1) = tablo(x, 1)
Loop
Range("C1:C" & q).Value = (t)
End Sub