ランダム月生成ツールでできること
1年の中の月をランダムに選びます。1か月だけ引くことも、重複なしで数か月を選ぶことも、12か月すべてをランダムな順番に並べることもできます。結果は「9月」のような月名か、「09」のような2桁の月の数字で表示されます。
カレンダーに関わることを手早く公平に決めたいときに便利です。たとえば、旅行を計画する月、クイズで出題する月、1年分の記録から抽出する月などを決められます。
すべての処理はブラウザの中で行われます。何もアップロード・保存されません。
使い方
- 「表示形式」で、「月名(9月)」「短縮名(9月)」「数字(09)」のどれかを選びます。日本語の月名には短縮形がないので、日本語のページでは「月名」と「短縮名」は同じ表示になります。
- 「個数」に必要な月の数を設定します。
- 同じ月を2回出したくない場合は、「重複なし」をオンにします。
- 選んだ月を1月から12月の順に並べたい場合は、「カレンダー順」をオンにします。オフのままなら出た順になります。
- 「結果の区切り」を選びます。初期設定はカンマとスペースです。
- 「月を選ぶ」を押します。
1か月の場合は、「結果」の下に大きく表示されます。複数の場合は欄に表示されます。「コピー」を押すとコピーできます。直近10回分の結果は、ページを離れるまで「最近の結果」に一覧表示されます。それより前に消したい場合は「クリア」を押してください。
生成例
以下は、このページの裏で動いているコードの実際の出力です。あなたが実行すれば別の結果になります。
| 設定 | 実行結果の一例 |
|---|---|
| 1か月、月名 | 12月 |
| 3か月、重複なし | 2月, 11月, 6月 |
| 4か月、重複なし、カレンダー順 | 5月, 7月, 9月, 11月 |
| 3か月、数字、重複あり | 05, 10, 02 |
| 12か月、重複なし | 10月, 2月, 8月, 3月, 4月, 7月, 5月, 1月, 11月, 12月, 9月, 6月 |
| 15か月、重複なし | 12か月すべてを1回ずつ。12か月しか選べなかったという注記付き |
仕組み
12か月は、1月から12月までの一覧として保持されています。1つ選ぶために、ツールは0から11までのランダムな位置を引きます。
そのランダムな位置は、ブラウザの安全な乱数源である crypto.getRandomValues から取得します。生のランダムなビットは、棄却サンプリングで位置に変換されます。乱数の範囲は12でちょうど割り切れないため、単純に余りを使うと一部の位置がごくわずかに選ばれやすくなります。棄却サンプリングはそうした偏りを生む値を捨てるので、各月がちょうど12分の1の確率になります。
「重複なし」の場合は、フィッシャー・イェーツ法で一覧をシャッフルし、先頭から月を取り出します。帽子の中から月のカードを戻さずに引いていくのと同じです。「カレンダー順」をオンにすると、表示する前に選んだ月を月の番号順に並べ替えます。
活用アイデア
- 旅行の計画。 旅行に行く月を選び、その時期の現地の天気を調べます。
- クイズや授業。 出た月の季節、日数、祝日などを生徒に答えてもらいます。英語の月名を覚える練習には、英語版のページを使うと January や Jan のように表示されます。数字の形式は、日付を読む練習に向いています。
- テストデータ。 サンプルの記録やレポートの絞り込み用に、月の数字を作ります。
- 監査や振り返り。 1年の中からランダムに3か月を選んでカレンダー順に並べ、その月の記録を見直します。
- 作文のお題。 月を1つ引き、その月を舞台にした短い物語を書きます。
- チャレンジ。 12か月すべてをシャッフルし、それぞれに1つずつ習慣や目標を割り当てます。
ヒントと制限
- どの月も同じ確率です。 2月は短い月ですが、ほかの月と同じ確率で選ばれます。
- 月名はページの言語で表示されます。 月名はブラウザーの国際化機能(Intl)で作られるので、日本語のページでは「1月」「2月」のように表示されます。言語に依存しない結果が必要な場合は、数字の形式を使ってください。
- 2桁の数字。 数字には常に先頭のゼロが付くので、9 は 09 と表示されます。テキストとして並べ替えても順番が崩れません。
- 12か月を超える場合。 「重複なし」がオンのときに12か月より多く指定すると、12か月すべてが返され、ステータス行にその旨が表示されます。「重複なし」をオフにすれば、最大1,000件まで好きなだけ引けます。
- 完全な日付が必要ですか? ランダム日付生成ツールなら、2つの日付の間から特定の日を選べます。
そのほかのランダムな月の選び方
Excel や Google スプレッドシート。 =RANDBETWEEN(1,12) で月の数字が得られます。英語の月名で表示するには =TEXT(DATE(2026, RANDBETWEEN(1,12), 1), "mmmm") を使います。短縮名には "mmm" を使います。
Python。 import calendar, random の後に calendar.month_name[random.randint(1, 12)] で英語の月名が返ります。3つの異なる月の数字には random.sample(range(1, 13), 3) を使います。
手作業で。 紙に12か月を書いて折りたたみ、器の中から1枚引きます。12面体のサイコロを持っていれば、それでも選べます。
関連ツール
名前や場所など、自分で用意した一覧から選ぶには、ランダム選択ツールを使ってください。各月のテーマを決めるなど、ランダムなアルファベットが必要なら、ランダムアルファベット生成ツールを試してください。