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

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

Excelで締め切りまでの残り日数を計算するにはどうすればよいですか?

Author Xiaoyang Last modified

日常業務やプロジェクト管理において、締め切りまでに残されている日数を追跡することは非常に重要です。例えば、締め切り日付のリストがあり、タスク、課題、契約満了、またはプロジェクトのマイルストーンの残り日数を監視する必要がある場合があります。残り日数を効率的に計算することで、重要な日付を見逃すことなく、スケジュール管理と時間管理の改善が可能になります。この記事では、Excelで締め切りまでの残り日数を計算する実用的な方法を説明し、さまざまなニーズに対応するステップバイステップのガイドラインとソリューションを提供します。


数式を使用して締め切りまでの残り日数を計算する

各締め切りまでの残り日数を迅速に確認したい場合、Excelではシンプルな数式による解決策が提供されています。これらは、静的なリストや現在の日付に基づいて定期的に再計算が必要な場合に適しています。

1. 結果を表示したい空白セル(たとえば、A列の締め切り日の隣にあるB列)に、以下の数式を入力します:

=A2-TODAY()

この数式は、今日の日付(TODAY()関数が返す値)をセルA2の締め切り日から引きます。結果として得られるのは残りの日数です。

数式を入力後、下方向にフィルハンドルをドラッグして、以下のように他の締め切り日を含む行にもこの計算を適用します:

2. 計算結果が数字として表示されるように、結果セルを「標準」形式に設定します。ホームタブをクリックして、数値の書式ドロップダウンメニューを開き、「標準」を選択します。以下を参照してください:

a screenshot of changing the format of the result cells

注意事項と実用的なヒント:

  • 締め切り日がすでに過ぎている場合(今日より前の日付の場合)、結果は負の数となり、どれだけ期限が過ぎているかを示します。
  • 負の値を表示したくない場合(たとえば、期限切れのタスクに対して0を表示したい場合)、次の代替数式を使用してください:
=MAX(0,A2-TODAY())

この数式は、計算された残り日数を0と比較し、大きい方を表示します。これにより、負の数は0に置き換えられます。

a screenshot showing how to replace the negative numbers with0

このアプローチは、進行中のタスクや今後の契約満了など、残り日数(非負の日数)のみに関心がある場合に特に役立ちます。

  • 締め切り日が有効なExcelの日付値であることを常に確認してください。不正またはテキスト形式の日付は、計算エラーや予期しない結果を引き起こします。
  • TODAY()を使用した数式は、ワークシートを開いたり再計算するたびに自動的に更新されます。
  • 営業日(週末や休日を除く)での作業を希望する場合は、異なるシナリオのためにNETWORKDAYS関数の使用を検討してください。

締め切りリストを定期的に見直し、残り日数を再計算することで、締め切りに対する対応力を大幅に向上させることができます。さらに高度な自動化や視覚的なリマインダーが必要な場合は、以下のVBAソリューションをご覧ください。


VBAコード - 残り日数の計算を自動化し、オプションで期限切れの締め切りを強調表示または通知する

多数の締め切りリストを扱うユーザー、または手順を合理化したいユーザーにとって、VBAを使用して残り日数の計算を自動化すると、手動操作を大幅に削減できます。この方法は、締め切りが過ぎたものを自動的にハイライト表示したり、通知を送信するなど、Excelに追加のアクションを行わせたい場合に特に価値があります。これにより、重要な日付を見逃すことはありません。

1. この方法を使用するには、開発者タブが表示されていない場合は有効にしてください(ファイル > オプション > リボンのユーザー設定 > 開発者にチェックを入れる)。開発者 > Visual BasicをクリックしてVBAエディターを開きます。VBAウィンドウで、挿入 > モジュールをクリックし、以下のVBAコードを入力します:

Sub CalculateAndHighlightDaysLeft()
    Dim ws As Worksheet
    Dim lastRow As Long
    Dim i As Long
    Dim deadlineCol As String
    Dim resultCol As String
    Dim daysLeft As Long
    Dim cell As Range
    
    On Error Resume Next
    
    ' Configure columns as needed below:
    deadlineCol = "A" ' Column containing deadlines
    resultCol = "B" ' Column to place days left calculation
    
    Set ws = ActiveSheet
    lastRow = ws.Cells(ws.Rows.Count, deadlineCol).End(xlUp).Row
    
    For i = 2 To lastRow
        If IsDate(ws.Cells(i, deadlineCol).Value) Then
            daysLeft = ws.Cells(i, deadlineCol).Value - Date
            ws.Cells(i, resultCol).Value = daysLeft
            
            ' Highlight overdue deadlines
            If daysLeft < 0 Then
                ws.Cells(i, deadlineCol).Interior.Color = RGB(255, 185, 185) ' Light red fill
                
                ' Optionally show popup message for overdue (uncomment next line if desired)
                ' MsgBox "Row " & i & " is overdue! Deadline: " & ws.Cells(i, deadlineCol).Text, vbExclamation, "KutoolsforExcel"
            Else
                ws.Cells(i, deadlineCol).Interior.Pattern = xlNone
            End If
        Else
            ws.Cells(i, resultCol).Value = "Invalid date"
            ws.Cells(i, deadlineCol).Interior.Color = RGB(255, 235, 156) ' Yellow fill for invalid data
        End If
    Next i
End Sub

2. VBAエディターを閉じ、ワークシートに戻り、Alt + F8を押します。表示されるダイアログで、CalculateAndHighlightDaysLeftを選択し、実行をクリックします。コードはA列(2行目以降)の各日付を処理し、B列に残り日数を書き込みます。締め切りが過ぎたものは(今日よりも前の日付の場合)、薄い赤色で自動的に強調表示されます。無効な日付のセルは黄色で塗りつぶされ、結果列に「無効な日付」と表示されます。

ヒント:
  • 締め切りが別の列にある場合は、コード内のdeadlineColおよびresultColを変更できます。

最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件での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でタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

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