KutoolsforOffice— 1 つのソリューション、5 つの強力なツール。少ない労力で大きな成果。

Excel で指定された日付から四半期の開始日または終了日を計算するには、どうすればよいですか?

著者Xiaoyang変更日

ビジネスデータ、財務記録、あるいは四半期単位で整理された計画タスクを扱う際には、指定された日付リストについて各四半期の開始日や終了日を特定する必要が頻繁に生じます。たとえば、スプレッドシートに記録された取引やイベントごとに、対応する四半期の開始日と終了日を素早く取得したい場面がよくあります。Excel にはこうした目的のための直接的な関数は用意されていませんが、実用的で効率的な解決方法があります。以下で紹介する手法を使えば、リスト内の各日付に対応する四半期の境界日をシームレスに算出でき、レポート作成や分析における一貫性と正確性を確実に保てます。これらの手順は、期間ベースの集計、レポート締切日の設定、またはデータを会計四半期に合わせる作業に特に役立ちます。ここで説明するソリューションには、数式と VBA コードの両方が含まれており、迅速な手動処理からバッチ自動化まで、さまざまなニーズに対応します。

日付に基づいて四半期の開始日または終了日を計算

数式を使用して指定された日付に基づき四半期の開始日または終了日を計算する
VBA マクロ:日付範囲の四半期開始日と終了日を自動的に計算して入力する


青色の右向き矢印の吹き出し数式を使用して指定された日付に基づき四半期の開始日または終了日を計算する

指定された日付が属する四半期の開始日または終了日を取得するには、Excel で簡単な数式を使えばすぐに求められます。手動での照合なしに重要な期間を素早く参照したいときや、ある程度の規模のリストに適用する際に特に便利です。

以下の手順では、Excel の数式を使って四半期の境界を効率的に計算する方法をご紹介します。このアプローチは、VBA やアドインを使わず、データの変更に応じて結果を動的に更新する数式ベースのワークフローを好む方に最適です。ただし、数千件のエントリや複雑で可変な範囲を含むデータセットの場合は、自動化またはスクリプトによる方法の方がスケーラビリティに優れる可能性があります。

日付に基づいて四半期の開始日を計算するには:

1.四半期の開始日を表示したい空白セル(たとえば、日付が A 列にある場合はセル B2)をクリックします。
2.次の数式を入力してください:

=DATE(YEAR(A2),FLOOR(MONTH(A2)-1,3)+1,1)

3.Enterキーを押して確定します。その後、セルの右下隅にあるフィルハンドル(小さな四角)を下方向にドラッグして、他の行にも数式を適用しましょう。これにより、A 列の各日付に対応する四半期の開始日が自動で計算されます。
ヒント:セル参照が正しいことを確認してください(例:日付の位置に応じて A2、A3 など)。結果を正しく表示するには、結果セルを日付形式に設定することをおすすめします。

数式を使って四半期の開始日を計算

この数式は、指定された日付から年を抽出し、四半期の開始月を算出することで、常に当該四半期の初日を返します。

日付に基づいて四半期の終了日を計算するには:

1.四半期の終了日を表示したい空白セル(例:セル C2)を選択します。
2.次の数式を入力します:

=DATE(YEAR(A2),((INT((MONTH(A2)-1)/3)+1)*3)+1,1)-1

3.Enterキーを押して適用します。データに沿ってフィルハンドルを下方向にドラッグし、すべての行で四半期の終了日を自動計算します。
この数式は、翌四半期の初日を求めてから1 を引くことで、各日付に対応する四半期の実際の最終日を正確に算出します。

数式を使って四半期の終了日を計算

ワークシートに多数の日付が含まれている場合、データをExcel テーブルに変換すれば、新しい行に数式が自動的に適用されます。また、結果を正しく表示するには、セルの書式を「日付」に設定してください。

注意点とヒント:
- 両方の数式は、元の日付が有効なExcel 日付であることを前提としています。不正な日付やテキスト形式の日付を入力すると、エラーが発生する可能性があります。
- 日付ではなくシリアル値が表示される場合は、結果セルの書式を「短縮日付」または「長文日付」に設定してください(セルの書式設定ダイアログから変更可能)。
- 想定外の結果が得られる場合は、お使いの地域に応じた日付設定を確認してください。
- 1 月以外の月から始まる会計年度四半期を使用している場合は、数式をカスタマイズする必要があります。

