Excelで月ごとの日数を使用する際に関数を使って算出していますか?
この記事はDATE関数を使用して月ごとの日数を取得方法を解説します。
DATE関数ってどんな関数?
DATE関数は年、月、日から日付を求める関数です。
日付とはExcel上では画像のようにシリアル値を求めています。
シリアル値の表示書式で普段見ているセル上の書式となって表現されています。
シリアル値を使ってるので、いろんな書式で表現できる。
日付の書式って海外だと違いますよね。日本でも/使ったり漢字を使用したりします。いろんな書式に出来るのはシリアル値を使用しているおかげです。
DATE関数の使い方は下記の通りです。
=DATE(年,月,日)
=DATE(2020,6,27) これで2020/6/27のシリアル値を取得することが出来ます。
実際には数値を入れるのではなくセル参照を使用していきます。
次に実際の使用例を解説していきます。
実際の使用例
画像のように年と月を入力する場所が有るとします。
(実際の入力はリスト選択が多いです。)
実際にこの設定の期間2020/06/01~2020/06/30の二つの情報をDATE関数を使用して取得します。
月始めの取得
まず、開始日ですが下記のように設定して取得できます。
=DATE(A2,B2,1)
月始めはどの月でも1なので簡単ですね。
最終日の取得
次は問題の最終日です。
最終日は月によって違うし、2月はうるう年もあるので月始めのような固定値は使えません。
やり方はセル参照プラス数値の計算をさせる必要が有ります。
数値の計算というのは具体的には下記のようにします。
=DATE(A2,B2+1,1)
月の部分をプラス1することで次の月の初日(2020/07/01)を取得することが出来ます。
この関数に日付をマイナス1すると最終日が取得できます。
つまりこのような形になります。
=DATE(A2,B2+1,0)
月の日数の求め方
月の日数の取得方法ですが、実際にはDATE関数のみでは無理です。
先ほどDATE関数を使用して最終日の取得を行うことが出来ました。
後は日付を抽出するだけです!
DATE関数にDAY関数で抽出します。
=Day(DATE(A2,B2+1,0))
Day関数は日付から日にちの数値を習得する関数です。
最終日の取得の方が分かれば簡単だと思います!
書式で日にちだけにできるけど?
書式設定で日付に対してdと設定すると日にちにすることが出来ます。
ただしこれは書式が変わっているだけでシリアル値のままです。
見た目だけで問題ない場合は全く問題ないですが、
関数でそのセルを参照する場合は注意しましょう。
まとめ
最後まで閲覧ありがとうございました。
最後にこの記事のまとめを記載します。
DATE関数まとめ
- DATE関数は年、月、日を指定して日付(シリアル値)を求めることが可能。
- DATE関数は日を0にすると先月末にできる。(月に+1で指定月末)
- Day関数を使用してDATE関数から日付の数値を取得できる。
コメント