Rnd関数について
今Rnd関数を使って問題を作ろうとしているのですが,
40問中から重複なしに20問ランダムに出題するというものを作ろうとしています。
しかし,重複を無くすためのプログラムの仕方がわかりません。
ついこの間,VBを始めたばかり(プログラムはVBが始めて)なので,
できれば詳しい解説を書いてほしいです。
今現在考えているのはこんなのです↓
Private Function RandomCnt() As Long
'*********************************
'* ランダムで問題の番号を取得 *
'*********************************
'一時的にランダムで取得した問題番号を格納
Dim RandomNo As Long
RandomNo = Int((MaxRec * Rnd) + 1) 'ランダムで番号を取得
Do While volQuizNo(RandomNo) = True 'まだ出していない問題が見つかる間
RandomNo = Int((MaxRec * Rnd) + 1) 'ランダムで番号を取得
Loop
volQuizNo(RandomNo) = True '出題問題のチェック
RandomCnt = RandomNo
End Function