<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>EOMONTH関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/eomonth%E9%96%A2%E6%95%B0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 15:28:11 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>EOMONTH関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのEOMONTH関数の使い方｜Nヶ月後の月末日付を自動取得</title>
		<link>https://mashukabu.com/spreadsheet-eomonth-function/</link>
					<comments>https://mashukabu.com/spreadsheet-eomonth-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 10:56:36 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[EDATE関数]]></category>
		<category><![CDATA[EOMONTH関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[支払期日]]></category>
		<category><![CDATA[日付計算]]></category>
		<category><![CDATA[月末日付]]></category>
		<category><![CDATA[締め日]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4321</guid>

					<description><![CDATA[スプレッドシートのEOMONTH関数の使い方を基本から解説。当月末・翌月末・Nヶ月後の月末日を自動取得する方法、TODAY関数との組み合わせ、月末締め・翌月末払いの支払期日の自動計算、EDATE関数・DATE関数との使い分けまで実務例で紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「月末締め・翌月末払い」の支払期日、毎回カレンダーを見て手入力していませんか？</p>



<p class="wp-block-paragraph">月末日は28日・30日・31日と月ごとに変わります。スプレッドシートで手入力していると、うるう年の2月などでミスが起きやすいですよね。</p>



<p class="wp-block-paragraph">Googleスプレッドシートの<strong>EOMONTH関数</strong>を使えば、Nヶ月後の月末日を自動で取得できます。月末の日数を覚えておく必要はありません。</p>



<p class="wp-block-paragraph">この記事では、EOMONTH関数の基本から実務での活用パターンまで解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのEOMONTH関数とは？月末日を自動取得する関数</a><ol><li><a href="#toc2" tabindex="0">構文と引数</a></li><li><a href="#toc3" tabindex="0">月数に0を指定すると当月末になる</a></li></ol></li><li><a href="#toc4" tabindex="0">EOMONTH関数の基本的な使い方</a><ol><li><a href="#toc5" tabindex="0">翌月末を取得する（月数=1）</a></li><li><a href="#toc6" tabindex="0">Nヶ月後の月末を取得する</a></li><li><a href="#toc7" tabindex="0">前月末を取得する（月数=-1）</a></li></ol></li><li><a href="#toc8" tabindex="0">実務で使える活用例</a><ol><li><a href="#toc9" tabindex="0">TODAY関数と組み合わせて当月末を動的に取得</a></li><li><a href="#toc10" tabindex="0">月末締め・翌月末払いの支払期日を自動計算</a></li></ol></li><li><a href="#toc11" tabindex="0">EDATE関数・DATE関数との使い分け</a><ol><li><a href="#toc12" tabindex="0">EOMONTH vs EDATE 比較表（月末固定 vs 同日維持）</a></li><li><a href="#toc13" tabindex="0">DATE(YEAR,MONTH+1,0)との比較 ── EOMONTHの優位性</a></li></ol></li><li><a href="#toc14" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc15" tabindex="0">よくある質問（FAQ）</a></li><li><a href="#toc16" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのEOMONTH関数とは？月末日を自動取得する関数</span></h2>



<p class="wp-block-paragraph">EOMONTH関数は、<strong>指定した月数だけ前後した月の末日</strong>を返す関数です。</p>



<p class="wp-block-paragraph">読み方は「イーオーマンス関数」。End of Monthの略です。</p>



<p class="wp-block-paragraph">たとえば、2026/1/15を基準に1ヶ月後の月末を求めると、2026/2/28が返ります。うるう年の判定も自動で行ってくれますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">構文と引数</span></h3>



<p class="wp-block-paragraph">EOMONTH関数の構文はこちらです。</p>



<pre class="wp-block-code"><code>=EOMONTH(開始日, 月数)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須</th><th>説明</th></tr></thead><tbody><tr><td>開始日</td><td>はい</td><td>基準となる日付</td></tr><tr><td>月数</td><td>はい</td><td>開始日から何ヶ月後（マイナスで何ヶ月前）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は2つだけなので、覚えやすいですよね。</p>



<p class="wp-block-paragraph">月数に小数を指定した場合は、小数部分が切り捨てられます。たとえば1.9を指定すると、1として処理されます。</p>



<h3 class="wp-block-heading"><span id="toc3">月数に0を指定すると当月末になる</span></h3>



<p class="wp-block-paragraph">月数に<code>0</code>を指定すると、開始日と同じ月の末日が返ります。</p>



<pre class="wp-block-code"><code>=EOMONTH(&quot;2026/3/10&quot;, 0)</code></pre>



<p class="wp-block-paragraph">結果は<strong>2026/3/31</strong>です。</p>



<p class="wp-block-paragraph">「当月末の日付がほしい」という場面はよくあります。月数=0のパターンはぜひ覚えておいてください。</p>



<h2 class="wp-block-heading"><span id="toc4">EOMONTH関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">ここからは、具体的な数式と計算結果を見ていきましょう。</p>



<p class="wp-block-paragraph">以下のサンプルシートを使って解説します。A列に基準日、B列に月数、C列にEOMONTH関数の結果を表示する構成です。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<h3 class="wp-block-heading"><span id="toc5">翌月末を取得する（月数=1）</span></h3>



<p class="wp-block-paragraph">月数に<code>1</code>を指定すると、1ヶ月後の月末日が返ります。</p>



<pre class="wp-block-code"><code>=EOMONTH(&quot;2026/1/15&quot;, 1)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_eomonth-basic.png" alt="02 formula eomonth basic" /></figure>



<p class="wp-block-paragraph">結果は<strong>2026/2/28</strong>です。2026年はうるう年ではないので、2月の末日は28日になります。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_eomonth-basic.png" alt="03 result eomonth basic" /></figure>



<p class="wp-block-paragraph">月末が何日かを気にする必要がないのがEOMONTH関数の強みですよ。</p>



<h3 class="wp-block-heading"><span id="toc6">Nヶ月後の月末を取得する</span></h3>



<p class="wp-block-paragraph">月数を変えれば、何ヶ月後でも対応できます。</p>



<pre class="wp-block-code"><code>=EOMONTH(&quot;2026/3/10&quot;, 2)</code></pre>



<p class="wp-block-paragraph">3月10日の2ヶ月後の月末なので、結果は<strong>2026/5/31</strong>です。</p>



<pre class="wp-block-code"><code>=EOMONTH(&quot;2026/3/10&quot;, 6)</code></pre>



<p class="wp-block-paragraph">6ヶ月後の月末は<strong>2026/9/30</strong>。9月は30日までなので、自動で30日が返ります。</p>



<h3 class="wp-block-heading"><span id="toc7">前月末を取得する（月数=-1）</span></h3>



<p class="wp-block-paragraph">月数にマイナスの値を指定すると、過去の月末を取得できます。</p>



<pre class="wp-block-code"><code>=EOMONTH(&quot;2026/3/10&quot;, -1)</code></pre>



<p class="wp-block-paragraph">結果は<strong>2026/2/28</strong>。1ヶ月前の月末日です。</p>



<p class="wp-block-paragraph">前月の締め日を参照したいときに便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">実務で使える活用例</span></h2>



<p class="wp-block-paragraph">EOMONTH関数は、請求書管理や支払期日の計算で真価を発揮します。</p>



<h3 class="wp-block-heading"><span id="toc9">TODAY関数と組み合わせて当月末を動的に取得</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>（今日の日付を返す関数）と組み合わせると、常に最新の月末日が取得できます。</p>



<pre class="wp-block-code"><code>=EOMONTH(TODAY(), 0)</code></pre>



<p class="wp-block-paragraph">この数式は「今月の末日」を常に返します。ファイルを開くたびに自動更新されるので、月が変わっても修正不要です。</p>



<p class="wp-block-paragraph">よく使うパターンをまとめておきます。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>取得できる日付</th></tr></thead><tbody><tr><td><code>=EOMONTH(TODAY(),0)</code></td><td>今月末</td></tr><tr><td><code>=EOMONTH(TODAY(),1)</code></td><td>翌月末</td></tr><tr><td><code>=EOMONTH(TODAY(),-1)</code></td><td>先月末</td></tr><tr><td><code>=EOMONTH(TODAY(),-1)+1</code></td><td>当月1日（月初）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">最後の当月1日の取り方がポイントです。先月末に1日足すと、当月の1日になります。覚えておくと便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">月末締め・翌月末払いの支払期日を自動計算</span></h3>



<p class="wp-block-paragraph">請求書の支払期日を自動計算する例を見てみましょう。</p>



<p class="wp-block-paragraph">A列に請求書発行日を入力し、B〜D列で締め日・支払期日を自動計算します。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（発行日）</th><th>B列（当月末／締め日）</th><th>C列（翌月末払い）</th><th>D列（翌々月末払い）</th></tr></thead><tbody><tr><td>数式</td><td>手入力</td><td><code>=EOMONTH(A2,0)</code></td><td><code>=EOMONTH(A2,1)</code></td><td><code>=EOMONTH(A2,2)</code></td></tr><tr><td>行2</td><td>2026/1/15</td><td>2026/1/31</td><td>2026/2/28</td><td>2026/3/31</td></tr><tr><td>行3</td><td>2026/2/20</td><td>2026/2/28</td><td>2026/3/31</td><td>2026/4/30</td></tr><tr><td>行4</td><td>2026/3/10</td><td>2026/3/31</td><td>2026/4/30</td><td>2026/5/31</td></tr><tr><td>行5</td><td>2026/4/28</td><td>2026/4/30</td><td>2026/5/31</td><td>2026/6/30</td></tr><tr><td>行6</td><td>2026/5/5</td><td>2026/5/31</td><td>2026/6/30</td><td>2026/7/31</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数式をB2セルに入力して下方向にコピーするだけです。月ごとの末日の違いもEOMONTH関数が自動で処理してくれます。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_result_payment-due.png" alt="04 result payment due" /></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「月末締め・翌月末払い」ならC列、「月末締め・翌々月末払い」ならD列を支払期日として使ってください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc11">EDATE関数・DATE関数との使い分け</span></h2>



<p class="wp-block-paragraph">EOMONTH関数と似た機能を持つ関数が2つあります。それぞれの違いを整理しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">EOMONTH vs EDATE 比較表（月末固定 vs 同日維持）</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-edate-function/">EDATE関数</a>（Nヶ月後の同日を返す関数）との違いは、返す日付の基準です。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>EOMONTH</th><th>EDATE</th></tr></thead><tbody><tr><td>返す日付</td><td>Nヶ月後の<strong>月末</strong></td><td>Nヶ月後の<strong>同日</strong></td></tr><tr><td>例: 1/15の1ヶ月後</td><td>2/28（月末）</td><td>2/15（同日）</td></tr><tr><td>例: 1/31の1ヶ月後</td><td>2/28（月末）</td><td>2/28（同日※）</td></tr><tr><td>主な用途</td><td>締め日・支払期日</td><td>契約更新日・定期タスク</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">※ EDATEで31日の1ヶ月後を求めると、2月には31日がないため28日（末日）に丸められます。</p>



<p class="wp-block-paragraph">使い分けのポイントはシンプルです。</p>



<ul class="wp-block-list"><li><strong>「月末」を基準にしたい</strong> → EOMONTH関数</li><li><strong>「同じ日付」を維持したい</strong> → EDATE関数</li></ul>



<p class="wp-block-paragraph">支払期日の計算にはEOMONTH、契約更新日の計算にはEDATEが向いていますよ。</p>



<h3 class="wp-block-heading"><span id="toc13">DATE(YEAR,MONTH+1,0)との比較 ── EOMONTHの優位性</span></h3>



<p class="wp-block-paragraph">EOMONTH関数を使わずに月末日を求める方法もあります。<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>（年・月・日から日付を作る関数）を使う方法です。</p>



<pre class="wp-block-code"><code>=DATE(YEAR(A2), MONTH(A2)+1, 0)</code></pre>



<p class="wp-block-paragraph">「翌月の0日目」を指定すると、当月の末日にロールバックされる仕組みです。結果はEOMONTH関数と同じになります。</p>



<p class="wp-block-paragraph">ただし、EOMONTH関数のほうがおすすめです。理由を比較してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>EOMONTH</th><th>DATE関数の組み合わせ</th></tr></thead><tbody><tr><td>当月末</td><td><code>=EOMONTH(A2,0)</code></td><td><code>=DATE(YEAR(A2),MONTH(A2)+1,0)</code></td></tr><tr><td>翌月末</td><td><code>=EOMONTH(A2,1)</code></td><td><code>=DATE(YEAR(A2),MONTH(A2)+2,0)</code></td></tr><tr><td>3ヶ月前の月末</td><td><code>=EOMONTH(A2,-3)</code></td><td><code>=DATE(YEAR(A2),MONTH(A2)-2,0)</code></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">EOMONTH関数のほうが数式が短く、意図も読み取りやすいですよね。</p>



<p class="wp-block-paragraph">DATE関数の方法は「0日目ロールバック」という裏技的な仕組みです。知っていると便利ですが、チームで共有するシートにはEOMONTH関数を使うほうが親切ですよ。</p>



<h2 class="wp-block-heading"><span id="toc14">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">EOMONTH関数で発生しやすいエラーと、その解決方法をまとめます。</p>



<p class="wp-block-paragraph"><strong>シリアル値（数字）が表示される</strong></p>



<p class="wp-block-paragraph">EOMONTH関数は内部的にシリアル値を返します。「46112」のような数字が表示された場合は、表示形式を変更するだけで解決します。</p>



<p class="wp-block-paragraph">セルを選択して「<strong>表示形式</strong>」→「<strong>数字</strong>」→「<strong>日付</strong>」を選んでください。</p>



<p class="wp-block-paragraph"><strong>#VALUE! エラーが出る</strong></p>



<p class="wp-block-paragraph">開始日に文字列が入っている可能性があります。日付に見えても、実は文字列として入力されているケースがよくあります。</p>



<p class="wp-block-paragraph">セルの表示形式が「書式なしテキスト」になっていないか確認してください。文字列を日付に変換するには、<a href="https://mashukabu.com/spreadsheet-value-function/">VALUE関数</a>（文字列を数値に変換する関数）が使えます。</p>



<p class="wp-block-paragraph"><strong>#NUM! エラーが出る</strong></p>



<p class="wp-block-paragraph">計算結果が日付の有効範囲外になっています。月数に極端に大きな値を指定すると発生します。</p>



<p class="wp-block-paragraph">通常の業務で使う範囲であれば、このエラーはほぼ起きません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>EOMONTH関数はExcelとGoogleスプレッドシートで完全互換です。同じ構文・同じ結果で動作するので、Excelユーザーとファイルを共有するときも安心してください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">よくある質問（FAQ）</span></h2>



<p class="wp-block-paragraph"><strong>Q. 当月の1日目（月初）を求めるには？</strong></p>



<p class="wp-block-paragraph">A. <code>=EOMONTH(TODAY(), -1)+1</code> と書きます。「先月末の翌日 = 今月1日」という考え方です。月初日を基準に締め日を計算するときに便利です。</p>



<p class="wp-block-paragraph"><strong>Q. うるう年の2月末は自動判定してくれる？</strong></p>



<p class="wp-block-paragraph">A. はい、自動で判定します。たとえば2024年（うるう年）の場合、<code>=EOMONTH("2024/2/1", 0)</code> は「2024/2/29」を返します。手動で日数を調べる必要はありません。</p>



<p class="wp-block-paragraph"><strong>Q. EDATEとEOMONTHはどう使い分ける？</strong></p>



<p class="wp-block-paragraph">A. 「月末を基準にしたい（締め日・支払期日）」ならEOMONTH、「同じ日付を維持したい（契約更新日・記念日）」ならEDATEです。支払条件の管理にはEOMONTHが一般的です。</p>



<h2 class="wp-block-heading"><span id="toc16">まとめ</span></h2>



<p class="wp-block-paragraph">EOMONTH関数は、Nヶ月後の月末日を自動取得する関数です。</p>



<p class="wp-block-paragraph">この記事で紹介した使い方をおさらいします。</p>



<ul class="wp-block-list"><li><strong>当月末</strong>: <code>=EOMONTH(A2, 0)</code></li><li><strong>翌月末</strong>: <code>=EOMONTH(A2, 1)</code></li><li><strong>前月末</strong>: <code>=EOMONTH(A2, -1)</code></li><li><strong>TODAY関数と組み合わせ</strong>: <code>=EOMONTH(TODAY(), 0)</code> で常に最新の月末日</li><li><strong>支払期日の自動計算</strong>: 月末締め・翌月末払いの管理に最適</li></ul>



<p class="wp-block-paragraph">月末日の手入力ミスや、うるう年の考慮漏れとはもうサヨナラです。</p>



<p class="wp-block-paragraph">まずは <code>=EOMONTH(TODAY(), 0)</code> で今月の末日を表示するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-eomonth-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのDAY関数の使い方｜日付から「日」を取り出す3つのパターン</title>
		<link>https://mashukabu.com/spreadsheet-day-function/</link>
					<comments>https://mashukabu.com/spreadsheet-day-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:49:51 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATEVALUE関数]]></category>
		<category><![CDATA[DAY関数]]></category>
		<category><![CDATA[EOMONTH関数]]></category>
		<category><![CDATA[MONTH関数]]></category>
		<category><![CDATA[YEAR関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[日付操作]]></category>
		<category><![CDATA[日付関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4324</guid>

					<description><![CDATA[スプレッドシートのDAY関数で日付から「日」だけを取り出す方法を解説。YEAR・MONTHとの違い、TODAY関数との組み合わせ、毎月固定日の自動生成、当月残り日数の計算、エラー対処までまとめます。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで日付を扱っていると、「日」だけを取り出したくなる場面、意外と多いですよね。たとえば営業日報で「毎月25日の売上だけを合計したい」とか、請求書で「毎月15日の支払予定日を自動で作りたい」とか。</p>



<p class="wp-block-paragraph">手作業でひとつずつ入力するのは現実的ではありません。テキスト関数（MID関数など）で無理やり切り出す方法もありますが、書式が変わった瞬間に切り出し位置がズレてエラーになります。</p>



<p class="wp-block-paragraph">そんなときに使えるのが <strong>DAY関数</strong> です。この記事では、DAY関数の基本から、YEAR・MONTHとの使い分け、実務で役立つ5つの活用パターン、よくあるエラーの対処までまとめて紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのDAY関数とは？できることを30秒で理解</a><ol><li><a href="#toc2" tabindex="0">なぜDAY関数が必要なのか</a></li></ol></li><li><a href="#toc3" tabindex="0">DAY関数の基本構文と使い方</a><ol><li><a href="#toc4" tabindex="0">書き方と引数の説明</a></li><li><a href="#toc5" tabindex="0">セルに入力した日付から「日」を取り出す</a></li><li><a href="#toc6" tabindex="0">文字列の日付を直接指定する</a></li><li><a href="#toc7" tabindex="0">TODAY関数と組み合わせて今日の「日」を取得する</a></li></ol></li><li><a href="#toc8" tabindex="0">YEAR・MONTH・DAYの3関数をセットで覚えよう</a><ol><li><a href="#toc9" tabindex="0">3関数の比較表</a></li><li><a href="#toc10" tabindex="0">「年・月・日」をバラバラに取り出して別セルに表示する</a></li><li><a href="#toc11" tabindex="0">使い分けの判断基準</a></li></ol></li><li><a href="#toc12" tabindex="0">実務で使える5つのユースケース</a><ol><li><a href="#toc13" tabindex="0">ユースケース1: 毎月特定日の売上を集計する</a></li><li><a href="#toc14" tabindex="0">ユースケース2: 毎月固定日の日付をDATE関数で自動生成する</a></li><li><a href="#toc15" tabindex="0">ユースケース3: 当月の残り日数・当月日数を計算する</a></li><li><a href="#toc16" tabindex="0">ユースケース4: 月末日かどうかを判定する</a></li><li><a href="#toc17" tabindex="0">ユースケース5: 経過日数・上旬下旬の判定をする</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc19" tabindex="0">シリアル値（日付形式）で表示されてしまう</a></li><li><a href="#toc20" tabindex="0">文字列の日付で #VALUE! エラー</a></li><li><a href="#toc21" tabindex="0">数式内で日付を直接書くと意外な結果になる</a></li><li><a href="#toc22" tabindex="0">#NUM! エラーが出るとき</a></li></ol></li><li><a href="#toc23" tabindex="0">まとめ：DAY関数はYEAR・MONTHとセットで使いこなそう</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのDAY関数とは？できることを30秒で理解</span></h2>



<p class="wp-block-paragraph">DAY関数は、スプレッドシートの日付から <strong>「日」の部分だけを整数で取り出す</strong> 関数です。</p>



<p class="wp-block-paragraph">たとえば「2026/3/19」を渡すと「19」が返ります。返り値は <strong>1〜31の整数</strong> で、月によって28〜31日の範囲で変動します（閏年の2月なら29日まで）。</p>



<p class="wp-block-paragraph">名前のとおり「Day＝日」を取得する、とてもシンプルな関数ですね。</p>



<p class="wp-block-paragraph">「年」を取り出す<a href="https://mashukabu.com/spreadsheet-year-function/">YEAR関数の使い方</a>（年を取り出す関数）、「月」を取り出す<a href="https://mashukabu.com/spreadsheet-month-function/">MONTH関数の使い方</a>（月を取り出す関数）と3つセットで使うと、日付操作の幅がぐっと広がりますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">なぜDAY関数が必要なのか</span></h3>



<p class="wp-block-paragraph">「日付の『日』を取るなら、テキストとしてMID関数で切り出してもいいのでは？」と思うかもしれません。でも、これはおすすめできません。</p>



<p class="wp-block-paragraph">セル書式が「2026/3/19」「2026-3-19」「2026年3月19日」などに変わると、MID関数では切り出し位置もズレてしまいます。一方でDAY関数は <strong>「日付値から日を取る」ので書式に左右されません</strong>。</p>



<p class="wp-block-paragraph">実務では書式が混在することがよくあるので、日付の「日」を取るならDAY関数が鉄則です。</p>



<h2 class="wp-block-heading"><span id="toc3">DAY関数の基本構文と使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc4">書き方と引数の説明</span></h3>



<p class="wp-block-paragraph">DAY関数の構文はとてもシンプルです。</p>



<pre class="wp-block-code"><code>=DAY(日付)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>日付</td><td>必須</td><td>「日」を取り出したい日付を指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数はひとつだけ。セル参照や日付関数の結果、日付文字列を渡せます。</p>



<h3 class="wp-block-heading"><span id="toc5">セルに入力した日付から「日」を取り出す</span></h3>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<p class="wp-block-paragraph">もっとも基本的な使い方です。セルA1に「2026/3/19」と入力されている場合、次の数式で「19」が返ります。</p>



<pre class="wp-block-code"><code>=DAY(A1)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/02_formula_day-basic.png" alt="02 formula day basic" /></figure>



<p class="wp-block-paragraph">日付が入ったセルを指定するだけなので、迷うことはありません。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_day-basic.png" alt="03 result day basic" /></figure>



<h3 class="wp-block-heading"><span id="toc6">文字列の日付を直接指定する</span></h3>



<p class="wp-block-paragraph">数式内に日付を直接書くこともできます。そのときは <strong>ダブルクォートで囲む</strong> のがポイントです。</p>



<pre class="wp-block-code"><code>=DAY(&quot;2026/3/19&quot;)</code></pre>



<p class="wp-block-paragraph">これで「19」が返ります。ダブルクォートを忘れると、次で解説する落とし穴にハマるので注意してください。</p>



<h3 class="wp-block-heading"><span id="toc7">TODAY関数と組み合わせて今日の「日」を取得する</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数の使い方</a>（今日の日付を返す関数）と組み合わせると、常に「今日が何日か」を自動取得できます。</p>



<pre class="wp-block-code"><code>=DAY(TODAY())</code></pre>



<p class="wp-block-paragraph">今日が3月19日なら「19」が返ります。ファイルを開くたびに自動更新されるので、日次の管理表や営業日報でぜひ使ってみてください。</p>



<h2 class="wp-block-heading"><span id="toc8">YEAR・MONTH・DAYの3関数をセットで覚えよう</span></h2>



<h3 class="wp-block-heading"><span id="toc9">3関数の比較表</span></h3>



<p class="wp-block-paragraph">日付を分解する3つの関数をまとめて確認しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>引数</th><th>返り値</th><th>主な用途</th></tr></thead><tbody><tr><td>YEAR(日付)</td><td>日付値1つ</td><td>年（例: 2026）</td><td>年だけ抽出・年での集計</td></tr><tr><td>MONTH(日付)</td><td>日付値1つ</td><td>月（1〜12）</td><td>月だけ抽出・月別集計</td></tr><tr><td>DAY(日付)</td><td>日付値1つ</td><td>日（1〜31）</td><td>日だけ抽出・締め日判定</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">3つとも引数は日付ひとつだけ。返り値が「年・月・日」のどれかという違いだけです。</p>



<h3 class="wp-block-heading"><span id="toc10">「年・月・日」をバラバラに取り出して別セルに表示する</span></h3>



<p class="wp-block-paragraph">A1に「2026/3/19」が入っている場合、次のように3つの関数を並べれば、年・月・日を別々のセルに分解できます。</p>



<figure class="wp-block-table"><table><thead><tr><th>セル</th><th>数式</th><th>結果</th></tr></thead><tbody><tr><td>B1</td><td><code>=YEAR(A1)</code></td><td>2026</td></tr><tr><td>C1</td><td><code>=MONTH(A1)</code></td><td>3</td></tr><tr><td>D1</td><td><code>=DAY(A1)</code></td><td>19</td></tr></tbody></table></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_result_year-month-day.png" alt="04 result year month day" /></figure>



<p class="wp-block-paragraph">集計やフィルタで「月だけ」「日だけ」を条件にしたいとき、ぜひこの方法を試してみてください。</p>



<h3 class="wp-block-heading"><span id="toc11">使い分けの判断基準</span></h3>



<p class="wp-block-paragraph">「年・月・日のどれを使うか」で迷ったら、次の観点で考えるとわかりやすいです。</p>



<ul class="wp-block-list"><li><strong>年単位で集計したい</strong>（例: 年次売上） → YEAR関数</li><li><strong>月単位で集計したい</strong>（例: 月別売上） → MONTH関数</li><li><strong>日単位で何かを判定したい</strong>（例: 締め日・月末・毎月固定日） → DAY関数</li></ul>



<p class="wp-block-paragraph">ピボットテーブルや<a href="https://mashukabu.com/spreadsheet-query-function/">QUERY関数</a>でグループ化する際、この3関数で補助列を作っておくと一気に処理しやすくなります。</p>



<h2 class="wp-block-heading"><span id="toc12">実務で使える5つのユースケース</span></h2>



<h3 class="wp-block-heading"><span id="toc13">ユースケース1: 毎月特定日の売上を集計する</span></h3>



<p class="wp-block-paragraph">売上データで「毎月15日の売上だけを合計したい」というケースです。A列に日付、B列に売上が入っているとします。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((DAY(A2:A100)=15)*B2:B100)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_formula_day-sumproduct.png" alt="05 formula day sumproduct" /></figure>



<p class="wp-block-paragraph">SUMPRODUCT関数（条件に合う行の値を合計する関数）とDAY関数を組み合わせています。DAY関数で「日」を取り出し、15日に一致する行だけ売上を合計しています。</p>



<p class="wp-block-paragraph">締め日ベースの集計や、給料日・特定イベント日の売上分析にそのまま使えますよ。</p>



<p class="wp-block-paragraph">FILTER関数派なら、こちらの書き方でもOKです。</p>



<pre class="wp-block-code"><code>=SUM(FILTER(B2:B100, DAY(A2:A100)=15))</code></pre>



<h3 class="wp-block-heading"><span id="toc14">ユースケース2: 毎月固定日の日付をDATE関数で自動生成する</span></h3>



<p class="wp-block-paragraph">「毎月25日」の支払日を自動で作りたい場合、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数の使い方</a>（年・月・日を指定して日付を作る関数）と組み合わせます。</p>



<pre class="wp-block-code"><code>=DATE(YEAR(TODAY()), MONTH(TODAY()), 25)</code></pre>



<p class="wp-block-paragraph">YEAR関数とMONTH関数で今の年月を取得し、日を「25」に固定しています。月が変わっても自動で更新されるのがポイントですよ。</p>



<p class="wp-block-paragraph">請求書の支払期日・定期購買の発注日・引き落とし日の予定表など、「毎月○日」のルーチン業務に応用できます。</p>



<h3 class="wp-block-heading"><span id="toc15">ユースケース3: 当月の残り日数・当月日数を計算する</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-eomonth-function/">EOMONTH関数</a>（指定月の末日を返す関数）を使うと、当月の残り日数や日数を計算できます。</p>



<p class="wp-block-paragraph"><strong>当月の残り日数</strong>:</p>



<pre class="wp-block-code"><code>=EOMONTH(TODAY(),0)-TODAY()</code></pre>



<p class="wp-block-paragraph"><code>EOMONTH(TODAY(),0)</code> で当月末の日付を取得し、今日の日付を引いています。タスク管理や納期計算で「あと何日あるか」をパッと確認できます。</p>



<p class="wp-block-paragraph"><strong>当月の日数</strong>（28〜31日のどれか）:</p>



<pre class="wp-block-code"><code>=DAY(EOMONTH(TODAY(),0))</code></pre>



<p class="wp-block-paragraph">当月末の「日」を取り出せば、その月の日数がすぐわかります。勤怠管理の「今月の稼働日数計算」などで活用できますよ。</p>



<p class="wp-block-paragraph">同じ要領で、前月・翌月の日数も取得できます。</p>



<pre class="wp-block-code"><code>=DAY(EOMONTH(TODAY(),-1))  ← 前月の日数
=DAY(EOMONTH(TODAY(),1))   ← 翌月の日数</code></pre>



<h3 class="wp-block-heading"><span id="toc16">ユースケース4: 月末日かどうかを判定する</span></h3>



<p class="wp-block-paragraph">「今日が月末かどうか」を判定して、月次処理のトリガーにするパターンです。</p>



<pre class="wp-block-code"><code>=IF(DAY(A1)=DAY(EOMONTH(A1,0)), &quot;月末&quot;, &quot;&quot;)</code></pre>



<p class="wp-block-paragraph"><code>DAY(A1)</code> で今日の日、<code>DAY(EOMONTH(A1,0))</code> でその月の末日（28/29/30/31）を取得。両者が一致すれば「月末」を表示します。</p>



<p class="wp-block-paragraph">月末処理のチェックリスト・締め作業のリマインダーなどに使えます。条件付き書式と組み合わせて、月末のセルだけ色を変える使い方もおすすめですよ。</p>



<h3 class="wp-block-heading"><span id="toc17">ユースケース5: 経過日数・上旬下旬の判定をする</span></h3>



<p class="wp-block-paragraph">月の何日目かで「上旬・中旬・下旬」を振り分けたいとき、DAY関数で分類できます。</p>



<pre class="wp-block-code"><code>=IF(DAY(A1)&lt;=10, &quot;上旬&quot;, IF(DAY(A1)&lt;=20, &quot;中旬&quot;, &quot;下旬&quot;))</code></pre>



<p class="wp-block-paragraph"><code>DAY(A1)</code> で日付の「日」を取り、10以下なら上旬、11〜20なら中旬、それ以外は下旬と判定しています。</p>



<p class="wp-block-paragraph">営業報告書や売上分析で「上旬・中旬・下旬の動向」を見たいとき、手動で分類するのは大変です。この数式を入れておけば、日付を入れるだけで自動で振り分けられますよ。</p>



<h2 class="wp-block-heading"><span id="toc18">よくあるエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc19">シリアル値（日付形式）で表示されてしまう</span></h3>



<p class="wp-block-paragraph">DAY関数自体は正しく動いているのに、セルの表示が「2026/3/19」のような日付形式になってしまうケースがあります。</p>



<p class="wp-block-paragraph">これはセルの書式が「日付」のままになっているだけです。対処はシンプルで、セルを選択して <strong>「表示形式」→「数字」→「数値」</strong> に変更してください。</p>



<p class="wp-block-paragraph">DAY関数の返り値は1〜31の整数なので、書式を数値にすれば正しく表示されます。</p>



<h3 class="wp-block-heading"><span id="toc20">文字列の日付で #VALUE! エラー</span></h3>



<p class="wp-block-paragraph">DAY関数に文字列を渡すと <code>#VALUE!</code> エラーが出ることがあります。</p>



<p class="wp-block-paragraph">よくあるのは、他のシステムからコピーした日付がテキストとして貼り付けられているケースです。この場合は<a href="https://mashukabu.com/spreadsheet-datevalue-function/">DATEVALUE関数</a>（日付形式の文字列を日付値に変換する関数）を使います。</p>



<pre class="wp-block-code"><code>=DAY(DATEVALUE(A1))</code></pre>



<p class="wp-block-paragraph">A1が文字列の「2026/3/19」でも、DATEVALUEで日付値に変換してからDAYに渡せば正常に動作します。</p>



<p class="wp-block-paragraph">ちなみに「令和8年3月19日」のような和暦表記は、DATEVALUEでも認識できないことがあります。その場合は、<a href="https://mashukabu.com/spreadsheet-substitute-function/">SUBSTITUTE関数</a>で「年月日」を「/」に置き換える前処理が必要です。</p>



<h3 class="wp-block-heading"><span id="toc21">数式内で日付を直接書くと意外な結果になる</span></h3>



<p class="wp-block-paragraph">数式で直接日付を書くときの注意点です。</p>



<p class="wp-block-paragraph"><code>=DAY(10/10/2000)</code> のように書くと、スプレッドシートは「10÷10÷2000」という <strong>割り算</strong> として計算します。結果は0.0005になり、DAY関数は「0日目＝30」（1900年1月0日の前日＝1900年1月30日）を返してしまいます。</p>



<p class="wp-block-paragraph">日付を直接指定するときは、次のどちらかを使いましょう。</p>



<pre class="wp-block-code"><code>=DAY(&quot;2026/3/19&quot;)       ← ダブルクォートで囲む
=DAY(DATE(2026,3,19))   ← DATE関数で日付を組み立てる</code></pre>



<h3 class="wp-block-heading"><span id="toc22">#NUM! エラーが出るとき</span></h3>



<p class="wp-block-paragraph">1899年12月30日より前の日付を指定すると、DAY関数は <code>#NUM!</code> エラーを返すことがあります。</p>



<p class="wp-block-paragraph">スプレッドシートは1900年以降の日付を前提に設計されているためです。遠い昔の日付を扱うケースは実務ではほぼないですが、誤って過去の日付を入力したときにこのエラーが出る場合があります。</p>



<p class="wp-block-paragraph">入力されている日付が想定の範囲かどうか、チェックしてみてください。</p>



<h2 class="wp-block-heading"><span id="toc23">まとめ：DAY関数はYEAR・MONTHとセットで使いこなそう</span></h2>



<p class="wp-block-paragraph">DAY関数の要点を振り返りましょう。</p>



<ul class="wp-block-list"><li><strong>構文</strong>: <code>=DAY(日付)</code> — 引数ひとつで「日」を取り出す</li><li><strong>返り値</strong>: 1〜31の整数（月によって28〜31日まで変動）</li><li><strong>YEAR・MONTHと3点セット</strong> で覚えると日付操作が自在になる</li><li><strong>実務での活用</strong>: 締め日集計・固定日の自動生成・残り日数計算・月末判定・上旬下旬振り分け</li><li><strong>エラー対策</strong>: 表示形式の確認、文字列はDATEVALUE、日付直書きはダブルクォートかDATE関数</li></ul>



<p class="wp-block-paragraph">日付を扱う業務では、DAY関数の出番はかなり多いです。YEAR・MONTH・DAYの3つを使いこなして、日付データの集計や管理を効率化してみてください。</p>



<p class="wp-block-paragraph">日付から「年」を取り出したいときは<a href="https://mashukabu.com/spreadsheet-year-function/">YEAR関数の使い方</a>、「月」なら<a href="https://mashukabu.com/spreadsheet-month-function/">MONTH関数の使い方</a>、曜日なら<a href="https://mashukabu.com/spreadsheet-weekday-function/">WEEKDAY関数の使い方</a>を参照してください。あわせて覚えると、日付まわりの処理がぐっとスムーズになりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-day-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのEDATE関数の使い方｜Nヶ月後の日付を自動計算</title>
		<link>https://mashukabu.com/spreadsheet-edate-function/</link>
					<comments>https://mashukabu.com/spreadsheet-edate-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:49:47 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATE関数]]></category>
		<category><![CDATA[EDATE関数]]></category>
		<category><![CDATA[EOMONTH関数]]></category>
		<category><![CDATA[Nヶ月後]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[契約満了日]]></category>
		<category><![CDATA[日付計算]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4322</guid>

					<description><![CDATA[スプレッドシートのEDATE関数の使い方を基本から解説。Nヶ月後・Nヶ月前の日付を自動計算する方法、契約満了日や定期点検日の算出、月末日の自動調整の仕組み、EOMONTH・DATE関数との使い分けまで実務で役立つテクニックを紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「契約開始日から3ヶ月後の満了日を出したい」「定期点検の次回日程をまとめて計算したい」――日付に月数を足す作業、手計算でやっていませんか？</p>



<p class="wp-block-paragraph">月によって日数がバラバラなので、3ヶ月後が何月何日になるか意外と迷いますよね。2月を挟むとさらにややこしくなります。</p>



<p class="wp-block-paragraph">そんなときに使いたいのがスプレッドシートのEDATE関数です。開始日と月数を指定するだけで、Nヶ月後・Nヶ月前の日付を正確に返してくれます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、契約管理・定期点検などの実務活用例、EOMONTH・DATE関数との使い分けまで紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのEDATE関数とは？Nヶ月後の日付を返す関数</a></li><li><a href="#toc2" tabindex="0">EDATE関数の基本の書き方</a><ol><li><a href="#toc3" tabindex="0">構文と引数</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li></ol></li><li><a href="#toc5" tabindex="0">EDATE関数の基本的な使い方</a></li><li><a href="#toc6" tabindex="0">実務で使えるEDATE関数の活用例3選</a><ol><li><a href="#toc7" tabindex="0">契約開始日から満了日を自動計算する</a></li><li><a href="#toc8" tabindex="0">定期点検の次回日程を自動計算する</a></li><li><a href="#toc9" tabindex="0">Nヶ月前の日付を求める（月数にマイナス値）</a></li><li><a href="#toc10" tabindex="0">ARRAYFORMULA関数と組み合わせて複数行まとめて計算する</a></li></ol></li><li><a href="#toc11" tabindex="0">EDATE関数の月末日の自動調整を理解する</a></li><li><a href="#toc12" tabindex="0">EOMONTH関数との使い分け</a></li><li><a href="#toc13" tabindex="0">WORKDAY関数との使い分け</a></li><li><a href="#toc14" tabindex="0">EDATE関数のよくあるエラーと対処法</a><ol><li><a href="#toc15" tabindex="0">開始日が文字列になっているとき</a></li><li><a href="#toc16" tabindex="0">日付でなく数字が表示されるとき</a></li></ol></li><li><a href="#toc17" tabindex="0">EDATE関数に関するよくある質問</a><ol><li><a href="#toc18" tabindex="0">Q1. 結果が数値で表示される場合はどうすればよいですか？</a></li><li><a href="#toc19" tabindex="0">Q2. ExcelのEDATE関数と同じ構文で使えますか？</a></li><li><a href="#toc20" tabindex="0">Q3. 月数に小数を指定するとどうなりますか？</a></li><li><a href="#toc21" tabindex="0">Q4. 年単位で加算するにはどうすればよいですか？</a></li><li><a href="#toc22" tabindex="0">Q5. 負の月数を使って過去の日付を求められますか？</a></li></ol></li><li><a href="#toc23" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのEDATE関数とは？Nヶ月後の日付を返す関数</span></h2>



<p class="wp-block-paragraph">EDATE関数（読み方: イーデイト関数）は、<strong>指定した日付からNヶ月後（またはNヶ月前）の日付を返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「Extended DATE（拡張された日付）」の略です。</p>



<p class="wp-block-paragraph">たとえば「2026/1/15」の3ヶ月後を求めると「2026/4/15」が返ります。月数にマイナス値を指定すれば過去の日付も取得できます。</p>



<p class="wp-block-paragraph">EDATE関数でできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>基準日からNヶ月後の同日を自動計算する</li><li>マイナス値でNヶ月前の日付も取得できる</li><li>月末日が存在しない場合は自動で月末に調整される</li><li><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>と組み合わせて「今日からN ヶ月後」を動的に計算する</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>EDATE関数はGoogleスプレッドシートの全バージョンで使えます。Excelでも同じ構文で動作するので、ファイル共有時も安心です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">EDATE関数の基本の書き方</span></h2>



<h3 class="wp-block-heading"><span id="toc3">構文と引数</span></h3>



<pre class="wp-block-code"><code>=EDATE(開始日, 月数)</code></pre>



<p class="wp-block-paragraph">カッコの中に「開始日」と「月数」を入れるだけです。引数は2つとも必須です。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の詳細</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>開始日</td><td>必須</td><td>基準となる日付（セル参照や日付値）</td></tr><tr><td>月数</td><td>必須</td><td>加算する月数（正の値で未来、負の値で過去）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">月数には整数を指定します。小数を入れた場合は小数部が切り捨てられます。たとえば「2.7」を指定すると「2」として扱われます。</p>



<h2 class="wp-block-heading"><span id="toc5">EDATE関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">もっともシンプルな使い方です。A1に「2026/1/15」が入っているとします。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<pre class="wp-block-code"><code>=EDATE(A1, 3)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-edate-function/02_formula_edate-basic.png/">_images/spreadsheet-edate-function/02_formula_edate-basic.png</a></p>



<p class="wp-block-paragraph">結果は「2026/4/15」です。1月15日の3ヶ月後なので、4月15日が返ります。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_edate-basic.png" alt="03 result edate basic" /></figure>



<p class="wp-block-paragraph">マイナス値を指定すれば過去の日付も取得できます。</p>



<pre class="wp-block-code"><code>=EDATE(A1, -2)</code></pre>



<p class="wp-block-paragraph">結果は「2025/11/15」です。2ヶ月前の日付が返りますよ。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>と組み合わせれば「今日から6ヶ月後」も簡単です。</p>



<pre class="wp-block-code"><code>=EDATE(TODAY(), 6)</code></pre>



<p class="wp-block-paragraph">スプレッドシートを開くたびに自動で更新されます。契約期限のアラート管理に便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc6">実務で使えるEDATE関数の活用例3選</span></h2>



<h3 class="wp-block-heading"><span id="toc7">契約開始日から満了日を自動計算する</span></h3>



<p class="wp-block-paragraph">契約管理でもっとも多いパターンです。A列に契約開始日、B列に契約月数が入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（契約開始日）</th><th>B列（契約月数）</th><th>C列（満了日）</th></tr></thead><tbody><tr><td>1</td><td>2026/1/15</td><td>3</td><td>=EDATE(A1,B1) → 2026/4/15</td></tr><tr><td>2</td><td>2026/4/1</td><td>6</td><td>=EDATE(A2,B2) → 2026/10/1</td></tr><tr><td>3</td><td>2026/7/10</td><td>12</td><td>=EDATE(A3,B3) → 2027/7/10</td></tr></tbody></table></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_result_edate-contract.png" alt="04 result edate contract" /></figure>



<p class="wp-block-paragraph">月数をセル参照にすれば、3ヶ月契約でも6ヶ月契約でも同じ数式で対応できます。</p>



<p class="wp-block-paragraph">満了日の30日前にアラートを出す数式も組み合わせてみましょう。</p>



<pre class="wp-block-code"><code>=IF(EDATE(A1,B1)-TODAY()&lt;=30, &quot;更新確認&quot;, &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">IF関数（条件に応じて値を切り替える関数）で満了日と今日の差が30日以下になったら「更新確認」と表示します。</p>



<h3 class="wp-block-heading"><span id="toc8">定期点検の次回日程を自動計算する</span></h3>



<p class="wp-block-paragraph">設備やシステムの定期点検スケジュールにも活用できます。A列に前回点検日、B列に点検間隔（月数）が入っているとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（前回点検日）</th><th>B列（間隔）</th><th>C列（次回点検日）</th></tr></thead><tbody><tr><td>1</td><td>2026/2/10</td><td>3</td><td>=EDATE(A1,B1) → 2026/5/10</td></tr><tr><td>2</td><td>2026/3/1</td><td>6</td><td>=EDATE(A2,B2) → 2026/9/1</td></tr><tr><td>3</td><td>2026/1/20</td><td>1</td><td>=EDATE(A3,B3) → 2026/2/20</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">点検が完了したらA列を最新の日付に更新すれば、次回日程も自動で再計算されます。</p>



<h3 class="wp-block-heading"><span id="toc9">Nヶ月前の日付を求める（月数にマイナス値）</span></h3>



<p class="wp-block-paragraph">「過去6ヶ月分のデータを抽出したい」ときに開始日を求められます。</p>



<pre class="wp-block-code"><code>=EDATE(TODAY(), -6)</code></pre>



<p class="wp-block-paragraph">今日が2026/3/19なら、結果は「2025/9/19」です。</p>



<p class="wp-block-paragraph">FILTER関数（条件に合うデータだけを抽出する関数）と組み合わせると便利です。A列に日付、B列に売上が入っているとします。</p>



<pre class="wp-block-code"><code>=FILTER(A:B, A:A&gt;=EDATE(TODAY(),-6))</code></pre>



<p class="wp-block-paragraph">直近6ヶ月分のデータだけが抽出されます。日付の境界が毎日自動で動くので、レポートの更新作業が不要になりますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">ARRAYFORMULA関数と組み合わせて複数行まとめて計算する</span></h3>



<p class="wp-block-paragraph">契約日や点検日が何十行も並んでいると、1行ずつEDATE関数をコピーするのは面倒ですよね。そんなときは<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>と組み合わせると便利です。</p>



<p class="wp-block-paragraph">ARRAYFORMULA関数は、範囲を渡すだけで全行に同じ計算を一括適用してくれる関数です。1つの数式で列全体を処理できます。</p>



<p class="wp-block-paragraph">A2からA10に契約開始日が入っていて、それぞれの3ヶ月後をC列にまとめて出す例です。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(EDATE(A2:A10, 3))</code></pre>



<p class="wp-block-paragraph">C2に入力するだけで、A2〜A10の各日付から3ヶ月後の日付が一気に表示されます。行ごとに数式をコピーする必要はありません。</p>



<p class="wp-block-paragraph">ただし、このままだとデータが入っていない空白行に「1900/1/3」のような変な日付が出てしまいます。空白セルをゼロ（つまり日付の起点）として計算してしまうためです。</p>



<p class="wp-block-paragraph">そこでIF関数で空白を判定して回避します。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(A2:A=&quot;&quot;, &quot;&quot;, EDATE(A2:A, 3)))</code></pre>



<p class="wp-block-paragraph">A列が空白の行は空白のまま、日付が入っている行だけ3ヶ月後を計算します。<code>A2:A</code> のように行番号を省略して列全体を指定すれば、後からデータを追加しても自動で計算されますよ。</p>



<p class="wp-block-paragraph">月数もセル参照にしたいときは、月数の列を範囲で渡します。A列が開始日、B列が契約月数の場合です。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(A2:A=&quot;&quot;, &quot;&quot;, EDATE(A2:A, B2:B)))</code></pre>



<p class="wp-block-paragraph">これで「3ヶ月契約は3ヶ月後、6ヶ月契約は6ヶ月後」と、行ごとに異なる月数でまとめて計算できます。契約一覧表の満了日を1つの数式で管理できるので、メンテナンスがぐっと楽になります。</p>



<h2 class="wp-block-heading"><span id="toc11">EDATE関数の月末日の自動調整を理解する</span></h2>



<p class="wp-block-paragraph">EDATE関数の重要な特徴が「月末日の自動調整」です。</p>



<p class="wp-block-paragraph">開始日が1月31日で1ヶ月後を求める場合を見てみましょう。</p>



<pre class="wp-block-code"><code>=EDATE(&quot;2026/1/31&quot;, 1)</code></pre>



<p class="wp-block-paragraph">結果は「2026/2/28」です。2月には31日がないため、自動的に2月の末日（28日）に調整されます。</p>



<p class="wp-block-paragraph">これが<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>との大きな違いです。同じ計算をDATE関数でやると結果が変わります。</p>



<pre class="wp-block-code"><code>=DATE(YEAR(A1), MONTH(A1)+1, DAY(A1))</code></pre>



<p class="wp-block-paragraph">A1が「2026/1/31」の場合、結果は「2026/3/3」です。2月31日は存在しないため、3日分が3月にロールオーバー（繰り越し）されます。</p>



<p class="wp-block-paragraph">具体的な比較を見てみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>開始日</th><th>月数</th><th>EDATE関数の結果</th><th>DATE関数の結果</th></tr></thead><tbody><tr><td>2026/1/31</td><td>+1</td><td>2026/2/28（月末に調整）</td><td>2026/3/3（ロールオーバー）</td></tr><tr><td>2026/1/31</td><td>+2</td><td>2026/3/31（31日がある月はそのまま）</td><td>2026/3/31（同じ結果）</td></tr><tr><td>2026/3/31</td><td>+1</td><td>2026/4/30（月末に調整）</td><td>2026/5/1（ロールオーバー）</td></tr><tr><td>2026/1/29</td><td>+1</td><td>2026/2/28（月末に調整）</td><td>2026/3/1（ロールオーバー）</td></tr></tbody></table></figure>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_result_edate-monthend.png" alt="05 result edate monthend" /></figure>



<p class="wp-block-paragraph">月末日が絡む計算では、EDATE関数のほうが直感的な結果を返してくれます。「3月31日の1ヶ月後は4月30日」と解釈されるのは自然ですよね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「月末日を必ず月末に維持したい」場合はEDATE関数、「厳密に同じ日付を保ちたい」場合はDATE関数と使い分けましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc12">EOMONTH関数との使い分け</span></h2>



<p class="wp-block-paragraph">EDATE関数とよくセットで紹介されるのがEOMONTH関数（読み方: イーオーマンス関数）です。</p>



<p class="wp-block-paragraph">EOMONTH関数は「Nヶ月後の月末日」を返す関数です。構文はEDATE関数とほぼ同じです。</p>



<pre class="wp-block-code"><code>=EOMONTH(開始日, 月数)</code></pre>



<p class="wp-block-paragraph">両者の違いを比較表で整理しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>EDATE関数</th><th>EOMONTH関数</th></tr></thead><tbody><tr><td>返す日付</td><td>Nヶ月後の<strong>同日</strong></td><td>Nヶ月後の<strong>月末日</strong></td></tr><tr><td>2026/1/15の2ヶ月後</td><td>2026/3/15</td><td>2026/3/31</td></tr><tr><td>2026/1/31の1ヶ月後</td><td>2026/2/28（月末に調整）</td><td>2026/2/28（月末日）</td></tr><tr><td>主な用途</td><td>契約満了日・次回点検日</td><td>月末締め・支払期日</td></tr><tr><td>月末の扱い</td><td>存在しない日は月末に調整</td><td>常に月末日を返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けの目安はシンプルです。</p>



<ul class="wp-block-list"><li>「Nヶ月後の同じ日」がほしい → <strong>EDATE関数</strong></li><li>「Nヶ月後の月末日」がほしい → <strong>EOMONTH関数</strong></li></ul>



<p class="wp-block-paragraph">たとえば「毎月15日が支払日」ならEDATE関数、「毎月末が締め日」ならEOMONTH関数を選びます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>当月の末日を求めるだけなら <code>=EOMONTH(TODAY(), 0)</code> が最も簡単です。<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>の <code>=DATE(YEAR(TODAY()), MONTH(TODAY())+1, 0)</code> でも同じ結果が得られますが、EOMONTHのほうが数式がシンプルですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc13">WORKDAY関数との使い分け</span></h2>



<p class="wp-block-paragraph">「Nヶ月後」ではなく「N営業日後」を求めたいときは、EDATE関数ではなく<a href="https://mashukabu.com/spreadsheet-workday-function/">WORKDAY関数</a>を使います。</p>



<p class="wp-block-paragraph">WORKDAY関数は、開始日から指定した営業日数（土日を除いた日数）だけ進んだ日付を返す関数です。構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=WORKDAY(開始日, 日数, [休日])</code></pre>



<p class="wp-block-paragraph">EDATE関数とWORKDAY関数は、どちらも「未来の日付」を計算しますが、数える単位がまったく違います。EDATE関数はカレンダーの月単位、WORKDAY関数は土日を除いた営業日単位です。</p>



<p class="wp-block-paragraph">両者を比較表で整理しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>EDATE関数</th><th>WORKDAY関数</th></tr></thead><tbody><tr><td>数える単位</td><td>月数（カレンダー月）</td><td>営業日数（日単位）</td></tr><tr><td>土日の扱い</td><td>区別せず同日を返す</td><td>土日をスキップする</td></tr><tr><td>祝日の考慮</td><td>なし</td><td>休日リストを指定可能</td></tr><tr><td>2026/1/15から</td><td>+1ヶ月 → 2026/2/15</td><td>+10営業日 → 2026/1/29</td></tr><tr><td>向いている用途</td><td>契約満了日・定期更新・Nヶ月後の日付</td><td>請求支払期限・納品日・検収期限</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けの基準は「月で数えるか、営業日で数えるか」のひと言に尽きます。</p>



<ul class="wp-block-list"><li>「3ヶ月後」「半年後」など<strong>月単位</strong>で考える → <strong>EDATE関数</strong></li><li>「10営業日以内」「5営業日後」など<strong>営業日単位</strong>で考える → <strong>WORKDAY関数</strong></li></ul>



<p class="wp-block-paragraph">たとえば「契約満了は6ヶ月後」ならEDATE関数、「請求書発行から10営業日以内に入金」ならWORKDAY関数が適しています。土日や祝日をまたぐ納期管理では、営業日で数えるWORKDAY関数のほうが実態に合いますよ。</p>



<h2 class="wp-block-heading"><span id="toc14">EDATE関数のよくあるエラーと対処法</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>開始日が日付として認識されていない</td><td>セルの値が日付型か確認する。文字列の場合はDATEVALUE関数（日付文字列を日付値に変換する関数）で変換する</td></tr><tr><td>#VALUE!</td><td>月数に数値以外が入っている</td><td>月数のセルに文字列が混ざっていないか確認する</td></tr><tr><td>数字が表示される</td><td>表示形式が「数値」になっている</td><td>セルの表示形式を「日付」に変更する</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc15">開始日が文字列になっているとき</span></h3>



<p class="wp-block-paragraph">「2026/1/15」と手入力した値が文字列として認識されるケースがあります。セルの左上に小さな三角マークが出ていたら文字列の可能性があります。</p>



<pre class="wp-block-code"><code>=EDATE(DATEVALUE(&quot;2026/1/15&quot;), 3)</code></pre>



<p class="wp-block-paragraph">DATEVALUE関数で文字列を日付値に変換すれば解決します。ただし最初から<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>で日付を作成するほうが確実です。</p>



<h3 class="wp-block-heading"><span id="toc16">日付でなく数字が表示されるとき</span></h3>



<p class="wp-block-paragraph">EDATE関数の結果が「46112」のような数字で表示される場合は、セルの表示形式が「数値」になっています。</p>



<p class="wp-block-paragraph">セルを選択して「表示形式」メニューから「日付」を選べば正しく表示されます。関数自体は正常に動作しているので安心してください。</p>



<h2 class="wp-block-heading"><span id="toc17">EDATE関数に関するよくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc18">Q1. 結果が数値で表示される場合はどうすればよいですか？</span></h3>



<p class="wp-block-paragraph">セルの表示形式を「日付」に変更してください。EDATE関数は内部的に日付シリアル値（1900年からの通算日数）を返すため、セルが数値書式のままだと「46112」のような数字で表示されます。</p>



<p class="wp-block-paragraph">セルを選択して「表示形式」メニューから「日付」を選べば、正しい日付表示に切り替わります。関数の計算結果は正常なので、見た目の問題だけですよ。</p>



<h3 class="wp-block-heading"><span id="toc19">Q2. ExcelのEDATE関数と同じ構文で使えますか？</span></h3>



<p class="wp-block-paragraph">はい、まったく同じ構文で使えます。<code>=EDATE(開始日, 月数)</code> という書き方はExcelとGoogleスプレッドシートで完全に共通です。</p>



<p class="wp-block-paragraph">月末日の自動調整など、動作仕様も同じです。ExcelファイルをGoogleスプレッドシートに取り込んでも、EDATE関数を含む数式はそのまま動作するので、ファイル共有時も安心してください。</p>



<h3 class="wp-block-heading"><span id="toc20">Q3. 月数に小数を指定するとどうなりますか？</span></h3>



<p class="wp-block-paragraph">小数点以下が切り捨てられます。たとえば <code>=EDATE(A1, 2.6)</code> は <code>=EDATE(A1, 2)</code> と同じ結果になり、2ヶ月後の日付が返ります。</p>



<p class="wp-block-paragraph">「1.5ヶ月後」のような半月単位の計算はEDATE関数ではできません。日数で調整したい場合は、結果に日数を足す（例: <code>=EDATE(A1,1)+15</code>）といった工夫が必要です。</p>



<h3 class="wp-block-heading"><span id="toc21">Q4. 年単位で加算するにはどうすればよいですか？</span></h3>



<p class="wp-block-paragraph">月数に12の倍数を指定します。1年は12ヶ月なので <code>=EDATE(A1, 12)</code> で1年後、<code>=EDATE(A1, 24)</code> で2年後、<code>=EDATE(A1, 36)</code> で3年後の日付が求められます。</p>



<p class="wp-block-paragraph">「契約は2年更新」のような年単位の管理では、<code>=EDATE(A1, 契約年数*12)</code> のように年数に12を掛ける書き方にすると、セルに年数を入れるだけで計算できて便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc22">Q5. 負の月数を使って過去の日付を求められますか？</span></h3>



<p class="wp-block-paragraph">求められます。月数にマイナス値を指定すると、その分だけ過去の日付が返ります。<code>=EDATE(A1, -3)</code> ならA1から3ヶ月前の日付です。</p>



<p class="wp-block-paragraph">「3ヶ月前の月初から集計したい」「半年前のデータ開始日を出したい」といった過去基準の計算で活躍します。<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>と組み合わせた <code>=EDATE(TODAY(), -6)</code> なら、常に「今日から半年前」を動的に求められますよ。</p>



<h2 class="wp-block-heading"><span id="toc23">まとめ</span></h2>



<p class="wp-block-paragraph">EDATE関数は、指定した日付からNヶ月後・Nヶ月前の日付を返す関数です。</p>



<p class="wp-block-paragraph">ポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=EDATE(開始日, 月数)</code> の2引数。月数にマイナス値で過去の日付も取得できる</li><li>月末日が存在しない場合は自動で月末に調整される（1/31の1ヶ月後は2/28）</li><li>契約満了日・定期点検日・データ抽出期間の計算に最適</li><li><a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>と組み合わせれば、列全体の日付を1つの数式で一括計算できる</li><li>「Nヶ月後の同日」はEDATE関数、「Nヶ月後の月末日」はEOMONTH関数</li><li>「N営業日後」を求めたいときは<a href="https://mashukabu.com/spreadsheet-workday-function/">WORKDAY関数</a>を使う</li><li><a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>はロールオーバーするため月末日の扱いに注意</li><li><a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>は逆に「2つの日付の差を月数で計算する」ときに使う</li></ul>



<p class="wp-block-paragraph">まずは <code>=EDATE(TODAY(), 3)</code> で今日から3ヶ月後の日付を求めるところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-edate-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのMONTH関数の使い方｜月別集計・四半期判定を自動化する完全ガイド</title>
		<link>https://mashukabu.com/spreadsheet-month-function/</link>
					<comments>https://mashukabu.com/spreadsheet-month-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:48:10 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ARRAYFORMULA]]></category>
		<category><![CDATA[EOMONTH関数]]></category>
		<category><![CDATA[MONTH関数]]></category>
		<category><![CDATA[SUMIF]]></category>
		<category><![CDATA[SUMIFS]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[四半期判定]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[月別集計]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4312</guid>

					<description><![CDATA[スプレッドシートのMONTH関数の使い方を実務目線で解説。基本構文から月別集計（SUMIF/SUMIFS）、今月データ抽出、四半期判定、月初・月末の算出、ARRAYFORMULAでの自動化まで全パターン網羅。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「この売上データ、月ごとに集計してほしいんだけど」。こんな依頼、急に飛んでくると地味に焦りますよね。日付から月だけを取り出す作業を手作業でやると、コピペミスや並び替えミスが必ず混ざります。件数が増えれば増えるほど、リスクは高くなります。</p>



<p class="wp-block-paragraph">スプレッドシートのMONTH関数を使えば、ここは一発で解決できます。日付から月の数字を自動で取り出せるので、月別集計や四半期判定、今月データの自動抽出まで応用がききます。この記事では、MONTH関数の基本から、SUMIFS・ARRAYFORMULA・EOMONTHとの組み合わせまで、実務でそのまま使えるパターンをまるごと紹介していきます。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-4" checked><label class="toc-title" for="toc-checkbox-4">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">スプレッドシートのMONTH関数とは？基本構文と戻り値</a><ol><li><a href="#toc2" tabindex="0">=MONTH(日付) の引数</a></li><li><a href="#toc3" tabindex="0">日付セルから月を取り出す基本例</a></li></ol></li><li><a href="#toc4" tabindex="0">月別集計をSUMIF＋MONTHで自動化する</a><ol><li><a href="#toc5" tabindex="0">補助列にMONTHで月番号を抽出する</a></li><li><a href="#toc6" tabindex="0">SUMIFで月ごとに合計する</a></li><li><a href="#toc7" tabindex="0">SUMIFSで「月＋カテゴリ」の複合集計</a></li></ol></li><li><a href="#toc8" tabindex="0">今月のデータだけを抽出する（MONTH＋TODAY）</a><ol><li><a href="#toc9" tabindex="0">MONTH(TODAY())で今月番号を取得</a></li><li><a href="#toc10" tabindex="0">IFと組み合わせた条件抽出</a></li><li><a href="#toc11" tabindex="0">自動更新される今月集計の作り方</a></li></ol></li><li><a href="#toc12" tabindex="0">四半期を自動判定する2つの方式</a><ol><li><a href="#toc13" tabindex="0">ROUNDUP(MONTH()/3,0) で暦年Q1〜Q4</a></li><li><a href="#toc14" tabindex="0">4月始まりの会計年度に対応する数式</a></li></ol></li><li><a href="#toc15" tabindex="0">ARRAYFORMULAで補助列を使わずに集計する</a><ol><li><a href="#toc16" tabindex="0">補助列を1セルで生成する</a></li><li><a href="#toc17" tabindex="0">SUMPRODUCTで補助列なし集計</a></li></ol></li><li><a href="#toc18" tabindex="0">DATE関数・EOMONTH関数で月初・月末を求める</a><ol><li><a href="#toc19" tabindex="0">月初日を求める数式</a></li><li><a href="#toc20" tabindex="0">月末日を求める2つの方法</a></li></ol></li><li><a href="#toc21" tabindex="0">YEAR・MONTH・DAYの違いと使い分け</a></li><li><a href="#toc22" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc23" tabindex="0">ピボットテーブルとMONTH関数の使い分け</a></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのMONTH関数とは？基本構文と戻り値</span></h2>



<p class="wp-block-paragraph">MONTH関数は、日付データから「月」だけを取り出す関数です。読み方はそのまま「マンス」。戻り値は1〜12の整数で返ってきます。たとえば7月20日なら <code>7</code> が返ります。</p>



<h3 class="wp-block-heading"><span id="toc2">=MONTH(日付) の引数</span></h3>



<pre class="wp-block-code"><code>=MONTH(日付)</code></pre>



<p class="wp-block-paragraph">引数はひとつだけ。とてもシンプルです。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>日付</td><td>必須</td><td>月を取り出したい日付。セル参照、DATE関数の結果、シリアル値が使える</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">文字列で渡すと <code>#VALUE!</code> エラーになるので、必ず日付値で渡してください。ここはあとで詳しく触れます。</p>



<h3 class="wp-block-heading"><span id="toc3">日付セルから月を取り出す基本例</span></h3>



<p class="wp-block-paragraph">セルA2に <code>2026/07/20</code> と入っている場合を見てみましょう。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<pre class="wp-block-code"><code>=MONTH(A2)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-month-function/02_formula_month-basic.png/">_images/spreadsheet-month-function/02_formula_month-basic.png</a></p>



<p class="wp-block-paragraph">結果は <code>7</code> です。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/03_result_month-basic.png" alt="03 result month basic" /></figure>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数の使い方</a>と組み合わせることもできます。</p>



<pre class="wp-block-code"><code>=MONTH(DATE(2026,12,25))</code></pre>



<p class="wp-block-paragraph">結果は <code>12</code> 。DATE関数（年・月・日から日付を作る関数）で作った日付でも問題なく使えます。</p>



<p class="wp-block-paragraph">シリアル値を直接渡しても動きます。</p>



<pre class="wp-block-code"><code>=MONTH(46022)   → 12（2026/12/25）</code></pre>



<p class="wp-block-paragraph">ただし、シリアル値を覚える必要はありません。実務ではセル参照かDATE関数で十分ですよ。</p>



<h2 class="wp-block-heading"><span id="toc4">月別集計をSUMIF＋MONTHで自動化する</span></h2>



<p class="wp-block-paragraph">実務で最もよく使うのが、月別の合計を出すパターンです。MONTH関数で補助列を作る方法が一番わかりやすいので、そこから紹介します。</p>



<h3 class="wp-block-heading"><span id="toc5">補助列にMONTHで月番号を抽出する</span></h3>



<p class="wp-block-paragraph">まず、日付が入ったA列の横に補助列を作ります。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（日付）</th><th>B列（売上）</th><th>C列（月）</th></tr></thead><tbody><tr><td>2行目</td><td>2026/01/15</td><td>30,000</td><td>1</td></tr><tr><td>3行目</td><td>2026/01/28</td><td>45,000</td><td>1</td></tr><tr><td>4行目</td><td>2026/02/10</td><td>20,000</td><td>2</td></tr><tr><td>5行目</td><td>2026/03/05</td><td>55,000</td><td>3</td></tr><tr><td>6行目</td><td>2026/01/20</td><td>10,000</td><td>1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">C2に入れる数式はこれだけです。</p>



<pre class="wp-block-code"><code>=MONTH(A2)</code></pre>



<p class="wp-block-paragraph">あとはC6までコピーすればOKです。</p>



<h3 class="wp-block-heading"><span id="toc6">SUMIFで月ごとに合計する</span></h3>



<p class="wp-block-paragraph">補助列ができたら、SUMIF関数（条件に合うセルを合計する関数）で月ごとに集計できます。</p>



<pre class="wp-block-code"><code>=SUMIF(C2:C6, 1, B2:B6)</code></pre>



<p class="wp-block-paragraph">1月の売上合計は <code>85,000</code> です。30,000 + 45,000 + 10,000 ですね。手動で計算しても一致します。</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-month-function/04_result_month-sumif.png/">_images/spreadsheet-month-function/04_result_month-sumif.png</a></p>



<p class="wp-block-paragraph">月の数字を変えるだけで、2月なら <code>20,000</code>、3月なら <code>55,000</code> と出せます。データが増えても数式を変える必要がないのが便利です。</p>



<p class="wp-block-paragraph">実務では、別の表に「1月・2月・3月…」と縦に並べておいて、SUMIFの条件部分にセル参照を入れるのが定番パターンです。</p>



<pre class="wp-block-code"><code>=SUMIF($C$2:$C$100, E2, $B$2:$B$100)</code></pre>



<p class="wp-block-paragraph">E2に「1」、E3に「2」と入れておけば、コピーするだけで12ヶ月分の集計表ができあがります。</p>



<h3 class="wp-block-heading"><span id="toc7">SUMIFSで「月＋カテゴリ」の複合集計</span></h3>



<p class="wp-block-paragraph">「商品カテゴリ別×月別」のような複合集計には、SUMIFS関数（複数条件で合計する関数）が便利です。</p>



<p class="wp-block-paragraph">D列に「カテゴリ」を追加した表を想定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（日付）</th><th>B列（売上）</th><th>C列（月）</th><th>D列（カテゴリ）</th></tr></thead><tbody><tr><td>2行目</td><td>2026/01/15</td><td>30,000</td><td>1</td><td>文具</td></tr><tr><td>3行目</td><td>2026/01/28</td><td>45,000</td><td>1</td><td>雑貨</td></tr><tr><td>4行目</td><td>2026/02/10</td><td>20,000</td><td>2</td><td>文具</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「1月の文具の売上」を求める数式はこうです。</p>



<pre class="wp-block-code"><code>=SUMIFS(B2:B100, C2:C100, 1, D2:D100, &quot;文具&quot;)</code></pre>



<p class="wp-block-paragraph">結果は <code>30,000</code> 。SUMIF（条件1つ）と違い、SUMIFSは合計範囲が先頭、条件は後ろにペアで並びます。書き順が違うので、ここは混同しやすいポイントですよ。</p>



<h2 class="wp-block-heading"><span id="toc8">今月のデータだけを抽出する（MONTH＋TODAY）</span></h2>



<p class="wp-block-paragraph">「今月分だけ見たい」という場面も多いですよね。MONTH関数と<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数の使い方</a>を組み合わせれば、自動で今月を判定できます。</p>



<h3 class="wp-block-heading"><span id="toc9">MONTH(TODAY())で今月番号を取得</span></h3>



<pre class="wp-block-code"><code>=MONTH(TODAY())</code></pre>



<p class="wp-block-paragraph">TODAY関数（今日の日付を返す関数）は再計算時に更新されます。なので、この数式は常に現在の月番号を返してくれます。2026年5月なら <code>5</code> です。</p>



<h3 class="wp-block-heading"><span id="toc10">IFと組み合わせた条件抽出</span></h3>



<p class="wp-block-paragraph">「今月のデータなら売上を表示、それ以外は空白」という条件分岐もできます。</p>



<pre class="wp-block-code"><code>=IF(MONTH(A2)=MONTH(TODAY()), B2, &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">ただし、これだと「年」をチェックしていないので、去年の同じ月も拾ってしまいます。実務では年も合わせてチェックするのが安全です。</p>



<pre class="wp-block-code"><code>=IF(AND(MONTH(A2)=MONTH(TODAY()), YEAR(A2)=YEAR(TODAY())), B2, &quot;&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc11">自動更新される今月集計の作り方</span></h3>



<p class="wp-block-paragraph">SUMIFと組み合わせると、月が変わるたびに集計対象が自動で切り替わる仕組みが作れます。</p>



<pre class="wp-block-code"><code>=SUMIF(C2:C100, MONTH(TODAY()), B2:B100)</code></pre>



<p class="wp-block-paragraph">C列が補助列（MONTH関数で月番号を入れた列）です。ただし複数年データを扱う場合は、SUMIFSで年もチェックしてください。</p>



<pre class="wp-block-code"><code>=SUMIFS(B2:B100, C2:C100, MONTH(TODAY()), F2:F100, YEAR(TODAY()))</code></pre>



<p class="wp-block-paragraph">F列に <code>=YEAR(A2)</code> で年の補助列を作っておくのがコツです。月が変わると自動で集計対象が切り替わるので、月初にダッシュボードを開くだけで最新数字が見られます。</p>



<h2 class="wp-block-heading"><span id="toc12">四半期を自動判定する2つの方式</span></h2>



<p class="wp-block-paragraph">月番号がわかれば、四半期の判定も簡単です。MONTH関数の結果を少し加工するだけで実現できます。</p>



<h3 class="wp-block-heading"><span id="toc13">ROUNDUP(MONTH()/3,0) で暦年Q1〜Q4</span></h3>



<pre class="wp-block-code"><code>=ROUNDUP(MONTH(A2)/3, 0)</code></pre>



<p class="wp-block-paragraph">ROUNDUP関数（切り上げを行う関数）で、月を3で割って切り上げます。仕組みはこうです。</p>



<ul class="wp-block-list"><li>1〜3月: 1/3〜3/3 → 切り上げで <code>1</code>（Q1）</li><li>4〜6月: 4/3〜6/3 → 切り上げで <code>2</code>（Q2）</li><li>7〜9月: 7/3〜9/3 → 切り上げで <code>3</code>（Q3）</li><li>10〜12月: 10/3〜12/3 → 切り上げで <code>4</code>（Q4）</li></ul>



<p class="wp-block-paragraph">「Q1」のように表示したい場合は、文字列連結で対応できます。</p>



<pre class="wp-block-code"><code>=&quot;Q&quot; &amp; ROUNDUP(MONTH(A2)/3, 0)</code></pre>



<p class="wp-block-paragraph">7月なら <code>Q3</code> と表示されます。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_result_month-quarter.png" alt="05 result month quarter" /></figure>



<h3 class="wp-block-heading"><span id="toc14">4月始まりの会計年度に対応する数式</span></h3>



<p class="wp-block-paragraph">日本企業に多い4月始まりの会計年度には、こちらの数式が対応します。</p>



<pre class="wp-block-code"><code>=INT(MOD(MONTH(A2)-4, 12)/3) + 1</code></pre>



<p class="wp-block-paragraph">ちょっとむずかしく見えますが、やっていることはシンプルです。MOD関数（余りを求める関数）で4月を起点にずらし、3で割って四半期番号にしています。</p>



<ul class="wp-block-list"><li>4〜6月 → Q1</li><li>7〜9月 → Q2</li><li>10〜12月 → Q3</li><li>1〜3月 → Q4</li></ul>



<p class="wp-block-paragraph">経理部門で決算資料を作るときに、ここはよく使うパターンです。社内の会計年度に合わせて使い分けてみてください。</p>



<h2 class="wp-block-heading"><span id="toc15">ARRAYFORMULAで補助列を使わずに集計する</span></h2>



<p class="wp-block-paragraph">補助列を作るのが面倒、というケースもありますよね。ARRAYFORMULA（配列処理を一括で行う関数）を使えば、補助列なしで月番号を一気に処理できます。</p>



<h3 class="wp-block-heading"><span id="toc16">補助列を1セルで生成する</span></h3>



<p class="wp-block-paragraph">C2に次の数式を入れます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(A2:A=&quot;&quot;,&quot;&quot;,MONTH(A2:A)))</code></pre>



<p class="wp-block-paragraph">これだけで、A列のデータがある行すべてに月番号が自動で入ります。データを追加しても、数式のコピーが不要なのが大きなメリットです。</p>



<h3 class="wp-block-heading"><span id="toc17">SUMPRODUCTで補助列なし集計</span></h3>



<p class="wp-block-paragraph">補助列そのものをなくしたい場合は、SUMPRODUCT関数（配列同士の積和を求める関数）と組み合わせます。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((MONTH(A2:A100)=1)*(B2:B100))</code></pre>



<p class="wp-block-paragraph">これで「1月の売上合計」が一発で出せます。MONTH関数を配列にそのまま渡せるのがSUMPRODUCTの強みです。SUMIFSより少し重くなりますが、データ件数が数千件レベルまでなら体感差はほぼありません。</p>



<p class="wp-block-paragraph">ただしARRAYFORMULAで作った列の真下にデータを手入力すると <code>#REF!</code> エラーになるので、ARRAYFORMULA列は他のデータと混ぜないようにしてくださいね。</p>



<h2 class="wp-block-heading"><span id="toc18">DATE関数・EOMONTH関数で月初・月末を求める</span></h2>



<p class="wp-block-paragraph">MONTH関数は、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数の使い方</a>と組み合わせると月初・月末の日付も求められます。</p>



<h3 class="wp-block-heading"><span id="toc19">月初日を求める数式</span></h3>



<pre class="wp-block-code"><code>=DATE(YEAR(A2), MONTH(A2), 1)</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-year-function/">YEAR関数の使い方</a>で年を、MONTH関数で月を取り出します。日を <code>1</code> に固定すれば月初日の完成です。</p>



<p class="wp-block-paragraph">A2が <code>2026/07/20</code> なら、結果は <code>2026/07/01</code> になります。</p>



<h3 class="wp-block-heading"><span id="toc20">月末日を求める2つの方法</span></h3>



<p class="wp-block-paragraph">月末日の求め方は2つあります。</p>



<pre class="wp-block-code"><code>=DATE(YEAR(A2), MONTH(A2)+1, 0)</code></pre>



<p class="wp-block-paragraph">この数式は「翌月の0日」を指定しています。0日目は前月の最終日になるんです。なので、7月の翌月8月の0日は <code>2026/07/31</code> です。</p>



<p class="wp-block-paragraph">もっとシンプルに書くなら、EOMONTH関数（月末日を返す関数）が便利です。</p>



<pre class="wp-block-code"><code>=EOMONTH(A2, 0)</code></pre>



<p class="wp-block-paragraph">結果は同じ <code>2026/07/31</code> です。第2引数の数字を変えると、翌月末や先月末も求められます。</p>



<pre class="wp-block-code"><code>=EOMONTH(A2, 1)    → 翌月末
=EOMONTH(A2, -1)   → 先月末</code></pre>



<p class="wp-block-paragraph">請求書の支払期限計算（請求月の翌月末払いなど）にもよく使うので、EOMONTHはセットで覚えておくと便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc21">YEAR・MONTH・DAYの違いと使い分け</span></h2>



<p class="wp-block-paragraph">日付から特定の要素を取り出す関数は、3つセットで覚えると便利です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>戻り値</th><th>範囲</th><th>例（2026/07/20）</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-year-function/">YEAR関数</a></td><td>年</td><td>1900〜9999</td><td>2026</td></tr><tr><td>MONTH</td><td>月</td><td>1〜12</td><td>7</td></tr><tr><td>DAY</td><td>日</td><td>1〜31</td><td>20</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">3つとも構文は同じ形式です。DAY関数（日を返す関数）も同様で、引数に日付を渡すだけ。使い方に迷うことはないですよね。</p>



<pre class="wp-block-code"><code>=YEAR(A2)   → 2026
=MONTH(A2)  → 7
=DAY(A2)    → 20</code></pre>



<p class="wp-block-paragraph">どの関数も、セル参照やDATE関数の結果を渡して使います。数式内に <code>7/20/2026</code> のように直接書くと、割り算として計算されてしまうので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc22">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">MONTH関数で出やすいエラーは2つです。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code></td><td>日付として認識できない文字列を渡した</td><td>セル参照またはDATE関数を使う。文字列ならDATEVALUEで変換</td></tr><tr><td><code>#NUM!</code></td><td>シリアル値が大きすぎる/負の値</td><td>入力値を確認する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">よくあるのは <code>#VALUE!</code> エラーです。たとえば、次の数式はエラーになります。</p>



<pre class="wp-block-code"><code>=MONTH(&quot;2026年7月20日&quot;)</code></pre>



<p class="wp-block-paragraph">日本語の日付文字列は認識できません。この場合はDATE関数で書き直してください。</p>



<pre class="wp-block-code"><code>=MONTH(DATE(2026,7,20))</code></pre>



<p class="wp-block-paragraph">CSVから読み込んだデータで日付が文字列扱いになっている場合は、DATEVALUE関数（文字列を日付値に変換する関数）を挟むと解決します。</p>



<pre class="wp-block-code"><code>=MONTH(DATEVALUE(A2))</code></pre>



<p class="wp-block-paragraph">もうひとつ注意したいのが、数式内での日付の直接入力です。</p>



<pre class="wp-block-code"><code>=MONTH(7/20/2026)</code></pre>



<p class="wp-block-paragraph">これは <code>7÷20÷2026</code> という割り算になってしまいます。必ずセル参照かDATE関数を使ってみてください。</p>



<h2 class="wp-block-heading"><span id="toc23">ピボットテーブルとMONTH関数の使い分け</span></h2>



<p class="wp-block-paragraph">「ピボットテーブルを使えば、MONTH関数いらないのでは？」と思った方もいるかもしれません。実は両方とも使い所が違います。</p>



<figure class="wp-block-table"><table><thead><tr><th>用途</th><th>おすすめ</th></tr></thead><tbody><tr><td>探索的に色々な切り口で見たい</td><td>ピボットテーブル</td></tr><tr><td>帳票として固定化・自動更新したい</td><td>MONTH関数＋SUMIF/SUMIFS</td></tr><tr><td>ダッシュボードで他関数と組み合わせたい</td><td>MONTH関数</td></tr><tr><td>データ件数が万件超で集計が重い</td><td>ピボットテーブル</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ピボットは強力ですが、レイアウトを固定したり、別シートの数値と連動させたりするのは苦手です。一方MONTH関数は、自分で作った集計表に好きなようにレイアウトを組めます。</p>



<p class="wp-block-paragraph">両方使えるようになると、用途に応じて選べるのでぐっと作業がはかどりますよ。</p>



<h2 class="wp-block-heading"><span id="toc24">まとめ</span></h2>



<p class="wp-block-paragraph">MONTH関数は、日付から月を取り出すシンプルな関数です。構文は <code>=MONTH(日付)</code> のひとつだけ。でも組み合わせ次第で、月別集計から四半期判定、月初月末の算出まで幅広く使えます。</p>



<p class="wp-block-paragraph">この記事で紹介した活用パターンをおさらいしましょう。</p>



<ul class="wp-block-list"><li><strong>月別集計</strong>: 補助列にMONTH関数 → SUMIF/SUMIFSで合計</li><li><strong>複合集計</strong>: SUMIFSで「月＋カテゴリ」など複数条件</li><li><strong>今月データの抽出</strong>: MONTH(TODAY())で自動判定。年もセットでチェック</li><li><strong>四半期判定</strong>: 暦年は ROUNDUP(MONTH()/3,0)、4月始まりは MOD式</li><li><strong>補助列なし</strong>: ARRAYFORMULAやSUMPRODUCTで一括処理</li><li><strong>月初・月末</strong>: DATE関数やEOMONTH関数と組み合わせ</li></ul>



<p class="wp-block-paragraph">まずは補助列を使った月別集計から試してみてください。一度作れば、毎月の集計作業がグッと楽になりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-month-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのEOMONTH関数の使い方｜月末日を自動計算する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-eomonth/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-eomonth/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Fri, 20 May 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[EOMONTH関数]]></category>
		<category><![CDATA[支払期日]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[月末日]]></category>
		<category><![CDATA[関数比較]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=1961</guid>

					<description><![CDATA[ExcelのEOMONTH関数で月末日を自動計算する方法を解説。支払期日・翌月末・3ヶ月後の月末日など実務パターンを紹介し、DATE・EDATE関数との使い分けも整理しています。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「請求書の支払期日を毎月手入力している」なんてことはありませんか。月によって末日が28日だったり31日だったり、手計算だとミスしやすいですよね。</p>



<p class="wp-block-paragraph">ExcelのEOMONTH関数を使えば、指定した月の月末日を一発で計算できます。この記事では基本の書き方から実務パターンまでまとめて紹介します。</p>



<p class="wp-block-paragraph">この記事は次のような人におすすめ</p>



<ul class="wp-block-list"><li>翌月末や3ヶ月後の月末日を自動で計算したい</li><li>請求書の支払期日を数式で管理したい</li><li>EOMONTH関数と<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a>の違いを整理したい</li></ul>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-5" checked><label class="toc-title" for="toc-checkbox-5">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">EOMONTH関数とは？</a></li><li><a href="#toc2" tabindex="0">EOMONTH関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">EOMONTH関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">当月の月末日を取得する</a></li><li><a href="#toc7" tabindex="0">翌月末・翌々月末を取得する</a></li><li><a href="#toc8" tabindex="0">前月末を取得する</a></li><li><a href="#toc9" tabindex="0">TODAY関数と組み合わせる</a></li><li><a href="#toc10" tabindex="0">DATE関数と組み合わせる</a></li></ol></li><li><a href="#toc11" tabindex="0">EOMONTH関数の実務活用パターン</a><ol><li><a href="#toc12" tabindex="0">パターン1: 請求書の支払期日（翌月末払い）</a></li><li><a href="#toc13" tabindex="0">パターン2: 翌月末締め翌々月末払い</a></li><li><a href="#toc14" tabindex="0">パターン3: 翌月末の5営業日前を計算する</a></li><li><a href="#toc15" tabindex="0">パターン4: 当月の日数を求める</a></li><li><a href="#toc16" tabindex="0">パターン5: 月末日かどうかを判定する</a></li></ol></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">似た関数との違い・使い分け</a></li><li><a href="#toc19" tabindex="0">まとめ</a><ol><li><a href="#toc20" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">EOMONTH関数とは？</span></h2>



<p class="wp-block-paragraph"><strong>EOMONTH関数</strong>（読み方: エンド オブ マンス）は、開始日から指定した月数だけ前後した月の<strong>月末日</strong>をシリアル値で返す関数です。「End Of MONTH」の頭文字が関数名の由来です。</p>



<p class="wp-block-paragraph">たとえば <code>2025/4/15</code> を起点に1ヶ月後を指定すると、<strong>2025/5/31</strong>（5月の月末日）が返ります。2月のような短い月でも自動で28日や29日を返してくれます。</p>



<p class="wp-block-paragraph">Excelの日付は内部的に「シリアル値」という数値で管理されています。1900年1月1日を「1」として、1日ごとに1ずつ増えます。EOMONTH関数の戻り値もシリアル値なので、セルの表示形式を「日付」にしておくと日付として表示されます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>戻り値がシリアル値の数字（45443など）で表示される場合は、セルの表示形式を「日付」に変更してください。セルを選択して <code>Ctrl + 1</code> → 「表示形式」タブ → 「日付」を選びます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">EOMONTH関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=EOMONTH(開始日, 月)</code></pre>



<p class="wp-block-paragraph">引数は2つで<strong>どちらも必須</strong>です。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>内容</th></tr></thead><tbody><tr><td><strong>開始日</strong></td><td>必須</td><td>起算日となる日付を指定する。セル参照・<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>などが使える</td></tr><tr><td><strong>月</strong></td><td>必須</td><td>開始日から何ヶ月後（正の数）または何ヶ月前（負の数）かを整数で指定する。0を指定すると当月の月末日が返る</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>開始日に日付の文字列（<code>"2025/4/15"</code>）を直接指定することもできますが、<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>やセル参照を使うほうが確実です。文字列のままだとExcelが日付として認識できずにエラーになることがあります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc5">EOMONTH関数の基本的な使い方</span></h2>



<h3 class="wp-block-heading"><span id="toc6">当月の月末日を取得する</span></h3>



<p class="wp-block-paragraph">もっとも基本的な使い方です。A1に <code>2025/4/15</code> が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 0)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2025/4/30</strong></p>



<p class="wp-block-paragraph">第2引数に <code>0</code> を指定すると、開始日と同じ月の月末日が返ります。月によって28日・30日・31日と変わる月末日を自動で取得できるのがポイントです。</p>



<h3 class="wp-block-heading"><span id="toc7">翌月末・翌々月末を取得する</span></h3>



<p class="wp-block-paragraph">第2引数に正の数を指定すると、指定した月数後の月末日を取得できます。A1に <code>2025/4/15</code> が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 1)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2025/5/31</strong>（翌月末）</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 2)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2025/6/30</strong>（翌々月末）</p>



<p class="wp-block-paragraph">請求書の支払期日が「翌月末払い」のときにそのまま使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">前月末を取得する</span></h3>



<p class="wp-block-paragraph">第2引数に負の数を指定すると、過去の月末日を取得できます。A1に <code>2025/4/15</code> が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, -1)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2025/3/31</strong>（前月末）</p>



<p class="wp-block-paragraph">前月の締め日を求めたいときや、前月末時点の残高を参照するときに使えます。</p>



<h3 class="wp-block-heading"><span id="toc9">TODAY関数と組み合わせる</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>と組み合わせると、今月や来月の月末日を自動取得できます。</p>



<pre class="wp-block-code"><code>=EOMONTH(TODAY(), 0)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2026/3/31</strong>（2026年3月の場合）</p>



<p class="wp-block-paragraph">ファイルを開くたびに自動で更新されるので、期限管理や月次処理で重宝します。</p>



<h3 class="wp-block-heading"><span id="toc10">DATE関数と組み合わせる</span></h3>



<p class="wp-block-paragraph">年・月・日を直接指定して月末日を取得したいときは<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>と組み合わせます。</p>



<pre class="wp-block-code"><code>=EOMONTH(DATE(2025,2,1), 0)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2025/2/28</strong></p>



<p class="wp-block-paragraph">2月の月末日は年によって28日と29日が変わりますが、EOMONTH関数がうるう年も正しく処理してくれます。</p>



<h2 class="wp-block-heading"><span id="toc11">EOMONTH関数の実務活用パターン</span></h2>



<h3 class="wp-block-heading"><span id="toc12">パターン1: 請求書の支払期日（翌月末払い）</span></h3>



<p class="wp-block-paragraph">「請求日の翌月末が支払期日」というルールは多くの会社で使われていますよね。A1に請求日が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 1)</code></pre>



<p class="wp-block-paragraph">結果の例:</p>



<ul class="wp-block-list"><li><code>2025/3/15</code>（請求日） → <strong>2025/4/30</strong>（支払期日）</li><li><code>2025/1/31</code>（請求日） → <strong>2025/2/28</strong>（支払期日）</li></ul>



<p class="wp-block-paragraph">たった1つの数式で、月ごとの末日の違いを気にせず支払期日を求められます。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン2: 翌月末締め翌々月末払い</span></h3>



<p class="wp-block-paragraph">「今月末で締めて翌々月末に支払う」というパターンも実務ではよくあります。A1に取引日が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 2)</code></pre>



<p class="wp-block-paragraph">結果の例:</p>



<ul class="wp-block-list"><li><code>2025/4/10</code> → <strong>2025/6/30</strong>（翌々月末）</li><li><code>2025/12/20</code> → <strong>2026/2/28</strong>（翌々月末・年またぎ）</li></ul>



<p class="wp-block-paragraph">年をまたぐ場合も正しく計算してくれるのが便利です。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン3: 翌月末の5営業日前を計算する</span></h3>



<p class="wp-block-paragraph">支払処理には準備期間が必要ですよね。翌月末の5日前を求める例です。A1に基準日が入っているとします。</p>



<pre class="wp-block-code"><code>=EOMONTH(A1, 1)-5</code></pre>



<p class="wp-block-paragraph">結果の例:</p>



<ul class="wp-block-list"><li><code>2025/4/15</code> → <strong>2025/5/26</strong>（5月31日の5日前）</li><li><code>2025/1/15</code> → <strong>2025/2/23</strong>（2月28日の5日前）</li></ul>



<p class="wp-block-paragraph">EOMONTH関数の戻り値はシリアル値なので、そのまま足し引きできます。営業日ベースで計算したい場合は WORKDAY関数と組み合わせてみてください。</p>



<h3 class="wp-block-heading"><span id="toc15">パターン4: 当月の日数を求める</span></h3>



<p class="wp-block-paragraph">月によって日数が違う（28日・30日・31日）ため、手計算は面倒です。EOMONTH関数と<a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a>を組み合わせれば一発です。A1に日付が入っているとします。</p>



<pre class="wp-block-code"><code>=DAY(EOMONTH(A1, 0))</code></pre>



<p class="wp-block-paragraph">結果の例:</p>



<ul class="wp-block-list"><li><code>2025/4/15</code> → <strong>30</strong>（4月は30日まで）</li><li><code>2025/2/10</code> → <strong>28</strong>（2025年2月は28日まで）</li><li><code>2024/2/10</code> → <strong>29</strong>（2024年はうるう年）</li></ul>



<p class="wp-block-paragraph">当月末の日付をDAY関数で「日」だけ取り出しています。うるう年の判定も不要になりますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">パターン5: 月末日かどうかを判定する</span></h3>



<p class="wp-block-paragraph">「その日が月末日かどうか」を自動で判定したい場面もありますよね。A1に日付が入っているとします。</p>



<pre class="wp-block-code"><code>=IF(A1=EOMONTH(A1, 0), &quot;月末日&quot;, &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">結果の例:</p>



<ul class="wp-block-list"><li><code>2025/3/31</code> → <strong>月末日</strong></li><li><code>2025/4/30</code> → <strong>月末日</strong></li><li><code>2025/4/15</code> → （空白）</li></ul>



<p class="wp-block-paragraph">A1の日付と当月末日を直接比較しています。<a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a>で日の部分だけを比較する方法もありますが、日付同士を直接比較するほうがシンプルです。</p>



<h2 class="wp-block-heading"><span id="toc17">よくあるエラーと対処法</span></h2>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#VALUE!</code> エラー</td><td>開始日が日付として認識できない文字列</td><td>セルの値が正しい日付形式か確認する。文字列が入っている場合は<a href="https://mashukabu.com/excel-function-howto-use-datevalue/">DATEVALUE関数</a>で変換する</td></tr><tr><td><code>#VALUE!</code> エラー</td><td>月の引数に数値以外を指定した</td><td>第2引数は整数を指定する。小数を指定した場合は小数部が切り捨てられる</td></tr><tr><td><code>#NUM!</code> エラー</td><td>計算結果の日付がExcelの日付範囲外</td><td>Excelの日付は1900/1/1〜9999/12/31が有効範囲。範囲外になる月数を指定していないか確認する</td></tr><tr><td>数字（45443など）が表示される</td><td>セルの表示形式が「日付」になっていない</td><td>セルの表示形式を「日付」に変更する（<code>Ctrl + 1</code> → 日付を選択）</td></tr><tr><td>想定と違う月末日が返る</td><td>開始日が文字列として保存されている</td><td>セルが左寄せになっていたら文字列の可能性あり。<a href="https://mashukabu.com/excel-function-howto-use-datevalue/">DATEVALUE関数</a>で変換するか再入力する</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>第2引数の「月」に小数（1.5など）を指定した場合、小数部分は切り捨てられます。<code>=EOMONTH(A1, 1.9)</code> は <code>=EOMONTH(A1, 1)</code> と同じ結果になります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc18">似た関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">EOMONTH関数と同じ「日付計算」系の関数を比較します。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>目的</th><th>使い方の例</th><th>結果</th></tr></thead><tbody><tr><td><strong>EOMONTH</strong></td><td>Nヶ月後の月末日を取得</td><td><code>=EOMONTH("2025/4/15", 1)</code></td><td>2025/5/31</td></tr><tr><td><strong><a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a></strong></td><td>Nヶ月後の同日を取得</td><td><code>=EDATE("2025/4/15", 1)</code></td><td>2025/5/15</td></tr><tr><td><strong><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a></strong></td><td>年・月・日を指定して日付を作成</td><td><code>=DATE(2025,4,15)</code></td><td>2025/4/15</td></tr><tr><td><strong><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a></strong></td><td>今日の日付を取得</td><td><code>=TODAY()</code></td><td>2026/3/17</td></tr><tr><td><strong><a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a></strong></td><td>日付から日を取り出す</td><td><code>=DAY("2025/4/15")</code></td><td>15</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>使い分けのポイント</strong></p>



<ul class="wp-block-list"><li>「翌月末の日付が欲しい」→ <strong>EOMONTH関数</strong>（月末日を自動計算）</li><li>「翌月の同じ日が欲しい」→ <strong><a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a></strong>（同日を返す）</li><li>「年・月・日を指定して日付を組み立てたい」→ <strong><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a></strong></li><li>「当月の日数を知りたい」→ <strong>EOMONTH関数 + <a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a></strong>（<code>=DAY(EOMONTH(A1,0))</code>）</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>EOMONTH関数は<strong>月末日</strong>を返し、<a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a>は<strong>同じ日</strong>を返すのが最大の違いです。たとえば4/15の1ヶ月後は、EOMONTHなら「5/31」、EDATEなら「5/15」です。支払期日に使うならEOMONTH、契約更新日に使うならEDATEが適しています。</p></blockquote>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>で <code>=DATE(YEAR(A1), MONTH(A1)+1, 0)</code> と書いても月末日は取得できますが、EOMONTH関数のほうが意図が明確で読みやすいです。</p>



<h2 class="wp-block-heading"><span id="toc19">まとめ</span></h2>



<p class="wp-block-paragraph">EOMONTH関数は、指定した月の月末日を自動計算する関数です。</p>



<ul class="wp-block-list"><li><strong>構文</strong>: <code>=EOMONTH(開始日, 月)</code> &#8212; 引数は2つ</li><li><strong>戻り値</strong>: 指定した月数後（または前）の月末日のシリアル値</li><li><strong>よく使う組み合わせ</strong>: <a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>で今月末を取得、<a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a>で当月の日数を計算、<a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数</a>で月末日判定</li><li><strong>実務活用</strong>: 支払期日の計算、当月の日数取得、月末日かどうかの判定</li><li><strong>関連関数</strong>: <a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>・<a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数</a>と目的に応じて使い分ける</li></ul>



<p class="wp-block-paragraph">月末日の計算は、月ごとに日数が変わるため手入力だとミスが起きやすい部分です。EOMONTH関数で自動化して、請求書や期限管理を効率よく回してみてください。</p>



<h3 class="wp-block-heading"><span id="toc20">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-year/">YEAR関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-month/">MONTH関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-day/">DAY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-datevalue/">DATEVALUE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-text/">TEXT関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-weekday/">WEEKDAY関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">IF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sumifs/">SUMIFS関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-countifs/">COUNTIFS関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-ceiling/">CEILING関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別のエクセル関数一覧</a></li><li><a href="https://mashukabu.com/excel-function-alphabetical-order/">アルファベット順のエクセル関数一覧</a></li><li><a href="https://mashukabu.com/excel-error-value-list/">エラー値一覧</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-eomonth/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
