• 締切済み

乱数表の作成と差込印刷

0~9までの数字を6つ使い乱数表を作成したいのですがなかなかうまく出来ません。お同じ数字を3回使わないようにうしたいのですがどうしたらいいのでしょうか? 出来た6桁の乱数を決まっている書式に差込み、印刷ができるようにもしたいのですが…。よろしくお願い致します。

みんなの回答

  • NCU
  • ベストアンサー率10% (32/318)
回答No.4

関数「myRnd」というのを作りました。 =myRnd(6,2) のように使います。 '[書式]=myRnd(桁数, 反復回数の上限) Function myRnd(桁%, 回%) As String   If 桁% > 回% * 10 Then Exit Function   Dim i%, r%, chk%(0 To 9)   For i% = 1 To 桁%     Randomize     Do       r% = Int(10 * Rnd)     Loop Until chk%(r%) < 回% '指定上限回数既出はNG     chk%(r%) = chk%(r%) + 1     myRnd = myRnd & r%   Next End Function

noname#204879
noname#204879
回答No.3

[No.2回答に対する補足]に対するコメント、 「会社のPC」にインストールされているのは Excel97 ですか?アドインの“分析ツール”を組み込めば、=RANDBETWEEN()関数が使えるようになりますよ。それはソレとして… =INT(100000+900000*RAND()) では如何?

noname#204879
noname#204879
回答No.2

[No.1回答に対する補足]に対するコメント、 =RANDBETWEEN(100000,999999) では駄目なのですか?

tomo550130
質問者

補足

会社のPCなのですがRANDBETWEEN自体がインストール?されていないようです。

noname#204879
noname#204879
回答No.1

「なかなかうまく出来ません」ということは、ご自分でやってみたわけですね。 貴方が考えた「6桁の乱数」発生の方法(式?)を示してみてください。

tomo550130
質問者

補足

とりあえずINT((RAND()*(9-1)+1))という計算式を作りました。3回同じ数字を使ってもいいのならこのままコピーをしていくのですが…。ここから先がどうしたらよいのかわかりません。 計算式やマクロを最近勉強し始めたので、初歩の初歩しか出来ないので良い案があれば教えてください。

関連するQ&A