
子供の算数の問題を作成するために考えているのですが、Excel で10個のセルに、0から9を一つ一つランダムに表示したいのです。ただ、一度使用した数字は、二度と使用しないようにするためにいい方法はないでしょうか。
例1 2.5.8.6.3.9.7.4.1.0
例2 1.4.7.2.0.5.8.3.6.9
など、乱数等を使用した方がいいと思うのですが、if関数は、最大7つまでしか、判断だきないそうです。
ランダムであり、一度使用した数字は、使用せず、0から9をそれぞれ表示する方法は、ないでしょうか。
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
例えばA1~A10にRAND()をいれ、
B1にRANK(A1,A$1:A$10)-1
と言うようにB10までいれれば、
0~9までの数値をランダムに表せます。
RANDで同じ数値が出た場合は、同じ数字が2つになりますが・・・
この回答への補足
上記を参考にさせていただきできました。
つまり、別シートに多き目の数値乱数を作成し、その乱数表から本来のシートに必要なRANK関数で指定しました。ただ、0がでず、10になってしまうので、全体にif関数を使用してRANKが10になる時のみ、0に指定しました。
本当にありがとうございました。
No.9
- 回答日時:
0から9までの数字を作るだけですが、VBAでやってみました。
A1から10行分を作ります。サイコロを振ってでた目で、一つ一つのセルを埋めていく方式です。
最後のほうの、
Loop Until p = 10
の、10を他の数字に変えれば、その数字分の行数を埋めることができます。32767まで指定できます。
Sub Saikoro()
Dim i As Byte, c As Range, myRange As Range
Dim b As Byte, p As Integer
Set myRange = Range("A1", "J1")
Do
myRange.Value = 10
i = 1
Do
b = Int((9 - 0 + 1) * Rnd + 0)
For Each c In myRange
If c.Value = b Then
Exit For
End If
If c.Column = i Then
c.Value = b
i = i + 1
Exit For
End If
Next c
Loop Until i = 11
Set myRange = myRange.Offset(1, 0)
p = p + 1
Loop Until p = 10
End Sub
No.7
- 回答日時:
#3です。
いろいろ考えてみましたが、なかなかしっくりくるのが思い浮かびませんでした・・・。
とりあえずrand()*rand()ぐらいで桁数を増やせば、
同じ数字がでることは確率的にはほとんどなくなりますが・・・。
1シートで利用するセルだけで0~9を振り分けるのはちょっと難しそうです。(VBAを使えばできそうですが・・・15パズルを作るのと同じ要領ですので。)
やはり別シートで乱数を発生させてrank()-1で計算させるのが楽そうです。
あ、rank()のあとの-1が重要ですよ。
これがないと1~10のランクになってしまうので、
-1で0~9の数値に変換しています。
ご希望に添えず、すいません。
No.6
- 回答日時:
#5さんのやり方はvbaで可能でしょうね。
ifで10の時って言うのもいいですけど、
-1でもいいですね
No.1
- 回答日時:
=INT(RAND()*10)
では
>二度と使用しないようにする
ことが出来ませんので、分析ツールを使います。
参考URLへ。
参考URL:http://deisuitei.pinky.ne.jp/excel/excel10a.htm
この回答への補足
早速のご返事誠にありがとうございます。
上記サイトを見て、自分で試してきました。
上記サイト通りに実施したのですが、「乱数発生離散確率の列の合計は、1になります。」とヘルプがでてしまいます。
上記、方法で、0から9の乱数がかならず、二回使用しないように、同時に表示できるのでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの数式で教えてください。 1 2022/07/08 13:46
- Excel(エクセル) エクセルの数式で教えてください。 1 2022/10/25 09:26
- Excel(エクセル) Excel 特定セルの数値を参照したセルの0表示が空白にならないのはどうしてか? 3 2022/04/28 22:23
- Excel(エクセル) エクセルの数式について教えてください。 2 2023/03/04 09:54
- Excel(エクセル) ランダムで四択の問題を作る場合にvbaで何を学べばいいでしょうか。 1 2022/04/14 16:45
- 数学 特定の座標点を通る回帰を行う方法について。 2 2022/10/10 10:27
- Excel(エクセル) 【エクセル】COUNTIFの検索条件が可変する数字の場合の数式 1 2022/09/27 15:34
- Visual Basic(VBA) EXCEL VBAで教えてください。 1 2022/12/22 04:20
- Excel(エクセル) ExcelのIF関数について 4 2023/05/24 12:54
- Excel(エクセル) AVERAGE関数とINDIRECT関数を使ってのオートフィル 3 2023/01/12 12:00
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELのVBAで複数のシートを追...
-
オートフィルターの絞込みをし...
-
勤怠表について ABS、TEXT関数...
-
【マクロ】【画像あり】関数が...
-
空白のはずがSUBTOTAL関数でカ...
-
Excelで4択問題を作成したい
-
エクセルについて
-
エクセルシートの見出しの文字...
-
【Officer360?Officer365?の...
-
エクセルの複雑なシフト表から...
-
Excelに貼ったXのURLのリンク...
-
グループごとの人数のカウント
-
グループごとの個数をカウント...
-
ページが変なふうに切れる
-
エクセル
-
エクセル ドロップダウンリスト...
-
グループごとの人数のカウント
-
エクセル GROUPBY関数について...
-
特定のセルだけ結果がおかしい...
-
VBA チェックボックスをオーバ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報