見慣れない #VALUE! エラーが表示された場合は、ソース範囲内に空白セルや日付以外のデータが含まれていないかご確認ください。大量のデータを一括で更新したい場合や、異なる日付範囲で自動計算を行いたい場合は、以下でご紹介する VBA マクロの使用をご検討ください。


青色の右向き矢印の吹き出し VBA マクロ:日付範囲の四半期開始日と終了日を自動的に計算して入力する

大規模または可変的な日付範囲について四半期の開始日と終了日を頻繁に計算する必要がある場合は、VBA マクロを使えば高速かつ自動的に処理できます。この方法は大規模なスプレッドシートで特に効果的で、動的範囲にも対応し、手動入力やエラーを最小限に抑えます。ただし、マクロを有効にする必要がありますので、厳格なセキュリティポリシーが適用されている環境では利用できない場合があります。

メリット:大規模データセットの処理を自動化し、動的範囲にも対応。手動操作に伴うリスクを大幅に軽減します。
制限事項:マクロ対応ブックと VBA エディタに関する基本的な知識が必要です。また、一部の組織ではマクロの使用が制限されている場合があります。

マクロの設定と使用手順は次のとおりです:

1.Alt + F11キーを押して、Microsoft Visual Basic for Applicationsエディタを開きます。
2.VBA ウィンドウで、挿入 > 標準モジュールをクリックし、新しいモジュールを作成します。
3. 次の VBA コードをモジュールウィンドウにコピー&ペーストします:

Sub FillQuarterStartEndDates()
    Dim rng As Range
    Dim cell As Range
    Dim startCol As Long
    Dim endCol As Long
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set rng = Application.Selection
    Set rng = Application.InputBox("Select the date range to process:", xTitleId, rng.Address, Type:=8)
    
    If rng Is Nothing Then Exit Sub
    
    startCol = rng.Columns(rng.Columns.Count).Column + 1
    endCol = rng.Columns(rng.Columns.Count).Column + 2
    
    ' Add headers if necessary
    If rng.Rows(1).Row = 1 Or rng.Offset(-1, 0).Cells(1, 1).Value = "" Then
        rng.Cells(1, rng.Columns.Count + 1).Value = "Quarter Start Date"
        rng.Cells(1, rng.Columns.Count + 2).Value = "Quarter End Date"
    End If
    
    For Each cell In rng
        If IsDate(cell.Value) Then
            ' Quarter start date
            cell.Offset(0, rng.Columns.Count).Value = DateSerial(Year(cell.Value), ((Int((Month(cell.Value) - 1) / 3)) * 3) + 1, 1)
            
            ' Quarter end date
            cell.Offset(0, rng.Columns.Count + 1).Value = DateSerial(Year(cell.Value), (Int((Month(cell.Value) - 1) / 3) + 1) * 3 + 1, 1) - 1
        Else
            cell.Offset(0, rng.Columns.Count).Value = "N/A"
            cell.Offset(0, rng.Columns.Count + 1).Value = "N/A"
        End If
    Next cell
End Sub

4.Excel に戻り、処理したい日付セルの範囲を選択します。
5.F5キーを押すか、実行ボタンをクリックします。
6.ダイアログボックスで、計算対象の正確な日付範囲を確認または選択し、OK をクリックします。
マクロは自動的に、選択した範囲の隣に四半期の開始日用と終了日用の2 つの新しい列を挿入し、計算結果を入力します。日付以外のエントリには「N/A」と表示されます。

ご注意:
- 誤って上書きしないよう、マクロを実行する前に必ずデータをバックアップしてください。
- マクロは無効な日付や空のセルを自動で識別し、「N/A」とマークするため、問題をすぐに発見できます。
- エラーが発生したりマクロが実行されない場合は、Excel の設定でマクロが有効になっていること、および新しい列への書き込みをブロックする保護シートがかかっていないことを確認してください。
- 1 月以外の月から始まる会計年度の四半期ロジックを使用する場合は、コードをそれに応じて調整する必要があります。

