ExcelのDATE関数の使い方
知っておくべきこと
- DATE 関数の構文は =DATE(年、月、日) です。例: =DATE(1986,3,18)
- 年、月、日を他のセルから取得できます。例: =DATE(A2,B2,C2)
- 負の引数を使用して月と日を減算します。例: =DATE(2020,-2, -15)
この記事では、Excel のすべてのバージョンで Excel DATE 関数を使用する方法について説明します。
DATE 関数の構文と引数
Excel の DATE 関数は、3 つの値を組み合わせて日付を作成します。年、月、日を指定すると、Excel はシリアル番号を生成し、通常の日付として書式設定できます。
Excel で日付を入力する一般的な方法は、日付全体を 1 つのセルに書き込むことですが、多くの情報を扱う場合には不便です。DATE 関数は、日付が通常のテキストと組み合わされている場合や複数のセルにまたがっている場合など、日付が正しくフォーマットされていない場合に役立ちます。
これは、Excel が正しく処理するために、日付関数のすべてのインスタンスを記述する必要がある方法です。
=DATE (年、月、日)
- 年: 年を 1 ~ 4 桁の数字で入力するか、ワークシート内のデータの場所へのセル参照を入力します。年引数が必要です。
- 月: 月を 1 ~ 12 (1 月 ~ 12 月) の正または負の整数で入力するか、データの場所へのセル参照を入力します。月の引数が必要です。
- 日: 月の日を 1 から 31 までの正または負の整数として入力するか、データの場所へのセル参照を入力します。日の引数が必要です。
追加の日付機能情報
年、月、日の引数について知っておくべきその他の重要事項を次に示します。
年
- 既定では、Excel は 1900 年の日付システムを使用します。つまり、DATE 関数は 1900 年より古いものに対して年を正しく表示しません。
- 年の値として0を入力すると 1900 を入力したことになり、 1は 1901 年、105は 2005 年などになります。
月
- 月の値が12を超えると、その月数が年の値に追加されます。13では、日付に 1 年と 1 か月が加算されます。
- 月の値として負の数を使用すると、その月数に 1 を加えた値が年の最初の月から減算されます。
日
- 日の値がその月の日数を超える場合、超過した日数は翌月の最初の日に追加されます。
- 負の日の値は、月の最初の日からその日数に 1 を加えた値を減算します。
DATE関数の例
以下に、DATE 関数を使用する実際の数式をいくつか示します。
他のセルの年、月、日
=DATE(A2,B2,C2)
この DATE 関数の例では、年に A2、月に B2、日に C2 を使用しています。
式の年と別のセルの月と日
=DATE(2020,A2,B2)
データの取得方法を混在させることもできます。この例では、2020 を年の引数にしていますが、月と日は他のセルから取得されています。
負の月引数を使用した月の減算
=DATE(2020,-2,15)
ここでは、月のスペースに負の数を使用しています。これは、2020 年 1 月から始まる、1 年を通して順方向ではなく逆方向に移動します (式に 2020 が含まれているため)。この DATE 式は 10/15/2019 を生成します。
負の日の引数を使用した日数の減算
=DATE(2020,1,-5)
負の数がない場合、この日付は 2020 年 1 月 5 日として計算されます。ただし、負の日の値は 2020 年 1 月 1 日から 5 日 (プラス 1) を引いているため、日付は 2019 年 12 月 26 日になります。
大きな日と月の引数
=DATE(2020,19,50)
この例は、上記のルールのいくつかを組み合わせたものです。月が 12 を超えるため、年の値は 2020 年から増加し、日の値が任意の月の日数を超えるため、計算される月も変わります。この DATE 式は、2021 年 8 月 19 日を生成します。
別のセルに 10 年間の日付を追加する
=DATE(YEAR(A2)+10,MONTH(A2),DAY(A2))
Excel の DATE 関数は、既存の日付に時間を追加するなど、他の日付でも使用できます。この例では、既存の日付から 10 年後の日付を表示したいと考えています。既存の日付はセル E2 にあるため、E2 から年、月、日を抽出するだけでなく、年の値に 10 を加算する方法でこの数式を記述する必要があります。
年の日数を計算する
=A2-DATE(YEAR(A2),1,0)
これは、セル E10 の日付が年に何日あるかを計算する DATE 関数の同様の例です。たとえば、2020 年 1 月 1 日は年の 1 日、1 月 5 日は 5 日などです。この例では、E10 は 2018 年 8 月 4 日であるため、結果は 216 になります。
日付をテキストとして適切にフォーマットされた日付に変換する
=DATE(LEFT(A2,4),MID(A2,5,2),RIGHT(A2,2))
扱っているセルに完全な日付が含まれているが、20200417 のようにテキストとして書式設定されている場合、この DATE 数式を LEFT、MID、および RIGHT 関数と組み合わせて使用して、セルを適切に書式設定された日付に変換できます。
これは、左から最初の 4 桁を LEFT(A2,4) で抽出し、MID(A2,5,2) を介して 5 文字目の中央から 2 桁を取得し、それを最後の 2 桁と組み合わせます。 RIGHT(A2,2) で右。計算された日付は 2020 年 4 月 17 日です。
詳細については、Excel の LEFT、RIGHT、および MID 関数の使用に関する記事を参照してください。
今年と月の特定の日に
=DATE(YEAR(TODAY()), MONTH(TODAY()), 5)
TODAY 関数を DATE 関数と共に使用して、今日に関する情報を取得できます。たとえば、毎月 5 日に請求書を支払うように注意するには、この DATE 数式を使用して現在の年と月を自動的に追加しますが、5 (またはセル参照) を日の値として配置します。
月がテキストの場合の日付の計算
=DATE(A2,MONTH(1&B2),C2)
6 月のように、日付に月のテキスト バージョンが含まれることがあります。Excel はこれを数値として認識しないため、MONTH 関数を使用して数値に変換する必要があります。これは、DATE 式の月の位置に MONTH(1&B2) として直接埋め込まれています。
日付のように見えない日付を修正する
DATE 関数の結果が日付ではなく一連の数値を示している場合は、セルを日付として書式設定する必要があります。
たとえば、次のスクリーンショットのように、通常の日付ではなく、43938 のような大きな数字が表示される場合があります。
セルを再フォーマットするには、セルを選択し、[数値]グループ項目からドロップダウン メニューを選択してから、日付形式のいずれかを選択します。
コメントを残す