>>549,>>551
乱数の質にもよるけど、要素数と同じ回数だけ入れ替えを行えば大丈夫。
経験的な基準ですが。
入れ替える要素の両方の添え字をランダムに選ぶんじゃなくて、片方は順番に選び、
もう片方はランダムに選ぶっていう方法もある。そっちのほうが確実にバラけると思われ。
言葉だとわかりにくいと思うのでコード例でどうぞ。

Dim Num(1 to 15) As Integer
Dim Tmp As Integer
Dim i As Integer
Dim j As Integer

For i = 1 To 15
  Num(i) = i
Next i

For i = 1 To 15
  j = Int(Rnd(1) * 15) + 1
  Tmp = Num(i)
  Num(i) = Num(j)
  Num(j) = Tmp
Next j