メインコンテンツへスキップ

Excelで2つの日付間のすべての日付をリストするにはどうすればよいですか?

Author: Sun Last Modified: 2025-08-06

特定の開始日と終了日がある場合、Excelでこれら2つの指定された日付間のすべての日付をリストする必要があるかもしれません。このチュートリアルでは、Excelで2つの日付間のすべての日付をリストする方法について説明します。

数式を使用して2つの日付間のすべての日付をリストする

Kutools for Excelを使用して2つの日付間のすべての日付をリストする good idea3

VBAを使用して2つの日付間のすべての日付をリストする


数式を使用して2つの日付間のすべての日付をリストする

ここでは、Excelで指定された2つの日付間のすべての日付を迅速にリストできる数式を紹介します。

1. 開始日と終了日を2つのセルに入力します。ここでは、A1とA2に入力します。スクリーンショットをご覧ください:
type the starting and ending dates

2. 次に、C1セルに以下の数式を入力します =A1+1 その後、 Enter キーを押します。スクリーンショットをご覧ください:
enter a formula to get the first date

3. 次に、C2セルに次の数式 =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1) を入力し、オートフィルハンドルを下にドラッグして、空白セルが表示されるまで続けます。スクリーンショットをご覧ください:

apply another formula to get the second date       drag and fill this formula to other cells

これで、指定された2つの日付間のすべての日付が列にリストされます。
all the dates between two given dates are listed

注意:

上記の数式では、A1は開始日、A2は終了日、C1は日付範囲内の最初の日付です。


Kutools for Excelを使用して2つの日付間のすべての日付をリストする

実際、Kutools for Excel(便利なアドインツール)をインストールしている場合、「ランダムデータを挿入する」機能を使ってこの問題を解決することもできます。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

無料で Kutools for Excelをインストールした後、以下のように操作してください:

1. 2つの日付間の日付をリストしたい列を選択し、次にクリックします Kutools > 挿入 > ランダムデータを挿入するスクリーンショットをご覧ください:
click Insert Random Data feature of kutools

2. 次に、 ランダムデータを挿入する ダイアログで、クリックします 日付 タブ、そして「From」と「To」リストから開始日と終了日を選択し、「平日」「週末」「一意の値を生成する」チェックボックスを必ずチェックしてください。スクリーンショットをご覧ください: From and To list, then remember to check 平日, 週末 and 一意の値を生成する スクリーンショットをご覧ください:
set options in the dialog box

3. ダイアログを閉じるには「OK」をクリックすると、別のKutools for Excelダイアログがポップアップしますので、「はい」をクリックします。これで、開始日と終了日の間の日付がリストされます。スクリーンショットをご覧ください:

click ok in the prompt box           the dates between two dates are listed

4. ここで、日付リストを必要な順序で並べ替える必要があります。「 データ」>「 古い順から新しい順へ」をクリックします。これで、日付が最も古い日付から最新の日付に並べ替えられます。スクリーンショットをご覧ください:

Data > Sort Oldest to Newest          the dates are sorted from oldest date to newest

ランダムデータ挿入ユーティリティを使用すると、ランダムな整数、ランダムな文字列、ランダムな時間などを挿入することもできます。「ランダムデータ挿入」の詳細はこちらをクリックしてください。


VBAを使用して2つの日付間のすべての日付をリストする

マクロコードに興味がある場合は、以下のVBAを使用して、Excelで指定された2つの日付間のすべての日付をリストすることができます。

1. 開始日と終了日を2つのセルに入力します。ここでは、A1とB1に入力します。スクリーンショットをご覧ください:
doc-list-all-dates-between-two-dates-6

2. Alt + F11キーを押してMicrosoft Visual Basic for Applicationsウィンドウを開きます。

3. 次に、 「挿入」「モジュール」をクリックし、以下のVBAコードをコピーして、開いたモジュールウィンドウに貼り付けます。

VBA: 2つの日付間のすべての日付をリストする。

