アクセス担当のまみです。
「Rnd関数」って数値を「ランダム」で表示してくれます。
決まった数字を表示させないようにするために「ランダム」に数字を表示したい時に使えるんですね。
え?「ランダム」の数値って何に使うのって?
例えば、くじ引きのデータベースを作成したとするでしょう。
入力した「値」に対して、「=」で答えが出てしまうと、必ず答えが決まっているから、だんだん「くじ引き」の意味はなくなりますよね。
それが入力した「値」に対して「<>」の答えがでると、答えが固定されないから「くじ引き」の意味がありますよね。
いつどんな時も導き出される答えが不明だからですね。
今回はRnd関数についてお伝えしますね。
Rnd関数
1未満で0以上の値を返してくれます。
このままだと単精度浮動小数点数型で返してくれんですが、他の関数と組み合わせることによってアレンジできるんです。
そこで今回は「Int関数」を使ってみますね。
Int関数と組み合わせると「整数の乱数」を返してくれるんですね。
ちなみにInt関数は、「小数部分を切り捨てる」ことが出来る関数です。
例えば1~6までの乱数を発生させるとしますね。
記述方法は「Int((6 * Rnd) + 1)」と表記します。このようにすると「整数の乱数」が発生するんです。
Rnd関数とInt関数を使用する
ではさっそくランダムに数字を表示してくれるプログラムを作成してみましょう。
今回は、数字を入力すると1から入力した数字までの間でランダムに数字を表示してくれるプログラムです。
ボタンを1つテキストボックスを2つ配置します。
ラベルの標題 | テキストボックスの名前 |
数字を入力 | tx数字 |
結果 | tx結果 |
ボタンの標題 | ボタンの名前 |
実行 | btn実行 |
①「btn実行」を選択した状態でプロパティーシートの②「イベント」タブからクリック時に「イベントプロシージャ」を選択してコードの画面を表示します。
「Private Sub btn実行_Click()」と「End Sub」の間に下記のコードを追加しましょう。
Dim strNum As String strNum = Me.tx数字.Value Me.tx結果.Value = Int((strNum * Rnd) + 1)
コードをコピーされたい場合は下記の記事を参考にしてください。
数字を入力して「実行」ボタンを押すと「結果」には今回「6」と表示されました。
ちなみにもう一度「実行」ボタンを押して「結果」が「6」になる可能性もありますが、違う場合もあるんですね。
フォームは「F_Rnd」と名前をつけておきましょう。
まとめ
今回は、ランダムの数値を簡単に取得する方法をお伝えしてみました。
Rnd関数ってランダムに数字を表示してくれるので、パスワード等の作成にも使えます。
「あ!」って思ったときに思い出していただいて使ってみてください。