Excelで指定した月の日数を求める

べあーる
質問: 月の日数を表示したい
月次集計の表があり、月ごとの行があります。月の日数を列に表示したいのですが、月の値からその月に日数を計算する方法はありますか?

Excelで指定した月の日数を求める方法を紹介します。

概要

以下の手順を利用します。

  1. EOMONTH 関数を利用して、与えられた月の月末の日付を求めます。
  2. DAY 関数を利用して、日付から日を取り出します。

月末の日にち=その月の日数 のため、DAY関数の戻り値が与えられた月の日数となります。
EOMONTH関数の動作の詳細はこちらの記事を、 DAY関数の詳細はこちらの記事を参照してください。


メモ
一年の日数を求める手順はこちらの記事を参照してください。

例1:関数の引数に直接日付を与える場合

Excelのブックを新規作成します。B2セルに下記の数式を入力します。

=DAY(EOMONTH("2026/8/1",0))


EOMONTH関数の第一引数に"2026/8/1"、第二引数に"0"を与えることで、2026年8月の月末の日付を求めます。 EOMONTH関数の戻り値をDAY関数に与えることで、2026年8月の月末の日にちのみを取得します。

Excelで指定した月の日数を求める:画像1


数式の入力を確定します。2017年10月の最終日の日にちである"31"がセルに表示されます。この値が2017年10月の日数にもなります。
Excelで指定した月の日数を求める:画像2


数式の内容を下記に変更します。

=DAY(EOMONTH("2020/2/1",0))


2020年2月の日数を求めます。
Excelで指定した月の日数を求める:画像3


数式の入力を確定します。2020年2月の日数がセルに表示されます。

Excelで指定した月の日数を求める:画像4

例2:セルを参照する場合

セルを参照する場合の手順を紹介します。

下図のExcel表を準備します。
Excelで指定した月の日数を求める:画像5


セルの内容は下記になります。

2018/8/1
2020/2/1
2008/4/1
2025/9/10
2038/4/5


C2セルに下記の数式を入力します。

=DAY(EOMONTH(B2,0))

B2セルの日付の月末の日付をEOMONTH関数で求め、DAY関数に与え、末尾の日にちを取得し、この数を月の日数とします。
Excelで指定した月の日数を求める:画像6


数式の入力を確定します。2018年8月の日数"31"がセルに表示されます。
Excelで指定した月の日数を求める:画像7


C2セルをコピーしC列の他のセルにペーストします。左側のセルの日付の月の日数がC列のセルに表示されます。
Excelで指定した月の日数を求める:画像8


指定した月の日数を求めることができました。
Excelで指定した月の日数を求める:画像9

A.W.S (Another World Story)

Excelで指定した月の日数を求める:画像10

午後四時、リビングには初夏の陽が傾きはじめ、窓辺のレースカーテンに淡い金色の模様を織り込んでいた。 フリーランスの浩司はノート PC を広げ、締切まであと一時間の集計表と格闘している。 セルの海を行き来する彼の指先は、焦りを吸ったかのようにカタカタと速さを増した。

ソファでは、妻の真緒がアイスコーヒーを揺らしながら雑誌をめくっている。涼やかな揺り椅子のきしみが、浩司のキーボード音に混じってリズムを刻んだ。

浩司は額の汗をぬぐい、つぶやく。
――二月が二十八日なのか二十九日なのか、毎回手で数えるの面倒だな……。月ごとの日数を自動で拾う関数、絶対あるはずなんだけど。

真緒はページを閉じると、脚を組み替えて彼の背中に声を投げた。
――なら、いっそ月の末日を先に呼び出せば?

浩司は反射的にシートを拡大した。
――末日って、三十一日とか三十日とか?

――そう。末日そのものを返す関数があるでしょう。例えば基準日を一日目にして、そこから「今月の終わり」を求めるやつ。で、最後に日だけ抜き取れば、その数字が月の日数になる理屈よ。

彼女の言葉に、浩司の記憶が弾けた。そうだ、月末日を返すあの関数――あれを 0 カ月進めれば今月末。

試しにセル B2 に =DAY(EOMONTH(A2,0)) と打ち込み Enter キーを押す。瞬時に 31 が現れた。 続けざまに二月の行、三月の行もオートフィルすると、すべての日数が正しく並ぶ。指先から力が抜け、彼は思わず椅子にもたれた。

真緒が笑みを浮かべながら冷たいグラスを差し出した。
――お疲れさま。氷、まだ溶けてないわよ。

浩司は受け取り、透き通った液体を喉へ流し込む。涼しさが胸元まで降りてきたころ、ふとモニターに目を戻すと、計算済みの列の一つ下に 1900 と見慣れない数字が鎮座している。 どうやらオートフィルが空白行まで伸び、日数ではなくシリアル値が丸ごと表示されたらしい。

焦って Ctrl+Z を押そうとした瞬間、真緒が肩をすくめた。
――ほらね、末日は便利だけど、伸ばしすぎると“永遠”まで連れて行かれる。 Excel の引き延ばしには要注意。

浩司は苦笑いし、Undo で永遠から帰還する。
――助かったよ。今日のギャラ、コーヒー一杯でいい?

真緒は雑誌を再び開き、軽く首を横に振った。
――いいえ、末日の分まで日当をいただくわ。つまり月末締めで三十一杯。よろしくね、社長さん。

リビングにまたカタカタというタイピングが戻る。だが今度は、少しだけ軽やかなリズムになっていた。

このページのキーワード
  • Excelで指定した月の日数を取得する
AuthorPortraitAlt
著者
iPentecの企画・分析担当。口が悪いのでなるべく寡黙でありたいと思っている。が、ついついしゃべってしまい、毎回墓穴を掘っている。
作成日: 2017-08-15
改訂日: 2023-12-22
Copyright © 1995–2025 iPentec all rights reserverd.