Sub WriteDates()
	'Updateby20150305
	Dim rng As Range
	Dim StartRng As Range
	Dim EndRng As Range
	Dim OutRng As Range
	Dim StartValue As Variant
	Dim EndValue As Variant
	xTitleId     = "KutoolsforExcel"
	Set StartRng = Application.Selection
	Set StartRng = Application.InputBox("Start Range (single cell):", xTitleId, StartRng.Address, Type: = 8)
	Set EndRng   = Application.InputBox("End Range (single cell):", xTitleId, Type: = 8)
	Set OutRng   = Application.InputBox("Out put to (single cell):", xTitleId, Type: = 8)
	Set OutRng   = OutRng.Range("A1")
	StartValue   = StartRng.Range("A1").Value
	EndValue     = EndRng.Range("A1").Value
	If EndValue - StartValue <= 0 Then
		Exit Sub
		End If
		ColIndex = 0
		For i = StartValue To EndValue
			OutRng.Offset(ColIndex, 0) = i
			ColIndex = ColIndex + 1
		Next
	End Sub

4. 「実行」または F5をクリックしてVBAを実行すると、開始日を選択するためのダイアログがポップアップします。「OK」をクリックし、次に表示されるダイアログで終了日を選択します。スクリーンショットをご覧ください:

vba code to select the start date          vba code to select the end date

5. 「OK」をクリックし、日付を出力するセルを選択してから「OK」をクリックします。これで、2つの日付間のすべての日付がリストされます。スクリーンショットをご覧ください:

select a cell to put out the dates         all the dates between two dates are listed

注意: このVBAによって生成されるリストには、開始日と終了日が含まれます。

2つの日付間のすべての日付をリストする

 

関連記事:


最高のオフィス生産性ツール

🤖 Kutools AI Aide:データ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データを分析してグラフを生成  |  Kutools Functions を呼び出す
人気機能重複の検索・ハイライト・マーキング   |  空白行を削除   |  データを失わず列やセルを統合   |   丸める ...
スーパーLOOKUP複数条件VLOOKUP   複数値VLOOKUP  |  複数シートの検索  |  ファジーマッチ ....
高度なドロップダウンリストすばやくドロップダウンリストを作成   |  依存型ドロップダウンリスト   |  複数選択ドロップダウンリスト ....
列の管理:特定数の列を追加  | 列を移動  | 非表示列の表示状態を切り替え |  範囲と列の比較 ...
注目機能グリッドフォーカス   |  デザインビュー  |  強化された数式バー   ワークブック&ワークシートの管理   |  オートテキスト ライブラリ (Auto Text)   |  日付ピッカー   |  データの統合   |  セルの暗号化/復号化    リスト送信で電子メールを送信   |  スーパーフィルター   |   特殊フィルタ(太字/斜体/取り消し線でフィルタ...)
トップ15ツールセット12 種類のテキストツールテキストの追加特定の文字を削除など)  |  50 種以上のグラフ タイプガントチャートなど)  |  40を超える実用的な 数式誕生日に基づいて年齢を計算する、など)  |  19種の 挿入ツールQRコードの挿入パスから画像の挿入など)  |  12種類の 変換ツール単語に変換する通貨変換など)  |  7つの 結合&分割ツール高度な行のマージセルの分割など)  |  ...さらに多数
お好きな言語でKutoolsを使用できます ― 英語、スペイン語、ドイツ語、フランス語、中国語など40以上に対応!

Kutools for ExcelでExcelスキルを強化し、かつてない効率を体験しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と時間短縮を実現します。最も必要な機能を今すぐ取得...


Office TabはOfficeにタブ表示を追加し、作業効率を大幅に向上させます

  • Word、Excel、PowerPointでタブ編集とタブ閲覧を有効にします
  • 同じウィンドウ内の新しいタブで複数のドキュメントを開いたり作成したりできます。新しいウィンドウを開く必要はありません。
  • 生産性が50%向上し、1日に何百回ものマウスクリックも削減できます!