Excelで2つの日付間のすべての日付をリストするにはどうすればよいですか?
特定の開始日と終了日がある場合、Excelでこれら2つの指定された日付間のすべての日付をリストする必要があるかもしれません。このチュートリアルでは、Excelで2つの日付間のすべての日付をリストする方法について説明します。
Kutools for Excelを使用して2つの日付間のすべての日付をリストする
数式を使用して2つの日付間のすべての日付をリストする
ここでは、Excelで指定された2つの日付間のすべての日付を迅速にリストできる数式を紹介します。
1. 開始日と終了日を2つのセルに入力します。ここでは、A1とA2に入力します。スクリーンショットをご覧ください:
2. 次に、C1セルに以下の数式を入力します =A1+1 その後、 Enter キーを押します。スクリーンショットをご覧ください:
3. 次に、C2セルに次の数式 =IF($A$1+ROW(A1)>=$A$2-1,"",C1+1) を入力し、オートフィルハンドルを下にドラッグして、空白セルが表示されるまで続けます。スクリーンショットをご覧ください:
これで、指定された2つの日付間のすべての日付が列にリストされます。
注意:
上記の数式では、A1は開始日、A2は終了日、C1は日付範囲内の最初の日付です。
Kutools for Excelを使用して2つの日付間のすべての日付をリストする
実際、Kutools for Excel(便利なアドインツール)をインストールしている場合、「ランダムデータを挿入する」機能を使ってこの問題を解決することもできます。
無料で Kutools for Excelをインストールした後、以下のように操作してください:
1. 2つの日付間の日付をリストしたい列を選択し、次にクリックします Kutools > 挿入 > ランダムデータを挿入するスクリーンショットをご覧ください:
2. 次に、 ランダムデータを挿入する ダイアログで、クリックします 日付 タブ、そして「From」と「To」リストから開始日と終了日を選択し、「平日」「週末」「一意の値を生成する」チェックボックスを必ずチェックしてください。スクリーンショットをご覧ください: From and To list, then remember to check 平日, 週末 and 一意の値を生成する スクリーンショットをご覧ください:
3. ダイアログを閉じるには「OK」をクリックすると、別のKutools for Excelダイアログがポップアップしますので、「はい」をクリックします。これで、開始日と終了日の間の日付がリストされます。スクリーンショットをご覧ください:
4. ここで、日付リストを必要な順序で並べ替える必要があります。「 データ」>「 古い順から新しい順へ」をクリックします。これで、日付が最も古い日付から最新の日付に並べ替えられます。スクリーンショットをご覧ください:
ランダムデータ挿入ユーティリティを使用すると、ランダムな整数、ランダムな文字列、ランダムな時間などを挿入することもできます。「ランダムデータ挿入」の詳細はこちらをクリックしてください。
VBAを使用して2つの日付間のすべての日付をリストする
マクロコードに興味がある場合は、以下のVBAを使用して、Excelで指定された2つの日付間のすべての日付をリストすることができます。
1. 開始日と終了日を2つのセルに入力します。ここでは、A1とB1に入力します。スクリーンショットをご覧ください:
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」をクリックし、次に表示されるダイアログで終了日を選択します。スクリーンショットをご覧ください:
5. 「OK」をクリックし、日付を出力するセルを選択してから「OK」をクリックします。これで、2つの日付間のすべての日付がリストされます。スクリーンショットをご覧ください:
注意: このVBAによって生成されるリストには、開始日と終了日が含まれます。
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日間フル機能お試し —— 登録やクレジットカード不要
- コストパフォーマンス最適 —— 個別購入よりお得