上記のいずれの方法も、特定のワークフローに基づいて四半期の期間境界を正確に生成できます。小規模なデータや迅速な参照には数式を、大規模なデータや繰り返しタスクの自動化にはマクロをご活用ください。問題や予期しない結果が生じた場合は、日付の書式設定と選択範囲を再度ご確認ください。一貫したデータ構造は、手動・自動を問わずエラーを減らし、作業効率を高めます。

kutools for excel AI のスクリーンショット

KUTOOLS AI でExcel の魔法を解き放ちましょう

  • スマート実行:セル操作、データ分析、チャート作成をすべてシンプルなコマンドで実現します。
  • カスタム数式:ワークフローの効率化に役立つ、あなただけのカスタマイズ数式を生成します。
  • VBA コーディング:VBA コードを簡単に記述・実装できます。
  • 数式の解釈:複雑な数式が簡単に理解できます。
  • テキスト翻訳:スプレッドシート内で言語の壁を乗り越えましょう!
AI 搭載のツールでExcel の機能をさらに強化しましょう。今すぐダウンロードして、これまでにない効率を体験してください!

最高の Office 業務効率化ツール

🤖KUTOOLS AI アシスタント:次に基づいてデータ分析を革新します:インテリジェント実行     コード生成  カスタム数式作成    データ分析とチャート生成  拡張機能呼び出し
人気の機能検索・ハイライト、または重複をマーキング     空白行を削除する     データを失うことなく列の結合またはセルを     数式を使用しない四捨五入...
スーパー LOOKUP複数条件 VLookup    複数値 VLookup     複数シート間 VLookup      ファジーマッチ....
高度なドロップダウンリストドロップダウンリストをすばやく作成     連動型ドロップダウンリスト     複数選択可能なドロップダウンリスト....
列マネージャー指定した数の列を追加列の移動非表示列の表示状態を切り替え範囲および列の比較...
注目の機能グリッドフォーカス     デザインビュー   強化された数式バー    ワークブックとシートマネージャー     リソースライブラリ(オートテキスト)  日付ピッカー     ワークシートの統合    暗号化/セルの復号化    リストからメール送信     スーパーフィルター      特殊フィルタ(太字のフォントを持つセルをフィルタリング/斜体/取り消し線。。。) 。。。
トップ15 ツールセット12 テキストツールテキストの追加特定の文字を削除、...)   50+チャートタイプガントチャート、...)   40+実用的関数誕生日に基づいて年齢を計算します、...)   19 挿入ツールQR コードを挿入パスから画像を挿入、...)   12 変換ツール単語に変換する為替レートの変換、...)   7 結合と分割ツール高度な行のマージセルの分割、...)さらに多数
Kutools はお好みの言語でご利用いただけます。英語、スペイン語、ドイツ語、フランス語、中国語、および40+の他の言語をサポートしています!

Kutools for Excel でExcel スキルを強化し、これまでにない効率を体験しましょう。Kutools for Excel は、生産性を高め、時間を大幅に節約できる高度な機能を300 以上提供します。最も必要な機能を今すぐ入手するにはこちらをクリック。。。


Office Tab は Office にタブインターフェースをもたらし、作業を大幅に簡単にします

  • Word、Excel、PowerPoint でタブを使った編集と閲覧を有効にします。Publisher、Access、Visio、Project でもご利用いただけます。
  • 複数のドキュメントを、新しいウィンドウではなく、同じウィンドウ内の新しいタブで開いたり作成したりできます。
  • 日々の生産性を50%も向上させ、毎日数百回ものマウスクリックを削減します!

すべてのKutools アドインが、たった1 つのインストーラーで完結。

Kutools for Officeスイートには、Excel ・Word ・Outlook ・PowerPoint 用のアドインと Office Tab Pro が含まれており、複数の Office アプリを横断して作業するチームに最適です。

ExcelWordOutlookTabsPowerPoint
  • オールインワンスイート— Excel、Word、Outlook、PowerPoint 用アドイン+Office Tab Pro
  • インストーラー1 つ、ライセンス1 つ— 数分でセットアップ可能(MSI 対応)
  • 連携してさらにパワーアップ— Office アプリ全体で生産性が向上
  • 30 日間のフル機能トライアル— 登録不要、クレジットカード不要
  • 最高のお得感— 個別アドイン購入よりお得