問題
Excelを使用して、1か月前の初日と最終日を表示する関数を作成してください。以下が入力例です。
<入力>
2023/10/31
2023/10/31
2024/01/28
2024/01/28
2024/02/28
2024/02/28
<出力>
2023/09/01
2023/09/30
2023/12/01
2023/12/31
2024/01/01
2024/01/31
ヒント
この変換を行うために、月末の日付を計算するEOMONTH
関数を使用します。
<最終日を表示する方法>
- 当月の最終日の計算式:
=EOMONTH(与えられた日付, 0)
- 1か月前の最終日の計算式:
=EOMONTH(与えられた日付, -1)
この関数は入力された日付の1か月前の末日を直接取得します。
また、初日を求める式もこれらのEOMONTH
関数を活用します。
<初日を表示する方法>
- 当月の初日の計算式:
=EOMONTH( 与えられた日付 ,-1)+1
- 1か月前の初日の計算式:
=EOMONTH( 与えられた日付 ,-2)+1
これは、EOMONTH
関数を使用して入力された日付の2か月前の末日を取得し、そこから1日を加えることで1か月前の初日を得ます。
練習用の表
実際にExcelを使用して、1か月前の初日と最終日を表示する関数を作成してみましょう。
入力 | 期待値 | 関数 | 結果 |
---|---|---|---|
2023/10/31 | 2023/09/01 | ||
2023/10/31 | 2023/09/30 | ||
2024/01/28 | 2023/12/01 | ||
2024/01/28 | 2023/12/31 | ||
2024/02/28 | 2024/01/01 | ||
2024/02/28 | 2024/01/31 |
🔗(閲覧専用)練習用のEXCELはこちら ← ダウンロードできます
答え
それでは、Excelを使用して確認してみましょう。
入力 | 期待値 | 関数 | 結果 |
---|---|---|---|
2023/10/31 | 2023/09/01 | =EOMONTH(A2,-2)+1 | OK |
2023/10/31 | 2023/09/30 | =EOMONTH(A3, -1) | OK |
2024/01/28 | 2023/12/01 | =EOMONTH(A4,-2)+1 | OK |
2024/01/28 | 2023/12/31 | =EOMONTH(A5, -1) | OK |
2024/02/28 | 2024/01/01 | =EOMONTH(A6,-2)+1 | OK |
2024/02/28 | 2024/01/31 | =EOMONTH(A7, -1) | OK |
実際のExcelでの具体的な数値は、以下の通りです。
入力 | 期待値 | 関数 | 結果 |
---|---|---|---|
2023/10/31 | 2023/09/01 | 2023/09/01 | OK |
2023/10/31 | 2023/09/30 | 2023/09/30 | OK |
2024/01/28 | 2023/12/01 | 2023/12/01 | OK |
2024/01/28 | 2023/12/31 | 2023/12/31 | OK |
2024/02/28 | 2024/01/01 | 2024/01/01 | OK |
2024/02/28 | 2024/01/31 | 2024/01/31 | OK |