AccessのVBAでSQLのRND(SEED値)関数を使いシード値(元になる表示)を設定し乱数を発生させる|フォーム実行例

シード値とは乱数発生の元になる数値で、RND( シード値 )となります。

下のサンプルの場合、現在の時間の秒を取り出しシード値にしています。
結果は整数にしました。




BackHome BackSQL Tips

サンプルソフト

■実行画面
ボタンをクリックすると、10個の乱数の結果をテキストボックスに表示します。
乱数のテストフォーム

■実行結果
7055
5334
5795
2895
3019
7747
140
7607
8144
7090

■コード
Option Compare Database

'シード値を設定し乱数を発生させる
Private Sub コマンド8_Click()
    Dim SQL As String
    Dim rs As Recordset
    Dim i As Long
            Me!テキスト1 = Null
    SQL = "SELECT RND(SECOND(NOW())) AS 乱数"
    For i = 1 To 10
        Set rs = CurrentDb.OpenRecordset(SQL)
        Me!テキスト1 = Me!テキスト1 & Int(rs(0) * 10000) & vbCrLf
        Set rs = Nothing
    Next
End Sub

サンプルソフトのダウンロード


BackHome BackSQL Tips

Copyright(C) FeedSoft