ランダム数の発生

エクセル上でランダム数を発生させるソフトをご存じないでしょうか?
できれば、整数桁4桁くらいまで、小数点以下4桁くらいまでを指定して(桁数を指定して)できるとよいのですが・・・。

投稿日時 - 2006-08-19 14:25:48

QNo.2348913

暇なときに回答ください

質問者が選んだベストアンサー

#1です。
失礼しました。桁数違ってました。
正しくは、
整数桁4桁まで、小数点以下4桁の場合:
=ROUNDDOWN(RAND()*10000,4)

RAND 関数は 0 以上、1 未満の範囲の値を返すので、ある桁で四捨五入したら1に達する事があり、1万倍したら5桁になってしまいます。4桁までで発生確率を均等に(ランダムさを維持)するには、理論的には切捨てである必要があります。

投稿日時 - 2006-08-19 15:04:38

ANo.3

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

ベストアンサー以外の回答(5件中 1~5件目)

ANo.6

[No.5回答に対する補足]に対するコメント、

》 前者は小数点以下が出ません。

「小数点以下4桁くらいまで」を見落としてました。
それでは次のように訂正します。

セル A1、B1 にそれぞれ数値の 10000000、99999999 を入力したとき、式 =INT($A$1+($B$1+1-$A$1)*RAND())/10000 は 1000.0000~9999.9999 の乱数を返してきます。
当該式は単に =RANDBETWEEN($A$1,$B$1)/10000 でも好いかも知れません。この関数が使用できず、エラー値 #NAME? が返される場合は、分析ツール アドインを組み込む必要があります。

投稿日時 - 2006-08-20 15:54:56

ANo.5

セル A1、B1 にそれぞれ数値の 1、9999 を入力したとき、式 =INT($A$1+($B$1+1-$A$1)*RAND()) は 1~9999 の乱数を返してきます。
セル A1 の数値を 1000 に置き換えた場合、当該式は 4桁の乱数を返してきます。
当該式は単に =RANDBETWEEN($A$1,$B$1) でも好いかも知れません。

投稿日時 - 2006-08-19 20:08:09

補足

ご回答有難うございます。

前者は小数点以下が出ません。

後者(=RANDBETWEEN($A$1,$B$1))は、[♯NAME?]となりました。

投稿日時 - 2006-08-20 14:00:59

お礼

ご回答有難うございました。

すべての方にポイントを差し上げられないことを、申し訳なく思っています。

投稿日時 - 2006-08-21 22:33:09

ANo.4

=(INT(RAND()*99999999)+1)/10000

1~99999999の範囲の乱数を求める公式(?)は
 =INT(RAND()*99999999)+1
です。これを10000で割れば整数部4桁+小数部4桁の乱数になります。

投稿日時 - 2006-08-19 16:59:27

補足

整数部3桁の数も出ますね。(4桁ばかりでない)

投稿日時 - 2006-08-20 14:06:42

お礼

ご回答有難うございました。

すべての方にポイントを差し上げられないことを、申し訳なく思っています。

投稿日時 - 2006-08-21 22:32:41

ANo.2

RAND関数を使えば良いのでは。

この質問の場合、少し工夫をして、セルに
=ROUND(RAND()*10000,4)
と式を書けばだいたい指定の数字になると思います。

投稿日時 - 2006-08-19 14:47:04

お礼

ご回答有難うございました。

すべての方にポイントを差し上げられないことを、申し訳なく思っています。

投稿日時 - 2006-08-21 22:32:02

ANo.1

NCU

整数桁4桁まで、小数点以下4桁の場合:
=ROUNDDOWN(RAND()*1000,4)

投稿日時 - 2006-08-19 14:46:42

お礼

ご回答有難うございました。

すべての方にポイントを差し上げられないことを、申し訳なく思っています。

投稿日時 - 2006-08-21 22:31:30

あなたにおすすめの質問

[PR] お役立ち情報