Excelでランダムな時刻を素早く生成するにはどうすればよいですか?
Excelを使用している際、テストやデータ分析、スケジュール作成、シミュレーションなどの目的でランダムな数字、日付、またはテキスト文字列を挿入することが一般的です。しかし、特定の範囲内や特定の間隔でランダムな時刻を挿入する必要がある場合もあります。例えば、モックタイムテーブルの作成、出席記録の入力、またはシステムテスト用の時間ベースのデータのシミュレーションなどが考えられます。Excelには直接的なランダム時刻生成機能はありませんが、組み込みの数式を使った方法や使いやすいアドイン機能、柔軟なVBAマクロ手法など、いくつかの実用的な解決策があります。
Excelで数式を使ってランダムな時刻を生成する
以下の数式は、1日の全体の中でランダム化したり、2つの特定の時刻の間で時刻を生成したり、定義された間隔でランダムな時刻を作成するなど、要件に応じてランダムな時刻を作成することができます。これらの方法は、特にマクロを有効にしたりアドインをインストールせずに即座に結果を得たい場合など、ほとんどの日常的なExcelタスクに最適です。
Excelでランダムな時刻を生成する
範囲にランダムな時刻を素早く入力するには、空白セルに次の数式を入力します。次に、必要な行数だけ塗りつぶしハンドルをドラッグして数式を適用します。これにより、00:00:00から23:59:59までの書式設定されたランダムな時刻値が提供されます。
この数式を必要な行数だけコピーすることができます。ただし、RAND()はワークシートが再計算されるたびに新しい値を生成するため、シートに変更を加えるとランダムな時刻も更新されます。生成した時刻を保持するには、結果をコピーして貼り付け(値のみ)で数式を上書きしてください。
Excelで2つの時刻の間でランダムな時刻を生成する
11:00から15:00の間など、制限された時間帯内でランダムな時刻を作成したい場合は、以下の数式を使用できます。この方法は、モックスケジュール、予約システム、または時間枠が重要なシミュレーションに適しています。
空のセルに次の数式を入力し、必要な範囲に塗りつぶしハンドルをドラッグしてランダムな時刻を入力します。
時刻が生成された後、それを静的に保持したい場合は、値として貼り付けてください。午前0時に開始または終了する時刻を使用している場合は、数式が日付のラップエラーを避けるために0と24を正しく使用していることを確認してください。
Excelで特定の間隔でランダムな時刻を生成する
特定の間隔(例:15分ごとや30分ごと)でランダムに時刻を生成するには、TEXT関数内でFLOORとRANDを組み合わせることができます。これは、ランダムな予約の作成、イベント開始時間のランダマイズ、または正確な間隔でモックデータを配置するようなタスクに特に役立ちます。
空のセルにこの数式を入力またはコピーし、必要な量のランダムな間隔ベースの時刻を生成するために塗りつぶしハンドルを下にドラッグします。
より安定性を高めるために、それらを値に変換してください。

Kutools AIでExcelの魔法を解き放つ
- スマート実行: セル操作、データ分析、グラフ作成を簡単なコマンドで行います。
- カスタム数式: ワークフローを合理化するための独自の数式を生成します。
- VBAコーディング: 簡単にVBAコードを作成し実装します。
- 数式の解釈: 複雑な数式を簡単に理解できます。
- テキスト翻訳: スプレッドシート内の言語障壁を取り除きます。
Excelで2つの日時の間にランダムな日付と時刻を生成する
ランダムなイベントログやスケジュール記録を埋める際にランダムな日付と時刻の両方を生成するには、以下の数式を使用します。この方法は、テストやシミュレーションデータのために日付と時刻を組み合わせます。
セルにこの数式を入力または貼り付け、さらに多くの行が必要な場合はドラッグして入力します。
数式を下にドラッグすると、各セルには選択した期間内の新しいランダムな日付と時刻が生成されます。日付部分または時刻部分のみが必要な場合は、該当するように数式の形式を調整してください(例:日付のみの場合は "YYYY-MM-DD" を使用)。
便利な機能を使ってExcelでランダムな時刻を生成する
数式を管理するのが面倒である場合や、大規模なランダムデータを迅速にカスタマイズする必要がある場合、Kutools for Excelの「ランダムデータ挿入」機能を利用することで、数クリックでランダムな数字、日付、時刻、およびカスタムテキスト文字列を挿入できます。これは、頻繁にランダムデータが必要な場合、数式の再計算を避けたい場合、または指定された範囲内で一意の時刻を挿入する追加オプションが必要な場合に特に適しています。
Kutools for Excel のインストール後、次の指示に従ってください:
1. ランダムな時刻を挿入するための空白の範囲を選択します。
2. [Kutools] > [挿入] > [ランダムデータ挿入] に移動します。
3. 「ランダムデータ挿入」ダイアログで、[時刻] タブに進み、[From(開始時刻)] および [To(終了時刻)] ボックスにそれぞれ目的の開始時刻と終了時刻を入力します。
ヒント: 生成されたすべての時刻が異なることを確認するには、[一意の値を生成する] オプションをチェックしてください。
4. [OK] または [適用] をクリックします。選択範囲には即座にランダムな時刻が入力されます。
今すぐ Kutools for Excel をダウンロードして無料トライアル!
「ランダムデータ挿入」機能は、ランダムな時刻を静的(挿入後に変更しない)にしたい場合に特に実用的です。
VBAコードを使ってExcelでランダムな時刻を生成する
Excelでランダムな時刻を生成するもう一つの柔軟な方法は、VBAマクロを使用することです。VBAをカスタマイズすることで、特定の時間を除外する、指定された間隔で時刻を生成する、またはワークシートが変更されると自動的にランダム時間を更新するなどの追加要件を含めることができます。複数の範囲や繰り返しプロセスに対してランダムな時刻生成を自動化したいユーザーにとって、マクロを使用することは特に有用です。
以下は、選択したセルにランダムな時刻を生成して入力するサンプルVBAマクロです。開始時刻/終了時刻、ランダム化の粒度(分、秒)、または特定の時間を除外するなどを調整できます。
1. [開発] > [Visual Basic] をクリックして VBA エディターを開きます。VBAウィンドウで [挿入] > [モジュール] に進み、以下のコードを新しく作成されたモジュールにコピーして貼り付けます。(開発タブが表示されていない場合は、Excelオプション > リボンのユーザー設定で有効にしてください。)
Sub GenerateRandomTimes()
Dim WorkRng As Range
Dim StartHour As Integer
Dim EndHour As Integer
Dim ExcludeHour As Integer
Dim cell As Range
Dim xTitleId As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select range to fill random times:", xTitleId, WorkRng.Address, Type:=8)
StartHour = Application.InputBox("Start hour (0-23):", xTitleId, 8, Type:=1)
EndHour = Application.InputBox("End hour (1-24):", xTitleId, 18, Type:=1)
ExcludeHour = Application.InputBox("Hour to exclude (if none, type -1):", xTitleId, -1, Type:=1)
Application.ScreenUpdating = False
Randomize
For Each cell In WorkRng
Dim h As Integer, m As Integer, s As Integer
Do
h = Int((EndHour - StartHour) * Rnd + StartHour)
Loop While h = ExcludeHour
m = Int(60 * Rnd)
s = Int(60 * Rnd)
cell.Value = TimeSerial(h, m, s)
cell.NumberFormat = "hh:mm:ss"
Next cell
Application.ScreenUpdating = True
End Sub
2. F5 キーを押してマクロを実行します。対象となるセル範囲を選択するプロンプトが表示されます。希望の開始時刻、終了時刻、必要に応じて除外する時刻を設定できます。特定の時刻を除外したくない場合は -1 を入力します。その後、選択した範囲に一意のランダムな時刻が挿入されます。
このVBAアプローチは、夜間の時間を省略したり、分または秒をランダマイズする方法を変更して異なる間隔を生成するなどの高度なカスタマイズをサポートします。同じ範囲でマクロを再度実行すると値が上書きされるため、新しい実行前に保存したい場合は結果を別の場所にコピーしてください。
関連記事:
- 2つの日付の間でランダムな日付を生成する
- Excelファイルを使用しているとき、特定の目的でランダムな日付を生成したい場合があります。もちろん、手動で1つずつ日付を入力することは可能ですが、多数の日付を挿入する必要がある場合、その方法は時間がかかり退屈です。Excelでどのようにランダムな日付をすばやく生成すればよいでしょうか?
- 2つの時刻の間に時刻があるかどうかを確認する
- Excelで特定の時刻が2つの指定された時刻の間にあるかどうかを確認するにはどうすればよいですか?1つずつ確認すると時間がかかるので、ここでは簡単な数式でこの問題を解決する方法を紹介します。
- 12時間形式を24時間形式に変換し、その逆も行う
- 日常業務でExcelを使用している場合、異なる条件下で異なる時間形式を使用することがあります。たとえば、次のスクリーンショットに示されているように、12時間形式と24時間形式などです。しかし、Excelで12時間形式から24時間形式に、またはその逆に変換するにはどうすればよいでしょうか?
- 深夜後の2つの時刻の間の時間を計算する
- 仮に、勤務時間を記録するタイムテーブルがあり、A列には当日の開始時刻、B列には翌日の終了時刻が記載されているとします。通常、2つの時刻の差を直接「=B2-A2」という式で計算すると、正しい結果が表示されません(左のスクリーンショット参照)。Excelで深夜後の2つの時刻間の時間を正しく計算するにはどうすればよいでしょうか?
最高のオフィス業務効率化ツール
🤖 | Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Execution|コード生成|カスタム数式の作成|データの分析とグラフの生成|Kutools Functionsの呼び出し…… |
人気の機能:重複の検索・ハイライト・重複をマーキング|空白行を削除|データを失わずに列またはセルを統合|丸める…… | |
スーパーLOOKUP:複数条件でのVLookup|複数値でのVLookup|複数シートの検索|ファジーマッチ…… | |
高度なドロップダウンリスト:ドロップダウンリストを素早く作成|連動ドロップダウンリスト|複数選択ドロップダウンリスト…… | |
列マネージャー:指定した数の列を追加 |列の移動 |非表示列の表示/非表示の切替| 範囲&列の比較…… | |
注目の機能:グリッドフォーカス|デザインビュー|強化された数式バー|ワークブック&ワークシートの管理|オートテキスト ライブラリ|日付ピッカー|データの統合 |セルの暗号化/復号化|リストで電子メールを送信|スーパーフィルター|特殊フィルタ(太字/斜体/取り消し線などをフィルター)…… | |
トップ15ツールセット:12 種類のテキストツール(テキストの追加、特定の文字を削除など)|50種類以上のグラフ(ガントチャートなど)|40種類以上の便利な数式(誕生日に基づいて年齢を計算するなど)|19 種類の挿入ツール(QRコードの挿入、パスから画像の挿入など)|12 種類の変換ツール(単語に変換する、通貨変換など)|7種の統合&分割ツール(高度な行のマージ、セルの分割など)|… その他多数 |
Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...
Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に
- Word、Excel、PowerPointでタブによる編集・閲覧を実現。
- 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
- 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!
全てのKutoolsアドインを一つのインストーラーで
Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。





- オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
- 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
- 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
- 30日間フル機能お試し —— 登録やクレジットカード不要
- コストパフォーマンス最適 —— 個別購入よりお得