<?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>TODAY関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/today%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>TODAY関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのYEARFRAC関数の使い方｜年単位の期間を小数で計算</title>
		<link>https://mashukabu.com/spreadsheet-yearfrac-function/</link>
					<comments>https://mashukabu.com/spreadsheet-yearfrac-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:28:43 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATEDIF関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[YEARFRAC関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[勤続年数]]></category>
		<category><![CDATA[年数計算]]></category>
		<category><![CDATA[日付計算]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4721</guid>

					<description><![CDATA[スプレッドシートのYEARFRAC関数の使い方を基本から解説。2つの日付の間が何年かを小数で返す関数で、勤続年数や契約期間の計算に便利です。DATEDIF関数との違いや基準日数の設定、実務での活用例まで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「入社してから何年何ヶ月か、ざっくり年数で出せないかな？」。勤続年数や契約期間を管理していると、こんな場面が出てきますよね。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>を使えば「6年」のような整数は出せます。でも「6.46年」のように端数まで含めた正確な年数がほしい場面もあります。</p>



<p class="wp-block-paragraph">GoogleスプレッドシートのYEARFRAC関数なら、2つの日付の間隔を<strong>年単位の小数</strong>で一発計算できます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、勤続年数や契約残期間の計算、DATEDIFとの使い分けまで、実務で使えるテクニックをまとめて紹介します。</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">YEARFRAC関数とは？スプレッドシートで年単位の期間を計算する関数</a></li><li><a href="#toc2" tabindex="0">YEARFRAC関数の書き方｜構文と引数</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li><li><a href="#toc5" tabindex="0">基準（日数計算方法）の種類</a></li></ol></li><li><a href="#toc6" tabindex="0">YEARFRAC関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">セル参照で年数を求める</a></li><li><a href="#toc8" tabindex="0">基準を指定して実日数ベースで計算する</a></li><li><a href="#toc9" tabindex="0">DATE関数と組み合わせる</a></li></ol></li><li><a href="#toc10" tabindex="0">実務で使えるYEARFRAC関数の活用例</a><ol><li><a href="#toc11" tabindex="0">勤続年数を小数で自動計算する</a></li><li><a href="#toc12" tabindex="0">契約の残り期間を年単位で求める</a></li><li><a href="#toc13" tabindex="0">年齢に端数を含めて計算する</a></li></ol></li><li><a href="#toc14" tabindex="0">YEARFRAC関数のエラーと対処法</a><ol><li><a href="#toc15" tabindex="0">#VALUE!エラー（日付が不正な場合）</a></li><li><a href="#toc16" tabindex="0">#NUM!エラー（基準の値が不正な場合）</a></li><li><a href="#toc17" tabindex="0">IFERRORで安全にエラーを回避する</a></li></ol></li><li><a href="#toc18" tabindex="0">DATEDIF関数との違い・使い分け</a><ol><li><a href="#toc19" tabindex="0">使い分けの判断基準</a></li></ol></li><li><a href="#toc20" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">YEARFRAC関数とは？スプレッドシートで年単位の期間を計算する関数</span></h2>



<p class="wp-block-paragraph">YEARFRAC関数（読み方: イヤーフラック関数）は、<strong>2つの日付の間隔が年単位で何年にあたるかを小数で返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は「year（年）」と「fraction（端数・割合）」を組み合わせた造語です。</p>



<p class="wp-block-paragraph">たとえば「2020/4/1」から「2026/9/15」までの期間をYEARFRAC関数で求めると「6.4583&#8230;」のような値が返ります。つまり約6年5ヶ月半ということです。</p>



<p class="wp-block-paragraph">DATEDIF関数の「Y」単位だと「6」（整数）しか返りませんが、YEARFRAC関数なら端数まで含めた正確な年数がわかります。年齢のような「満何歳」ではなく、勤続年数や契約期間のように「端数も含めた年数」がほしいときに重宝しますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>YEARFRAC関数はGoogleスプレッドシートとExcel（全バージョン）の両方で使えます。構文も同じなので、ファイルを変換しても数式はそのまま動きますよ。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=YEARFRAC(開始日, 終了日, [基準])</code></pre>



<p class="wp-block-paragraph">カッコの中に「開始日」「終了日」の2つを入れます。3つ目の「基準」は省略できます。</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><tr><td>基準</td><td>任意</td><td>日数の計算方法を指定する数値（0〜4、省略時は0）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">開始日が終了日より後でもエラーにはなりません。ただし結果がマイナスになるので、通常は開始日を終了日より前に指定してください。</p>



<h3 class="wp-block-heading"><span id="toc5">基準（日数計算方法）の種類</span></h3>



<p class="wp-block-paragraph">第3引数の「基準」は、1年の日数をどう計算するかを指定します。金融計算で使われるオプションですが、<strong>一般的な実務では省略して問題ありません</strong>。</p>



<figure class="wp-block-table"><table><thead><tr><th>基準</th><th>計算方法</th><th>1年の日数</th></tr></thead><tbody><tr><td>0（省略時）</td><td>米国方式（NASD 30/360）</td><td>各月30日 / 年360日</td></tr><tr><td>1</td><td>実日数 / 実日数</td><td>うるう年は366日、それ以外は365日</td></tr><tr><td>2</td><td>実日数 / 360日</td><td>年360日として計算</td></tr><tr><td>3</td><td>実日数 / 365日</td><td>年365日として計算（うるう年も同じ）</td></tr><tr><td>4</td><td>ヨーロッパ方式（30/360）</td><td>各月30日 / 年360日</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>勤続年数や契約期間など「正確な暦日ベース」で計算したい場合は、基準を「1」に指定するのがおすすめです。省略時（0）は各月を30日とみなす金融向けの計算方法なので、実日数とわずかにズレることがあります。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc7">セル参照で年数を求める</span></h3>



<p class="wp-block-paragraph">A2に開始日「2020/4/1」、B2に終了日「2026/9/15」が入っているとします。</p>



<pre class="wp-block-code"><code>=YEARFRAC(A2, B2)</code></pre>



<p class="wp-block-paragraph">結果は「6.458333&#8230;」です。約6.46年、つまり6年5ヶ月半の期間があるとわかります。</p>



<p class="wp-block-paragraph">引数はセル参照で指定するのが基本です。日付データを変更するだけで結果が自動更新されますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">基準を指定して実日数ベースで計算する</span></h3>



<p class="wp-block-paragraph">デフォルト（基準0）は各月を30日とみなす計算です。実際の暦日に基づいて正確に計算したい場合は、基準に「1」を指定します。</p>



<pre class="wp-block-code"><code>=YEARFRAC(A2, B2, 1)</code></pre>



<p class="wp-block-paragraph">結果は「6.460&#8230;」です。基準0のときと値がわずかに異なります。これは、基準0が「すべての月を30日」と仮定するのに対し、基準1は実際の日数（31日の月は31日、うるう年は366日）で計算するためです。</p>



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



<p class="wp-block-paragraph">年・月・日がバラバラのセルに入っている場合は、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>（年・月・日から日付を作る関数）を組み合わせます。</p>



<pre class="wp-block-code"><code>=YEARFRAC(DATE(2020,4,1), DATE(2026,9,15), 1)</code></pre>



<p class="wp-block-paragraph">DATE関数で日付データを作ってからYEARFRACに渡す形です。</p>



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



<h3 class="wp-block-heading"><span id="toc11">勤続年数を小数で自動計算する</span></h3>



<p class="wp-block-paragraph">人事名簿で入社日がA2に入っているとします。勤続年数を小数で表示してみましょう。</p>



<pre class="wp-block-code"><code>=YEARFRAC(A2, TODAY(), 1)</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>は今日の日付を返す関数です。入社日と今日の差を年単位で求めています。</p>



<p class="wp-block-paragraph">A2が「2020/4/1」で今日が「2026/3/21」なら、結果は「5.971&#8230;」です。約5年11ヶ月半ということですね。</p>



<p class="wp-block-paragraph">整数部分だけ取り出したい場合は、INT関数で囲みます。</p>



<pre class="wp-block-code"><code>=INT(YEARFRAC(A2, TODAY(), 1))</code></pre>



<p class="wp-block-paragraph">結果は「5」です。端数を切り捨てた「満何年」が返ります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「X年Yヶ月」形式で表示したいなら、<a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>のほうが向いています。YEARFRACは「6.46年」のような小数値、DATEDIFは「6年5ヶ月」のような整数値と、用途に応じて使い分けてください。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc12">契約の残り期間を年単位で求める</span></h3>



<p class="wp-block-paragraph">契約終了日がB2に入っているとして、残り期間を年単位で計算してみましょう。</p>



<pre class="wp-block-code"><code>=YEARFRAC(TODAY(), B2, 1)</code></pre>



<p class="wp-block-paragraph">B2が「2028/3/31」なら、結果は「2.027&#8230;」です。残り約2.0年とわかります。</p>



<p class="wp-block-paragraph">「残り1年未満になったら更新手続きを始める」といった判定にも使えます。</p>



<pre class="wp-block-code"><code>=IF(YEARFRAC(TODAY(), B2, 1) &lt; 1, &quot;更新手続き必要&quot;, &quot;&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc13">年齢に端数を含めて計算する</span></h3>



<p class="wp-block-paragraph">保険の年齢計算のように、端数を含めた年齢が必要な場面もあります。</p>



<pre class="wp-block-code"><code>=YEARFRAC(A2, TODAY(), 1)</code></pre>



<p class="wp-block-paragraph">A2が「1990/5/20」で今日が「2026/3/21」なら、結果は「35.838&#8230;」です。35歳と約10ヶ月ということですね。</p>



<p class="wp-block-paragraph">満年齢（整数）だけでよければDATEDIF関数の「Y」単位を使いましょう。端数まで必要なケースでYEARFRAC関数が活躍します。</p>



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



<h3 class="wp-block-heading"><span id="toc15">#VALUE!エラー（日付が不正な場合）</span></h3>



<p class="wp-block-paragraph">YEARFRAC関数に渡した値が正しい日付データになっていないと、#VALUE!エラーが発生します。</p>



<p class="wp-block-paragraph">よくある原因は次の3つです。</p>



<ul class="wp-block-list"><li>セルに日付が「文字列」として入力されている</li><li>全角数字が混じっている（例: 「２０２０/4/1」）</li><li>存在しない日付を指定している（例: 「2020/2/30」）</li></ul>



<p class="wp-block-paragraph">対処法は、セルの表示形式を「日付」に変更するか、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>で日付データを作り直すことです。</p>



<pre class="wp-block-code"><code>=YEARFRAC(DATE(2020,4,1), DATE(2026,9,15), 1)</code></pre>



<p class="wp-block-paragraph">DATE関数を経由すれば、確実に正しい日付データとして処理されます。</p>



<h3 class="wp-block-heading"><span id="toc16">#NUM!エラー（基準の値が不正な場合）</span></h3>



<p class="wp-block-paragraph">第3引数の「基準」に0〜4以外の値を指定すると、#NUM!エラーが発生します。</p>



<pre class="wp-block-code"><code>=YEARFRAC(A2, B2, 5)   → #NUM!</code></pre>



<p class="wp-block-paragraph">基準は0・1・2・3・4の5種類だけです。それ以外の数値を指定していないか確認してください。</p>



<h3 class="wp-block-heading"><span id="toc17">IFERRORで安全にエラーを回避する</span></h3>



<p class="wp-block-paragraph">データに不備がある行でもエラー表示を防ぎたい場合は、IFERROR関数（エラーのとき代替値を返す関数）で囲みます。</p>



<pre class="wp-block-code"><code>=IFERROR(YEARFRAC(A2, TODAY(), 1), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">A2が空欄だったり不正な日付だったりしても、エラーの代わりに空白が表示されます。名簿のように大量の行がある場面ではIFERROR関数との組み合わせがおすすめです。</p>



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



<p class="wp-block-paragraph">YEARFRAC関数と<a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>は、どちらも2つの日付の間隔を求める関数です。大きな違いは「戻り値の形式」です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>YEARFRAC関数</th><th>DATEDIF関数</th></tr></thead><tbody><tr><td>戻り値</td><td>年数の小数（例: 6.46）</td><td>整数（例: 6）</td></tr><tr><td>端数の扱い</td><td>小数で含まれる</td><td>切り捨てられる</td></tr><tr><td>単位の指定</td><td>年のみ（自動）</td><td>Y/M/D/YM/MD/YDの6種類</td></tr><tr><td>基準の指定</td><td>あり（0〜4）</td><td>なし</td></tr><tr><td>引数の順序</td><td>開始日, 終了日</td><td>開始日, 終了日</td></tr><tr><td>逆順のとき</td><td>マイナスの値を返す</td><td>#NUM!エラー</td></tr><tr><td>主な用途</td><td>期間の小数表示、金融計算</td><td>年齢計算、X年Yヶ月表示</td></tr></tbody></table></figure>



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



<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>勤続年数を「6.5年」のように小数で表示</td><td>YEARFRAC</td><td><code>=YEARFRAC(A2, TODAY(), 1)</code></td></tr><tr><td>勤続年数を「6年5ヶ月」のように表示</td><td>DATEDIF</td><td>Y + YMの組み合わせ</td></tr><tr><td>年齢を満年齢（整数）で求める</td><td>DATEDIF</td><td><code>=DATEDIF(A2, TODAY(), "Y")</code></td></tr><tr><td>契約残期間が1年未満かどうか判定する</td><td>YEARFRAC</td><td><code>=YEARFRAC(TODAY(), B2, 1) < 1</code></td></tr><tr><td>2つの日付の日数だけ知りたい</td><td><a href="https://mashukabu.com/spreadsheet-days-function/">DAYS関数</a></td><td><code>=DAYS(B2, A2)</code></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">小数の年数がほしいならYEARFRAC、整数の年・月・日で分解したいならDATEDIF、日数だけならDAYSと覚えておけば迷いません。</p>



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



<p class="wp-block-paragraph">YEARFRAC関数は、2つの日付の間隔を年単位の小数で返す関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=YEARFRAC(開始日, 終了日, [基準])</code> の2〜3引数</li><li>戻り値は小数（例: 6.46年）。端数まで含めた正確な年数がわかる</li><li>基準は省略可。実日数ベースで計算したいなら「1」を指定</li><li>勤続年数は <code>=YEARFRAC(入社日, TODAY(), 1)</code> で自動計算できる</li><li>整数の年数がほしいならINT関数で囲む</li><li>「X年Yヶ月」形式で表示したい場合はDATEDIF関数を使う</li></ul>



<figure class="wp-block-table"><table><thead><tr><th>場面</th><th>使う関数</th></tr></thead><tbody><tr><td>年数を小数で知りたい</td><td>YEARFRAC関数</td></tr><tr><td>年・月・日の整数で知りたい</td><td><a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a></td></tr><tr><td>日数だけ知りたい</td><td><a href="https://mashukabu.com/spreadsheet-days-function/">DAYS関数</a></td></tr><tr><td>今日の日付を基準にしたい</td><td><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>と組み合わせ</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">まずは <code>=YEARFRAC(A2, TODAY(), 1)</code> で勤続年数の計算から試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-yearfrac-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのDAYS関数の使い方｜2つの日付間の日数を計算</title>
		<link>https://mashukabu.com/spreadsheet-days-function/</link>
					<comments>https://mashukabu.com/spreadsheet-days-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 10:56:00 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATEDIF関数]]></category>
		<category><![CDATA[DATE関数]]></category>
		<category><![CDATA[DAYS関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[日数計算]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4326</guid>

					<description><![CDATA[スプレッドシートのDAYS関数で2つの日付間の日数を計算する方法を解説。引数の順序や日付の引き算との違い、DATEDIFとの使い分けを比較表で整理。TODAY関数と組み合わせた残り日数カウントや経過率の求め方も紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「プロジェクトの開始日から終了日まで何日あるんだろう？」。スプレッドシートで期限管理をしていると、こんな場面がよくありますよね。</p>



<p class="wp-block-paragraph">日付を引き算すれば日数は出せますが、数式を見ただけでは「何を計算しているのか」が伝わりにくいです。</p>



<p class="wp-block-paragraph">GoogleスプレッドシートのDAYS関数を使えば、2つの日付の間の日数を明快に求められます。数式の意図もひと目で読み取れますよ。</p>



<p class="wp-block-paragraph">この記事ではDAYS関数の基本から実務活用まで解説します。TODAY関数との組み合わせやDATEDIFとの使い分けも紹介しますよ。</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">DAYS関数とは？スプレッドシートで日数を計算する関数</a></li><li><a href="#toc2" tabindex="0">DAYS関数の書き方｜構文と引数</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">DAYS関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">セル参照で日数を求める</a></li><li><a href="#toc7" tabindex="0">日付を直接入力する場合</a></li><li><a href="#toc8" tabindex="0">DATE関数と組み合わせる</a></li></ol></li><li><a href="#toc9" tabindex="0">実務で使えるDAYS関数の活用例</a><ol><li><a href="#toc10" tabindex="0">残り日数カウント ── TODAY関数との組み合わせ</a></li><li><a href="#toc11" tabindex="0">プロジェクトの経過率を計算する</a></li></ol></li><li><a href="#toc12" tabindex="0">日付の引き算とDAYS関数の違い</a></li><li><a href="#toc13" tabindex="0">DATEDIFとの使い分け｜引数の順序に注意</a><ol><li><a href="#toc14" tabindex="0">引数の順序が真逆</a></li><li><a href="#toc15" tabindex="0">DAYS・DATEDIF・日付引き算の使い分け早見表</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">#VALUE!エラー（日付が文字列の場合）</a></li><li><a href="#toc18" tabindex="0">結果がマイナスになる場合</a></li></ol></li><li><a href="#toc19" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">DAYS関数とは？スプレッドシートで日数を計算する関数</span></h2>



<p class="wp-block-paragraph">DAYS関数（読み方: デイズ関数）は、<strong>2つの日付の間の日数を整数で返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「days（日数）」がそのまま関数名になっています。</p>



<p class="wp-block-paragraph">たとえば「2025/4/1」と「2025/9/30」の間が何日あるかを、1つの数式で求められます。うるう年の2月29日も自動で考慮してくれるので、手計算の必要はありません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>DAYS関数はGoogleスプレッドシートとExcel（2013以降）の両方で使えます。構文も同じなので、ファイルを変換しても数式はそのまま動きますよ。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=DAYS(終了日, 開始日)</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>期間の終わりとなる日付（第1引数）</td></tr><tr><td>開始日</td><td>必須</td><td>期間の始まりとなる日付（第2引数）</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>WARNING</strong></p><p>引数の順番に注意してください。DAYS関数は<strong>終了日が先、開始日が後</strong>です。<a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>は「開始日, 終了日」の順番なので、逆になっている点がよくある間違いポイントですよ。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc6">セル参照で日数を求める</span></h3>



<p class="wp-block-paragraph">A2に開始日「2025/4/1」、B2に終了日「2025/9/30」が入っているとします。</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>=DAYS(B2, A2)</code></pre>



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



<p class="wp-block-paragraph">結果は「182」です。2つの日付の間には182日あるとわかります。</p>



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



<p class="wp-block-paragraph">引数はセル参照で指定するのが基本です。日付データを変更するだけで結果が自動更新されますよ。</p>



<h3 class="wp-block-heading"><span id="toc7">日付を直接入力する場合</span></h3>



<p class="wp-block-paragraph">セルを使わずに、数式内に日付を直接書くこともできます。</p>



<pre class="wp-block-code"><code>=DAYS(&quot;2025/9/30&quot;, &quot;2025/4/1&quot;)</code></pre>



<p class="wp-block-paragraph">こちらも結果は「182」です。ちょっとした計算のときに便利ですが、日付を変更するたびに数式を書き直す必要があります。普段はセル参照を使いましょう。</p>



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



<p class="wp-block-paragraph">年・月・日がバラバラのセルに入っている場合は、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>（年・月・日から日付を作る関数）を組み合わせます。</p>



<pre class="wp-block-code"><code>=DAYS(DATE(2025,9,30), DATE(2025,4,1))</code></pre>



<p class="wp-block-paragraph">DATE関数で日付データを作ってからDAYSに渡す形です。結果はもちろん「182」ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc10">残り日数カウント ── TODAY関数との組み合わせ</span></h3>



<p class="wp-block-paragraph">締め切りまであと何日か知りたいときは、<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>（今日の日付を返す関数）と組み合わせます。</p>



<p class="wp-block-paragraph">B2に期限日「2026/3/31」が入っているとして、次の数式を入力します。</p>



<pre class="wp-block-code"><code>=DAYS(B2, TODAY())</code></pre>



<p class="wp-block-paragraph">今日が2026/3/19なら結果は「12」です。期限まで残り12日とわかります。</p>



<p class="wp-block-paragraph">TODAY関数はファイルを開くたびに自動で更新されます。毎日の残り日数を常に最新の状態で確認できますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>期限を過ぎるとマイナスの値が返ります。たとえば期限が3日前なら「-3」です。マイナスになったら「期限超過」と表示したい場合は、IF関数を組み合わせましょう。<br><code></code><code><br>=IF(DAYS(B2, TODAY()) < 0, "期限超過", DAYS(B2, TODAY()) &#038; "日")<br></code><code></code></p></blockquote>



<h3 class="wp-block-heading"><span id="toc11">プロジェクトの経過率を計算する</span></h3>



<p class="wp-block-paragraph">プロジェクトの進捗を「経過率」で把握したい場面もありますよね。開始日がA2、終了日がB2に入っているとします。</p>



<pre class="wp-block-code"><code>=DAYS(TODAY(), A2) / DAYS(B2, A2)</code></pre>



<p class="wp-block-paragraph">分子が「開始日から今日までの日数」、分母が「開始日から終了日までの全日数」です。</p>



<p class="wp-block-paragraph">A2が「2025/4/1」、B2が「2025/9/30」、今日が「2025/7/1」なら次のようになります。</p>



<ul class="wp-block-list"><li>分子: DAYS(&#8220;2025/7/1&#8221;, &#8220;2025/4/1&#8221;) = 91日</li><li>分母: DAYS(&#8220;2025/9/30&#8221;, &#8220;2025/4/1&#8221;) = 182日</li><li>経過率: 91 / 182 = 0.5（50%）</li></ul>



<p class="wp-block-paragraph">セルの表示形式を「パーセント」にすれば「50%」と表示されます。ガントチャートの代わりに使えて便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc12">日付の引き算とDAYS関数の違い</span></h2>



<p class="wp-block-paragraph">スプレッドシートでは、日付の引き算でも日数を求められます。</p>



<pre class="wp-block-code"><code>=B2 - A2</code></pre>



<p class="wp-block-paragraph">A2が「2025/4/1」、B2が「2025/9/30」なら、引き算でも結果は「182」です。DAYS関数と同じ値になります。</p>



<p class="wp-block-paragraph">では、なぜDAYS関数が用意されているのでしょうか？違いを整理してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>日付の引き算（=B2-A2）</th><th>DAYS関数（=DAYS(B2,A2)）</th></tr></thead><tbody><tr><td>結果</td><td>同じ（日数を返す）</td><td>同じ（日数を返す）</td></tr><tr><td>時刻を含む場合</td><td>小数になる（例: 182.5）</td><td>整数のみ（時刻は無視）</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">実務的に大きな違いが出るのは「時刻を含む日付」を扱うときです。引き算だと「182.5」のような小数になりますが、DAYS関数なら時刻部分を無視して整数だけを返します。</p>



<p class="wp-block-paragraph">数式を他の人と共有する場面が多いなら、DAYS関数を使うほうが意図が明確になりますよ。</p>



<h2 class="wp-block-heading"><span id="toc13">DATEDIFとの使い分け｜引数の順序に注意</span></h2>



<h3 class="wp-block-heading"><span id="toc14">引数の順序が真逆</span></h3>



<p class="wp-block-paragraph">DAYS関数と<a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>は、引数の順番が逆です。ここが一番混同しやすいポイントなので、しっかり押さえておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>DAYS関数</th><th>DATEDIF関数</th></tr></thead><tbody><tr><td>構文</td><td><code>=DAYS(終了日, 開始日)</code></td><td><code>=DATEDIF(開始日, 終了日, 単位)</code></td></tr><tr><td>第1引数</td><td>終了日</td><td>開始日</td></tr><tr><td>第2引数</td><td>開始日</td><td>終了日</td></tr><tr><td>返す値</td><td>日数のみ</td><td>年・月・日を単位で指定</td></tr><tr><td>逆順のとき</td><td>負の値を返す（エラーなし）</td><td>#NUM!エラーが発生</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に注目してほしいのが「逆順のとき」の挙動です。DAYS関数は開始日と終了日を逆にしてもエラーにならず、マイナスの値を返します。一方、DATEDIF関数は#NUM!エラーになります。</p>



<pre class="wp-block-code"><code>=DAYS(&quot;2025/4/1&quot;, &quot;2025/9/30&quot;)    → -182（エラーなし）
=DATEDIF(&quot;2025/9/30&quot;, &quot;2025/4/1&quot;, &quot;D&quot;)  → #NUM!（エラー）</code></pre>



<p class="wp-block-paragraph">DAYS関数のほうがエラーに強いと言えますね。</p>



<h3 class="wp-block-heading"><span id="toc15">DAYS・DATEDIF・日付引き算の使い分け早見表</span></h3>



<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>2つの日付の日数だけを知りたい</td><td>DAYS関数または引き算</td><td><code>=DAYS(B2, A2)</code></td></tr><tr><td>年数・月数で期間を求めたい</td><td>DATEDIF関数</td><td><code>=DATEDIF(A2, B2, "Y")</code></td></tr><tr><td>「X年Yヶ月」形式で表示したい</td><td>DATEDIF関数</td><td>Y + YM の組み合わせ</td></tr><tr><td>土日祝を除いた営業日を数えたい</td><td>NETWORKDAYS関数</td><td><code>=NETWORKDAYS(A2, B2)</code></td></tr><tr><td>数式の意図を明確にしたい</td><td>DAYS関数</td><td><code>=DAYS(B2, A2)</code></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日数だけで十分な場面ならDAYS関数がシンプルです。年数や月数も必要な場合はDATEDIF関数を使ってください。営業日ベースの計算にはNETWORKDAYS関数（土日祝を除いた日数を返す関数）が適しています。</p>



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



<h3 class="wp-block-heading"><span id="toc17">#VALUE!エラー（日付が文字列の場合）</span></h3>



<p class="wp-block-paragraph">DAYS関数に渡した値が正しい日付データになっていないと、#VALUE!エラーが発生します。</p>



<p class="wp-block-paragraph">よくある原因は次の3つです。</p>



<ul class="wp-block-list"><li>セルに日付が「文字列」として入力されている</li><li>全角数字が混じっている（例: 「２０２５/4/1」）</li><li>存在しない日付を指定している（例: 「2025/2/30」）</li></ul>



<p class="wp-block-paragraph">対処法は、セルの表示形式を「日付」に変更するか、DATE関数で日付データを作り直すことです。</p>



<pre class="wp-block-code"><code>=DAYS(DATE(2025,9,30), DATE(2025,4,1))</code></pre>



<p class="wp-block-paragraph">DATE関数を経由すれば、確実に正しい日付データとして処理されます。</p>



<h3 class="wp-block-heading"><span id="toc18">結果がマイナスになる場合</span></h3>



<p class="wp-block-paragraph">DAYS関数は終了日が開始日より前だと、マイナスの値を返します。これはエラーではなく正常な動作です。</p>



<pre class="wp-block-code"><code>=DAYS(&quot;2025/4/1&quot;, &quot;2025/9/30&quot;)   → -182</code></pre>



<p class="wp-block-paragraph">「引数の順番を間違えた」ケースがほとんどです。終了日を第1引数、開始日を第2引数に指定しているか確認してください。</p>



<p class="wp-block-paragraph">常に正の値がほしい場合は、ABS関数（絶対値を返す関数）で囲む方法もあります。</p>



<pre class="wp-block-code"><code>=ABS(DAYS(A2, B2))</code></pre>



<p class="wp-block-paragraph">これなら引数の順番に関係なく、常にプラスの日数が返りますよ。</p>



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



<p class="wp-block-paragraph">DAYS関数は、2つの日付の間の日数を整数で返すシンプルな関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=DAYS(終了日, 開始日)</code> の2引数</li><li><strong>終了日が第1引数、開始日が第2引数</strong>（DATEDIFとは逆順）</li><li>戻り値は整数のみ（時刻を含んでいても小数にならない）</li><li><code>=DAYS(期限日, TODAY())</code> で残り日数を自動カウントできる</li><li>日数だけならDAYS関数、年月日単位ならDATEDIF関数と使い分ける</li><li>引き算でも同じ結果は出るが、DAYS関数のほうが意図が明確</li></ul>



<figure class="wp-block-table"><table><thead><tr><th>場面</th><th>使う関数</th></tr></thead><tbody><tr><td>日数だけ知りたい</td><td>DAYS関数</td></tr><tr><td>年・月の単位も必要</td><td><a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a></td></tr><tr><td>今日の日付を基準にしたい</td><td><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a> と組み合わせ</td></tr><tr><td>年月日から日付を作りたい</td><td><a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a> と組み合わせ</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">まずは <code>=DAYS(B2, A2)</code> で2つの日付の日数を計算するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-days-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートDATE関数の使い方｜月末日・Nヶ月後も自動計算</title>
		<link>https://mashukabu.com/spreadsheet-date-function/</link>
					<comments>https://mashukabu.com/spreadsheet-date-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:50:04 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATE関数]]></category>
		<category><![CDATA[EDATE関数]]></category>
		<category><![CDATA[MONTH関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[YEAR関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[日付作成]]></category>
		<category><![CDATA[月末日]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4329</guid>

					<description><![CDATA[スプレッドシートのDATE関数の使い方を基本から解説。年・月・日のセルを組み合わせて日付を作る方法から、月末日の自動計算（DATE(年,月+1,0)）、Nヶ月後の日付取得まで実務で役立つテクニックを紹介。EDATE・EOMONTH関数との使い分けも解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「2026年」「3月」「15日」のように年・月・日がバラバラのセルに入っていて、ひとつの日付にまとめたいと思ったことはありませんか？</p>



<p class="wp-block-paragraph">Googleスプレッドシートに手入力で「2026/3/15」と打ち込む方法もありますが、データが増えるたびに手作業では追いつきません。ミスも起きやすいですよね。</p>



<p class="wp-block-paragraph">そんなときに活躍するのがDATE関数です。年・月・日の3つの数値を渡すだけで、正しい日付データを作ってくれます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、月末日の自動計算やNヶ月後の日付を求めるテクニックまで紹介します。</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">スプレッドシートのDATE関数とは？年月日から日付を作る関数</a></li><li><a href="#toc2" tabindex="0">DATE関数の基本の書き方</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">DATE関数の基本的な使い方</a></li><li><a href="#toc6" tabindex="0">実務で使えるDATE関数の応用テクニック</a><ol><li><a href="#toc7" tabindex="0">月の最終日を自動計算する</a></li><li><a href="#toc8" tabindex="0">Nヶ月後・Nヶ月前の日付を求める</a></li><li><a href="#toc9" tabindex="0">年度の開始日・終了日を自動計算する</a></li></ol></li><li><a href="#toc10" tabindex="0">EDATE・EOMONTH関数との使い分け</a></li><li><a href="#toc11" tabindex="0">DATE関数のよくあるエラーと対処法</a><ol><li><a href="#toc12" tabindex="0">文字列が混在しているとき</a></li><li><a href="#toc13" tabindex="0">日付でなく数字が表示されるとき</a></li></ol></li><li><a href="#toc14" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートのDATE関数とは？年月日から日付を作る関数</span></h2>



<p class="wp-block-paragraph">DATE関数（読み方: デイト関数）は、<strong>年・月・日の3つの数値から日付データを作成する関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「date（日付）」がそのまま関数名になっています。</p>



<p class="wp-block-paragraph">スプレッドシートの日付は内部的に「シリアル値」という数値で管理されています。たとえば「2026/1/1」はシリアル値で「46023」です。</p>



<p class="wp-block-paragraph">DATE関数を使えば、このシリアル値を意識せずに正しい日付を作成できます。手入力した「2026/3/15」は文字列として認識されるリスクがありますが、DATE関数なら確実に日付型のデータになりますよ。</p>



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



<ul class="wp-block-list"><li>年・月・日のセルを組み合わせて1つの日付を作る</li><li>月や日に計算式を入れてNヶ月後の日付を求める</li><li>日に「0」を指定して前月の末日を取得する</li><li>TODAY関数と組み合わせて「今月1日」などの基準日を作る</li></ul>



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



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



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



<pre class="wp-block-code"><code>=DATE(年, 月, 日)</code></pre>



<p class="wp-block-paragraph">カッコの中に「年」「月」「日」を順番に入れるだけです。引数は3つとも必須です。</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>西暦の年（例: 2026）</td></tr><tr><td>月</td><td>必須</td><td>月を表す数値（1〜12）</td></tr><tr><td>日</td><td>必須</td><td>日を表す数値（1〜31）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">月や日に範囲外の値を指定すると、自動で繰り上げ・繰り下げされます。たとえば月に「13」を指定すると翌年の1月として計算されます。この仕組みを「ロールオーバー」と呼びます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>年に0〜1899の値を指定すると、1900が加算されます。<code>=DATE(119,2,1)</code> は「2019/2/1」になります。西暦4桁で指定するのが安全です。</p></blockquote>



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



<p class="wp-block-paragraph">もっともシンプルな使い方です。年・月・日を直接指定してみましょう。</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>=DATE(2026, 3, 15)</code></pre>



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



<p class="wp-block-paragraph">結果は「2026/3/15」です。確実に日付型のデータが作成されます。</p>



<p class="wp-block-paragraph">セル参照と組み合わせるケースも見てみましょう。A1に「2026」、B1に「3」、C1に「15」が入っているとします。</p>



<pre class="wp-block-code"><code>=DATE(A1, B1, C1)</code></pre>



<p class="wp-block-paragraph">結果は同じく「2026/3/15」です。セルの値を変更すれば日付も自動で更新されます。</p>



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



<p class="wp-block-paragraph">TODAY関数と組み合わせれば「今月1日」も作れます。</p>



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



<p class="wp-block-paragraph">YEAR関数で今年の年、MONTH関数で今月の月を取り出しています。日を「1」に固定すれば、常に今月1日の日付が返りますよ。</p>



<p class="wp-block-paragraph">表示形式を変えたいときは、<a href="https://mashukabu.com/spreadsheet-text-function/">スプレッドシートのTEXT関数</a>を使うと「2026年3月」のような文字列に変換できます。</p>



<h2 class="wp-block-heading"><span id="toc6">実務で使えるDATE関数の応用テクニック</span></h2>



<h3 class="wp-block-heading"><span id="toc7">月の最終日を自動計算する</span></h3>



<p class="wp-block-paragraph">DATE関数の「日」に0を指定すると、前月の末日が返ります。これがDATE関数の隠れた便利ワザです。</p>



<pre class="wp-block-code"><code>=DATE(2026, 4, 0)</code></pre>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-date-function/04_formula_date-last-day.png/">_images/spreadsheet-date-function/04_formula_date-last-day.png</a></p>



<p class="wp-block-paragraph">結果は「2026/3/31」です。4月の「0日目」は3月の最終日として解釈されます。</p>



<p class="wp-block-paragraph">つまり「翌月の0日目＝当月の末日」です。当月の末日を求めるには、月に1を足して日を0にします。</p>



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



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



<p class="wp-block-paragraph">この数式で常に「今月の末日」が返ります。2月の末日も28日と29日を自動で判定してくれますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">Nヶ月後・Nヶ月前の日付を求める</span></h3>



<p class="wp-block-paragraph">DATE関数の「月」に加算・減算をするだけです。A1に基準日が入っているとします。</p>



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



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



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/06_result_date-months-later.png" alt="06 result date months later" /></figure>



<p class="wp-block-paragraph">3ヶ月前を求めるなら、+3を-3に変えるだけです。</p>



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



<p class="wp-block-paragraph">基準日が「2026/4/15」なら、結果は「2026/1/15」です。</p>



<p class="wp-block-paragraph">月末日の基準日には注意が必要です。「2026/1/31」の1ヶ月後は「2026/3/3」になります。2月は28日までしかないため、3日分が3月にロールオーバーするためです。月末日を維持したい場合はEOMONTH関数を使いましょう。</p>



<h3 class="wp-block-heading"><span id="toc9">年度の開始日・終了日を自動計算する</span></h3>



<p class="wp-block-paragraph">日本の多くの企業は4月始まりの年度を使っています。年度の開始日と終了日を自動で求めてみましょう。</p>



<p class="wp-block-paragraph">A1に対象の日付が入っているとします。まず年度の開始日です。</p>



<pre class="wp-block-code"><code>=IF(MONTH(A1)&gt;=4, DATE(YEAR(A1),4,1), DATE(YEAR(A1)-1,4,1))</code></pre>



<p class="wp-block-paragraph">4月以降なら今年の4月1日、1〜3月なら前年の4月1日が返ります。</p>



<p class="wp-block-paragraph">次に年度の終了日です。</p>



<pre class="wp-block-code"><code>=IF(MONTH(A1)&gt;=4, DATE(YEAR(A1)+1,3,31), DATE(YEAR(A1),3,31))</code></pre>



<p class="wp-block-paragraph">4月以降なら翌年の3月31日、1〜3月なら今年の3月31日が返ります。</p>



<p class="wp-block-paragraph">A1が「2026/7/10」なら、年度開始日は「2026/4/1」、年度終了日は「2027/3/31」です。期末レポートの自動化に使ってみてください。</p>



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



<p class="wp-block-paragraph">Nヶ月後の日付や月末日の計算は、専用関数でも実現できます。DATE関数との違いを整理しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>用途</th><th>DATE関数</th><th>専用関数</th></tr></thead><tbody><tr><td>Nヶ月後の日付</td><td><code>=DATE(YEAR(A1),MONTH(A1)+N,DAY(A1))</code></td><td><code>=EDATE(A1,N)</code></td></tr><tr><td>Nヶ月後の月末日</td><td><code>=DATE(YEAR(A1),MONTH(A1)+N+1,0)</code></td><td><code>=EOMONTH(A1,N)</code></td></tr><tr><td>月末日の処理</td><td>ロールオーバーで翌月にずれる</td><td>月末日を維持する</td></tr><tr><td>年度開始日の計算</td><td>DATE関数で自由に組める</td><td>対応不可</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">EDATE関数は「Nヶ月後の同日」を返す専用関数です。数式がシンプルになるのがメリットです。</p>



<p class="wp-block-paragraph">EOMONTH関数は「Nヶ月後の月末日」を返します。月末日の計算はDATE関数より安全です。</p>



<p class="wp-block-paragraph">ただしEDATE・EOMONTH関数では「年度の開始日」のような柔軟な日付計算はできません。年・月・日を個別にコントロールしたい場面ではDATE関数が必要です。</p>



<p class="wp-block-paragraph">使い分けの目安はこうです。</p>



<ul class="wp-block-list"><li>「Nヶ月後の同日」→ EDATE関数がシンプル</li><li>「Nヶ月後の月末日」→ EOMONTH関数が安全</li><li>「特定の年月日を自由に組み立てたい」→ DATE関数</li></ul>



<h2 class="wp-block-heading"><span id="toc11">DATE関数のよくあるエラーと対処法</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>セル参照先が数値かどうか確認する</td></tr><tr><td>#NUM!</td><td>日付の範囲外（負の日付等）</td><td>年月日の値が妥当か確認する</td></tr><tr><td>#ERROR!</td><td>構文ミス（カッコ忘れ等）</td><td>数式の入力内容を見直す</td></tr><tr><td>日付でなく数字が表示される</td><td>表示形式が「数値」になっている</td><td>表示形式を「日付」に変更する</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc12">文字列が混在しているとき</span></h3>



<p class="wp-block-paragraph">年・月・日のセルに文字列が混ざると#VALUE!エラーになります。</p>



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



<p class="wp-block-paragraph">「2026年」は文字列なので数値として認識できません。数値の「2026」を渡す必要があります。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-value-function/">スプレッドシートのVALUE関数</a>で文字列を数値に変換する方法もあります。ただし「2026年」のような日本語混じりの文字列はVALUE関数でも変換できないので注意してください。</p>



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



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



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



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



<p class="wp-block-paragraph">DATE関数は、年・月・日の3つの数値から日付データを作成する関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=DATE(年, 月, 日)</code> の3引数。確実に日付型データが作れる</li><li>日に「0」を指定すれば前月の末日を自動取得できる</li><li>月に加算・減算すればNヶ月後・Nヶ月前の日付が求まる</li><li>年度の開始日・終了日の計算にも活用できる</li><li>Nヶ月後はEDATE関数、月末日はEOMONTH関数も検討する</li><li><a href="https://mashukabu.com/spreadsheet-text-function/">TEXT関数</a>で表示形式を自由にカスタマイズできる</li></ul>



<p class="wp-block-paragraph">まずは <code>=DATE(YEAR(TODAY()), MONTH(TODAY())+1, 0)</code> で今月の末日を求めるところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-date-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのDATEDIF関数の使い方｜日付の差を年月日で計算</title>
		<link>https://mashukabu.com/spreadsheet-datedif-function/</link>
					<comments>https://mashukabu.com/spreadsheet-datedif-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:49:57 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATEDIF関数]]></category>
		<category><![CDATA[DATE関数]]></category>
		<category><![CDATA[IFERROR関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[勤続年数]]></category>
		<category><![CDATA[年齢計算]]></category>
		<category><![CDATA[日付計算]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4327</guid>

					<description><![CDATA[スプレッドシートのDATEDIF関数の使い方を基本から解説。6つの単位（Y/M/D/YM/MD/YD）の意味と実例、生年月日から年齢を自動計算する方法、勤続年数のX年Yヶ月表示、#NUM!エラーの対処法まで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「入社日から今日まで何年何ヶ月か、パッと出せないかな？」。社員名簿や契約管理をしていると、こんな場面が出てきますよね。</p>



<p class="wp-block-paragraph">日付の引き算で日数は出せますが、「3年6ヶ月」のような年月表示にするのは意外と面倒です。</p>



<p class="wp-block-paragraph">GoogleスプレッドシートのDATEDIF関数を使えば、2つの日付の差を年・月・日の好きな単位で一発計算できます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、年齢の自動計算や勤続年数の「X年Yヶ月」表示まで、実務で使えるテクニックをまとめて紹介します。</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">DATEDIF関数とは？スプレッドシートで日付の差を求める関数</a></li><li><a href="#toc2" tabindex="0">DATEDIF関数の書き方｜構文と引数</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li><li><a href="#toc5" tabindex="0">6つの単位の意味と使い分け</a></li></ol></li><li><a href="#toc6" tabindex="0">DATEDIF関数の使い方｜6つの単位を実例で確認</a></li><li><a href="#toc7" tabindex="0">実務で使えるDATEDIF活用例</a><ol><li><a href="#toc8" tabindex="0">生年月日から年齢を自動計算する</a></li><li><a href="#toc9" tabindex="0">勤続年数を「X年Yヶ月」形式で表示する</a></li><li><a href="#toc10" tabindex="0">契約の残り期間を計算する</a></li></ol></li><li><a href="#toc11" tabindex="0">DATEDIF関数のエラーと対処法</a><ol><li><a href="#toc12" tabindex="0">#NUM!エラー（開始日が終了日より後の場合）</a></li><li><a href="#toc13" tabindex="0">IFERRORで安全にエラーを回避する</a></li><li><a href="#toc14" tabindex="0">#VALUE!エラー（日付が文字列の場合）</a></li></ol></li><li><a href="#toc15" tabindex="0">ExcelのDATEDIF関数との互換性</a></li><li><a href="#toc16" tabindex="0">YEAR関数を使った代替手段との比較</a></li><li><a href="#toc17" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">DATEDIF関数とは？スプレッドシートで日付の差を求める関数</span></h2>



<p class="wp-block-paragraph">DATEDIF関数（読み方: デイトディフ関数）は、<strong>2つの日付の間隔を年・月・日の単位で計算する関数</strong>です。</p>



<p class="wp-block-paragraph">名前は「date（日付）」と「difference（差）」を組み合わせた造語です。</p>



<p class="wp-block-paragraph">通常の日付の引き算（=B1-A1）では結果が「日数」しか返りません。「1,278日」と出されても、それが何年何ヶ月なのかすぐにはわかりませんよね。</p>



<p class="wp-block-paragraph">DATEDIF関数なら、第3引数の「単位」を切り替えるだけで年数・月数・日数を自由に取り出せます。年齢計算や勤続年数の算出に欠かせない関数ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>DATEDIF関数はGoogleスプレッドシートでは公式にサポートされています。Excelでも使えますが、Excelでは公式ドキュメントに記載されていない「非公式関数」の扱いです。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=DATEDIF(開始日, 終了日, 単位)</code></pre>



<p class="wp-block-paragraph">カッコの中に「開始日」「終了日」「単位」の3つを順番に入れます。引数はすべて必須です。</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><tr><td>単位</td><td>必須</td><td>結果の単位を指定する文字列（&#8221;Y&#8221;、&#8221;M&#8221;、&#8221;D&#8221;など）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">開始日は終了日より前の日付を指定してください。開始日が終了日より後になると#NUM!エラーが発生します。</p>



<h3 class="wp-block-heading"><span id="toc5">6つの単位の意味と使い分け</span></h3>



<p class="wp-block-paragraph">DATEDIF関数の最大のポイントは、第3引数の「単位」です。6種類あり、それぞれ返す値が異なります。</p>



<figure class="wp-block-table"><table><thead><tr><th>単位</th><th>意味</th><th>返す値</th></tr></thead><tbody><tr><td>&#8220;Y&#8221;</td><td>年数</td><td>完了した年の数（端数切り捨て）</td></tr><tr><td>&#8220;M&#8221;</td><td>月数</td><td>完了した月の数（端数切り捨て）</td></tr><tr><td>&#8220;D&#8221;</td><td>日数</td><td>2つの日付の間の日数</td></tr><tr><td>&#8220;YM&#8221;</td><td>年を除いた月数</td><td>年の差を除いた残りの月数（0〜11）</td></tr><tr><td>&#8220;MD&#8221;</td><td>月を除いた日数</td><td>月の差を除いた残りの日数（0〜30）</td></tr><tr><td>&#8220;YD&#8221;</td><td>年を除いた日数</td><td>年の差を除いた残りの日数（0〜365）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">上の3つ（Y/M/D）が「トータルの差」、下の3つ（YM/MD/YD）が「端数部分の差」です。この違いを押さえておくと迷わずに使えますよ。</p>



<h2 class="wp-block-heading"><span id="toc6">DATEDIF関数の使い方｜6つの単位を実例で確認</span></h2>



<p class="wp-block-paragraph">同じ日付ペアで6つの単位すべてを試してみましょう。開始日を「2020/4/1」、終了日を「2026/9/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>=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;Y&quot;)   → 6
=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;M&quot;)   → 77
=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;D&quot;)   → 2358
=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;YM&quot;)  → 5
=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;MD&quot;)  → 14
=DATEDIF(&quot;2020/4/1&quot;, &quot;2026/9/15&quot;, &quot;YD&quot;)  → 167</code></pre>



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



<p class="wp-block-paragraph">結果を表で整理すると、各単位の違いがはっきりわかります。</p>



<figure class="wp-block-table"><table><thead><tr><th>単位</th><th>数式</th><th>結果</th><th>読み方</th></tr></thead><tbody><tr><td>&#8220;Y&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","Y")</code></td><td>6</td><td>6年（7年目に届いていない）</td></tr><tr><td>&#8220;M&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","M")</code></td><td>77</td><td>トータル77ヶ月</td></tr><tr><td>&#8220;D&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","D")</code></td><td>2358</td><td>トータル2,358日</td></tr><tr><td>&#8220;YM&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","YM")</code></td><td>5</td><td>6年と<strong>5ヶ月</strong></td></tr><tr><td>&#8220;MD&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","MD")</code></td><td>14</td><td>5ヶ月と<strong>14日</strong></td></tr><tr><td>&#8220;YD&#8221;</td><td><code>=DATEDIF("2020/4/1","2026/9/15","YD")</code></td><td>167</td><td>6年と<strong>167日</strong></td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">&#8220;YM&#8221;の「5」と&#8221;MD&#8221;の「14」を合わせると「6年5ヶ月14日」です。「X年Yヶ月Z日」の表示を作るときは、Y・YM・MDの3つを組み合わせて使います。</p>



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



<h3 class="wp-block-heading"><span id="toc8">生年月日から年齢を自動計算する</span></h3>



<p class="wp-block-paragraph">人事名簿でよく使うパターンです。A2に生年月日が入っているとします。</p>



<pre class="wp-block-code"><code>=DATEDIF(A2, TODAY(), &quot;Y&quot;)</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/04_formula_datedif-age.png" alt="04 formula datedif age" /></figure>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>は今日の日付を返す関数です。生年月日と今日の差を「年」の単位で求めるので、現在の満年齢が返ります。</p>



<p class="wp-block-paragraph">たとえばA2が「1990/5/20」で今日が「2026/3/19」なら、結果は「35」です。5月20日を過ぎたら自動で「36」に変わりますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>社員が100人いても、数式を下にコピーするだけで全員の年齢が一括計算できます。手計算で年齢を更新する手間がなくなりますね。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc9">勤続年数を「X年Yヶ月」形式で表示する</span></h3>



<p class="wp-block-paragraph">入社日がB2に入っているとして、勤続年数を「X年Yヶ月」の文字列で表示してみましょう。</p>



<pre class="wp-block-code"><code>=DATEDIF(B2, TODAY(), &quot;Y&quot;) &amp; &quot;年&quot; &amp; DATEDIF(B2, TODAY(), &quot;YM&quot;) &amp; &quot;ヶ月&quot;</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/06_formula_datedif-tenure.png" alt="06 formula datedif tenure" /></figure>



<p class="wp-block-paragraph">「Y」で年数を、「YM」で年を除いた月数を取り出し、文字列結合演算子（&#038;）でつなげています。</p>



<p class="wp-block-paragraph">B2が「2020/4/1」で今日が「2026/3/19」なら、結果は「5年11ヶ月」です。</p>



<p class="wp-block-paragraph">さらに日数まで表示したい場合は、「MD」を追加します。</p>



<pre class="wp-block-code"><code>=DATEDIF(B2, TODAY(), &quot;Y&quot;) &amp; &quot;年&quot; &amp; DATEDIF(B2, TODAY(), &quot;YM&quot;) &amp; &quot;ヶ月&quot; &amp; DATEDIF(B2, TODAY(), &quot;MD&quot;) &amp; &quot;日&quot;</code></pre>



<p class="wp-block-paragraph">結果は「5年11ヶ月18日」のように表示されます。</p>



<h3 class="wp-block-heading"><span id="toc10">契約の残り期間を計算する</span></h3>



<p class="wp-block-paragraph">契約終了日がC2に入っているとして、今日からの残り期間を求めてみましょう。</p>



<pre class="wp-block-code"><code>=DATEDIF(TODAY(), C2, &quot;M&quot;) &amp; &quot;ヶ月&quot; &amp; DATEDIF(TODAY(), C2, &quot;MD&quot;) &amp; &quot;日&quot;</code></pre>



<p class="wp-block-paragraph">この場合はTODAY()を開始日、契約終了日を終了日にしています。C2が「2027/3/31」なら「12ヶ月12日」のように表示されます。</p>



<p class="wp-block-paragraph">契約管理やリース期間の算出に便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc11">DATEDIF関数のエラーと対処法</span></h2>



<h3 class="wp-block-heading"><span id="toc12">#NUM!エラー（開始日が終了日より後の場合）</span></h3>



<p class="wp-block-paragraph">DATEDIF関数でもっとも多いエラーです。開始日が終了日より後の日付になっていると発生します。</p>



<pre class="wp-block-code"><code>=DATEDIF(&quot;2026/9/15&quot;, &quot;2020/4/1&quot;, &quot;Y&quot;)   → #NUM!</code></pre>



<p class="wp-block-paragraph">対処法はシンプルです。引数の順番を確認して、開始日を終了日より前に指定してください。</p>



<h3 class="wp-block-heading"><span id="toc13">IFERRORで安全にエラーを回避する</span></h3>



<p class="wp-block-paragraph">データに不備がある行でもエラー表示を防ぎたい場合は、IFERROR関数（エラーのとき代替値を返す関数）で囲みます。</p>



<pre class="wp-block-code"><code>=IFERROR(DATEDIF(A2, TODAY(), &quot;Y&quot;), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">A2が空欄だったり不正な日付だったりしても、エラーの代わりに空白が表示されます。名簿のように大量の行がある場面では、IFERROR関数との組み合わせがおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc14">#VALUE!エラー（日付が文字列の場合）</span></h3>



<p class="wp-block-paragraph">日付のセルが文字列として入力されていると#VALUE!エラーになることがあります。セルの表示形式を「日付」に変更するか、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>で日付データを作り直してください。</p>



<h2 class="wp-block-heading"><span id="toc15">ExcelのDATEDIF関数との互換性</span></h2>



<p class="wp-block-paragraph">DATEDIF関数はGoogleスプレッドシートとExcelの両方で使えます。ただし扱いに違いがあるので注意してください。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Googleスプレッドシート</th><th>Excel</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>6つの単位</td><td>すべて使える</td><td>すべて使える</td></tr><tr><td>&#8220;MD&#8221;単位の精度</td><td>一部ケースで不正確な結果の報告あり</td><td>同様の問題あり</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Excelでは入力候補に表示されないため「存在しない関数」と思われがちですが、実際にはExcel 2000以降のすべてのバージョンで動作します。</p>



<p class="wp-block-paragraph">スプレッドシートからExcelにファイルを変換しても、DATEDIF関数の数式はそのまま動作します。チーム内でファイル形式が混在していても安心ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>WARNING</strong></p><p>&#8220;MD&#8221;単位は、一部の日付の組み合わせで不正確な結果を返すことがあります。厳密な日数計算が必要な場合は、DAY関数を使った手動計算を検討してください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc16">YEAR関数を使った代替手段との比較</span></h2>



<p class="wp-block-paragraph">DATEDIF関数を使わなくても、<a href="https://mashukabu.com/spreadsheet-year-function/">YEAR関数</a>やMONTH関数の引き算で年齢を求める方法もあります。</p>



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



<p class="wp-block-paragraph">この数式でも年の差は出ますが、誕生日を迎えたかどうかを考慮しません。たとえば「1990/12/1」生まれの人は、2026年3月の時点ではまだ35歳ですが、YEAR関数の引き算では「36」と出てしまいます。</p>



<p class="wp-block-paragraph">DATEDIF関数なら「完了した年数」を正確に返すので、満年齢の計算にはDATEDIF関数を使ってください。</p>



<figure class="wp-block-table"><table><thead><tr><th>方法</th><th>数式例</th><th>メリット</th><th>デメリット</th></tr></thead><tbody><tr><td>DATEDIF関数</td><td><code>=DATEDIF(A2,TODAY(),"Y")</code></td><td>満年齢が正確</td><td>関数名が長い</td></tr><tr><td>YEAR引き算</td><td><code>=YEAR(TODAY())-YEAR(A2)</code></td><td>シンプル</td><td>誕生日前でも1歳多く出る</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">DATEDIF関数は、2つの日付の差を年・月・日の単位で計算する関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=DATEDIF(開始日, 終了日, 単位)</code> の3引数</li><li>6つの単位のうち、Y/M/Dが「トータルの差」、YM/MD/YDが「端数部分の差」</li><li>年齢計算は <code>=DATEDIF(生年月日, TODAY(), "Y")</code> が定番</li><li>勤続年数は「Y」と「YM」を&#038;でつないで「X年Yヶ月」表示</li><li>開始日 > 終了日で#NUM!エラーが出るので、IFERRORで囲むと安全</li><li>Excelでも同じ構文で使える（非公式だが全バージョンで動作）</li></ul>



<p class="wp-block-paragraph">まずは <code>=DATEDIF(A2, TODAY(), "Y")</code> で年齢計算から試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-datedif-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-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">スプレッドシートの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>スプレッドシートのNOW関数の使い方｜現在の日時を自動取得</title>
		<link>https://mashukabu.com/spreadsheet-now-function/</link>
					<comments>https://mashukabu.com/spreadsheet-now-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:48:04 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[NOW関数]]></category>
		<category><![CDATA[TEXT関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[タイムスタンプ]]></category>
		<category><![CDATA[揮発性関数]]></category>
		<category><![CDATA[日時取得]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4308</guid>

					<description><![CDATA[スプレッドシートのNOW関数の使い方を基本から解説。現在の日時を自動取得する方法、TEXT関数との組み合わせで表示形式を変えるテクニック、TODAY関数との違い、値を固定する2つの方法まで実務で使えるパターンを紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「この作業、何時に終わったっけ？」と後から確認したくなること、ありませんか？</p>



<p class="wp-block-paragraph">手入力で時刻を記録していると、うっかり忘れたりズレたりしがちですよね。</p>



<p class="wp-block-paragraph">GoogleスプレッドシートのNOW関数を使えば、現在の日付と時刻をセルに自動表示できます。作業ログやタイムスタンプに最適ですよ。</p>



<p class="wp-block-paragraph">この記事では、NOW関数の基本から値の固定方法まで解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">NOW関数とは｜スプレッドシートで現在の日時を取得する関数</a><ol><li><a href="#toc2" tabindex="0">基本の使い方と入力方法</a></li></ol></li><li><a href="#toc3" tabindex="0">NOW関数の実務活用パターン3選</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></ol></li><li><a href="#toc7" tabindex="0">TEXT関数と組み合わせて表示形式を変える</a></li><li><a href="#toc8" tabindex="0">NOW関数とTODAY関数の違い</a><ol><li><a href="#toc9" tabindex="0">日時 vs 日付のみ</a></li><li><a href="#toc10" tabindex="0">どちらを使うべきか判断基準</a></li></ol></li><li><a href="#toc11" tabindex="0">NOW関数の値を固定する方法</a><ol><li><a href="#toc12" tabindex="0">コピー＆値のみ貼り付けで固定する</a></li><li><a href="#toc13" tabindex="0">キーボードショートカットで固定入力する</a></li></ol></li><li><a href="#toc14" tabindex="0">再計算のタイミングを制御する｜揮発性関数の注意点</a></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc16" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">NOW関数とは｜スプレッドシートで現在の日時を取得する関数</span></h2>



<p class="wp-block-paragraph">NOW関数は、<strong>現在の日付と時刻をまとめて返す関数</strong>です。読み方は「ナウ関数」。語源は英語の「now（今）」です。</p>



<p class="wp-block-paragraph">ファイルを開いたり編集したりするたびに、値が最新の日時に自動更新されます。手入力のように記録漏れの心配がありません。</p>



<p class="wp-block-paragraph">作業ログの記録や経過時間の計算など、時刻が必要な場面で活躍します。</p>



<h3 class="wp-block-heading"><span id="toc2">基本の使い方と入力方法</span></h3>



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



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



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



<p class="wp-block-paragraph">引数（カッコの中に入れる値）は不要です。カッコの中は空のまま入力してください。</p>



<p class="wp-block-paragraph">セルに <code>=NOW()</code> と入力してEnterを押すだけ。これで「2026/03/19 14:30:00」のような日時が表示されます。</p>



<p class="wp-block-paragraph">もし「46098.6042」のような数値が表示された場合は心配いりません。表示形式を変えるだけで直ります。</p>



<p class="wp-block-paragraph">該当セルを選択して、メニューの<strong>「表示形式」→「数字」→「日時」</strong>を選んでください。</p>



<p class="wp-block-paragraph">NOW関数が返すのは「シリアル値」という数値です。整数部分が日付、小数部分が時刻を表しています。たとえば小数部分が0.5なら12:00（正午）を意味しますよ。</p>



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



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



<p class="wp-block-paragraph">NOW関数を実務で使いこなすための代表的な活用パターンを紹介します。</p>



<h3 class="wp-block-heading"><span id="toc4">作業ログにタイムスタンプを記録する</span></h3>



<p class="wp-block-paragraph">最もよく使われるのが、作業完了時刻の記録です。</p>



<p class="wp-block-paragraph">B列に作業内容、C列に完了時刻を記録する場合を考えましょう。</p>



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



<p class="wp-block-paragraph">C列に <code>=NOW()</code> と入力すれば、その時点の日時が表示されます。</p>



<p class="wp-block-paragraph">ただし注意点があります。NOW関数はファイルを開くたびに値が更新されます。タイムスタンプとして残すなら、値を固定する必要があります。固定方法は後ほど詳しく説明しますね。</p>



<h3 class="wp-block-heading"><span id="toc5">経過時間を自動計算する</span></h3>



<p class="wp-block-paragraph">開始時刻と現在時刻の差を求めれば、経過時間がわかります。</p>



<p class="wp-block-paragraph">A1セルに開始時刻が入っている場合の数式はこちらです。</p>



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



<p class="wp-block-paragraph">結果が日付形式で表示される場合は、表示形式を「時間」に変更してください。「表示形式」→「数字」→「経過時間」を選べばOKです。</p>



<p class="wp-block-paragraph">この方法はミーティングの経過時間表示などに使えます。NOW関数が再計算されるたびに、リアルタイムで経過時間が更新されますよ。</p>



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



<p class="wp-block-paragraph">経過時間は実行時刻によって変わるのが正常です。</p>



<h3 class="wp-block-heading"><span id="toc6">締め切り時刻までの残り時間を表示する</span></h3>



<p class="wp-block-paragraph">作業の締め切りが「今日の17:00」のように時刻まで決まっている場合に便利です。</p>



<p class="wp-block-paragraph">A1セルに締め切り日時が入っているとします。</p>



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



<p class="wp-block-paragraph">結果がマイナスなら締め切り超過です。表示形式を「時間」にすると、残り時間が「3:25:00」のようにわかりやすく表示されます。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>では日数単位の計算がメインですが、NOW関数なら時間・分単位の細かい計算ができますよ。</p>



<h2 class="wp-block-heading"><span id="toc7">TEXT関数と組み合わせて表示形式を変える</span></h2>



<p class="wp-block-paragraph">NOW関数の結果を好みの形式に整えるには、<a href="https://mashukabu.com/spreadsheet-text-function/">TEXT関数</a>との組み合わせが便利です。</p>



<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><code>=TEXT(NOW(),"yyyy/mm/dd")</code></td><td>2026/03/19</td></tr><tr><td>時刻のみ</td><td><code>=TEXT(NOW(),"hh:mm:ss")</code></td><td>14:30:00</td></tr><tr><td>時分まで</td><td><code>=TEXT(NOW(),"hh:mm")</code></td><td>14:30</td></tr><tr><td>日本語形式</td><td><code>=TEXT(NOW(),"yyyy年m月d日 h時m分")</code></td><td>2026年3月19日 14時30分</td></tr><tr><td>曜日付き</td><td><code>=TEXT(NOW(),"yyyy/mm/dd (ddd)")</code></td><td>2026/03/19 (木)</td></tr><tr><td>AM/PM表記</td><td><code>=TEXT(NOW(),"yyyy/mm/dd h:mm AM/PM")</code></td><td>2026/03/19 2:30 PM</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">書式コードの「mm」は文脈によって意味が変わります。「hh:mm」のように時間の後に置くと「分」、「yyyy/mm」のように年の後に置くと「月」を表します。この点だけ注意してください。</p>



<p class="wp-block-paragraph">TEXT関数で変換した結果は文字列になります。そのままでは計算に使えないので、計算が必要な場合は元のNOW関数を直接使いましょう。</p>



<h2 class="wp-block-heading"><span id="toc8">NOW関数とTODAY関数の違い</span></h2>



<p class="wp-block-paragraph">NOW関数と似た関数に<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>があります。違いを整理しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc9">日時 vs 日付のみ</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>NOW()</th><th>TODAY()</th></tr></thead><tbody><tr><td>返す値</td><td>日付＋時刻（例: 2026/03/19 14:30）</td><td>日付のみ（例: 2026/03/19）</td></tr><tr><td>シリアル値</td><td>小数を含む（例: 46098.6042）</td><td>整数のみ（例: 46098）</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">NOW()はシリアル値の小数部分に時刻が含まれています。一方、TODAY()は整数のみで時刻を含みません。</p>



<h3 class="wp-block-heading"><span id="toc10">どちらを使うべきか判断基準</span></h3>



<p class="wp-block-paragraph">迷ったときは、次の基準で選んでみてください。</p>



<ul class="wp-block-list"><li><strong>TODAY関数が向いている場面</strong>: 期限管理、残り日数の計算、日付の比較</li><li><strong>NOW関数が向いている場面</strong>: 作業ログのタイムスタンプ、経過時間の計算、処理時刻の記録</li></ul>



<p class="wp-block-paragraph">ポイントは「時刻が必要かどうか」です。日付だけでよいならTODAY関数、時刻まで必要ならNOW関数を使いましょう。</p>



<p class="wp-block-paragraph">日数計算にNOW関数を使うと、時刻の端数が計算結果に影響します。日単位の計算にはTODAY関数のほうが正確ですよ。</p>



<h2 class="wp-block-heading"><span id="toc11">NOW関数の値を固定する方法</span></h2>



<p class="wp-block-paragraph">NOW関数は再計算のたびに値が変わります。「作業が終わった時刻を残したい」という場面では、値を固定する必要があります。</p>



<p class="wp-block-paragraph">固定する方法は2つあります。</p>



<h3 class="wp-block-heading"><span id="toc12">コピー＆値のみ貼り付けで固定する</span></h3>



<p class="wp-block-paragraph">すでに <code>=NOW()</code> が入っているセルの値を固定する方法です。</p>



<p class="wp-block-paragraph"><strong>ステップ1</strong>: NOW関数が入ったセルを選択してコピー（Ctrl+C / Cmd+C）</p>



<p class="wp-block-paragraph"><strong>ステップ2</strong>: 同じセルを選んだ状態で右クリック→「特殊貼り付け」→「値のみ貼り付け」</p>



<p class="wp-block-paragraph">!<a href="https://mashukabu.com/_images/spreadsheet-now-function/05_ui_paste-values-only.png/">_images/spreadsheet-now-function/05_ui_paste-values-only.png</a></p>



<p class="wp-block-paragraph">これで数式が消えて、コピーした時点の日時が固定値として残ります。</p>



<p class="wp-block-paragraph">ショートカットキーなら、Ctrl+Shift+V（Mac: Cmd+Shift+V）が便利です。</p>



<p class="wp-block-paragraph">これで数式が消えて、コピーした時点の日時が固定値として残ります。</p>



<h3 class="wp-block-heading"><span id="toc13">キーボードショートカットで固定入力する</span></h3>



<p class="wp-block-paragraph">最初から固定値として入力する方法もあります。</p>



<p class="wp-block-paragraph"><strong>日付のショートカット</strong>:</p>



<ul class="wp-block-list"><li>Windows: <code>Ctrl + ;</code>（セミコロン）</li><li>Mac: <code>Cmd + ;</code></li></ul>



<p class="wp-block-paragraph"><strong>時刻のショートカット</strong>:</p>



<ul class="wp-block-list"><li>Windows: <code>Ctrl + Shift + ;</code></li><li>Mac: <code>Cmd + Shift + ;</code></li></ul>



<p class="wp-block-paragraph">日付と時刻の両方を1つのセルに入れたい場合は、まず <code>Ctrl + ;</code> で日付を入力し、続けてスペースを入力してから <code>Ctrl + Shift + ;</code> で時刻を追加してください。</p>



<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>Ctrl+Shift+V</td><td>一度NOW()で表示してから固定したいとき</td></tr><tr><td>ショートカット入力</td><td>Ctrl+; / Ctrl+Shift+;</td><td>最初から固定値で入力したいとき</td></tr></tbody></table></figure>



<h2 class="wp-block-heading"><span id="toc14">再計算のタイミングを制御する｜揮発性関数の注意点</span></h2>



<p class="wp-block-paragraph">NOW関数は<strong>揮発性関数</strong>と呼ばれる種類の関数です。通常の関数は参照先が変わったときだけ再計算されますが、揮発性関数はスプレッドシートを開いたときや編集したときに毎回再計算されます。</p>



<p class="wp-block-paragraph">再計算のタイミングは設定で変更できます。「ファイル」→「設定」→「計算」タブを開くと、3つの選択肢があります。</p>



<ul class="wp-block-list"><li><strong>変更時</strong>（デフォルト）: シートに変更があるたびに再計算</li><li><strong>変更時と毎分</strong>: 1分ごとに自動で再計算</li><li><strong>変更時と毎時</strong>: 1時間ごとに自動で再計算</li></ul>



<p class="wp-block-paragraph">「毎分」や「毎時」に設定すると、画面を操作しなくてもNOW関数の値が自動更新されます。リアルタイムの時刻表示が必要な場合に活用してください。</p>



<p class="wp-block-paragraph">NOW関数を大量に使うと再計算の負荷が増えます。対策として、NOW()は1つのセルにだけ入力しましょう。他のセルからは絶対参照（例: <code>=$B$1</code>）で参照するのがおすすめです。</p>



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



<p class="wp-block-paragraph">NOW関数はシンプルですが、つまずきやすいポイントもあります。</p>



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



<p class="wp-block-paragraph">表示形式が「数値」になっています。セルを選択して「表示形式」→「数字」→「日時」に変更してください。</p>



<p class="wp-block-paragraph"><strong>時刻が表示されず日付だけになる</strong></p>



<p class="wp-block-paragraph">表示形式が「日付」になっています。「日時」に変更すると時刻も表示されますよ。</p>



<p class="wp-block-paragraph"><strong>日時の表示形式をカスタマイズしたい</strong></p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-text-function/">TEXT関数</a>を使えば、表示形式を自由に指定できます。</p>



<pre class="wp-block-code"><code>=TEXT(NOW(),&quot;yyyy年m月d日 h:mm&quot;)</code></pre>



<p class="wp-block-paragraph"><strong><code>#ERROR!</code> が出る</strong></p>



<p class="wp-block-paragraph">カッコの中に引数を入れていないか確認してください。NOW関数は <code>=NOW()</code> のように、カッコ内を空にします。</p>



<p class="wp-block-paragraph"><strong>日時の差分計算の結果がおかしい</strong></p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-time-function/">TIME関数</a>や<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>の値と混在していないか確認しましょう。日付同士の引き算は問題ありませんが、表示形式を「経過時間」に変更しないと正しく見えない場合があります。</p>



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



<p class="wp-block-paragraph">NOW関数は、現在の日付と時刻をまとめて取得するシンプルな関数です。</p>



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



<ul class="wp-block-list"><li><strong>基本</strong>: <code>=NOW()</code> で現在の日時を表示</li><li><strong>タイムスタンプ</strong>: 作業完了時刻の記録（値の固定が必要）</li><li><strong>経過時間</strong>: <code>=NOW()-A1</code> で開始からの経過を計算</li><li><strong>表示形式変換</strong>: <code>=TEXT(NOW(),"hh:mm")</code> で好みの形に</li><li><strong>値の固定</strong>: コピー＆値のみ貼り付け or Ctrl+Shift+;</li><li><strong>TODAY関数との使い分け</strong>: 時刻が必要ならNOW、日付だけならTODAY</li></ul>



<p class="wp-block-paragraph">揮発性関数なので、大量に使う場合は1セルにまとめて絶対参照で参照するのがコツです。</p>



<p class="wp-block-paragraph">まずは <code>=NOW()</code> をセルに入力して、現在の日時が表示されるのを確認してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-now-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのTODAY関数の使い方｜今日の日付を自動表示</title>
		<link>https://mashukabu.com/spreadsheet-today-function/</link>
					<comments>https://mashukabu.com/spreadsheet-today-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:47:46 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[NOW関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[揮発性関数]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[日数計算]]></category>
		<category><![CDATA[条件付き書式]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4297</guid>

					<description><![CDATA[スプレッドシートのTODAY関数の使い方を基本から解説。今日の日付の自動表示、期限までの残り日数計算、月初・月末の取得、条件付き書式での期限切れハイライトまで実務で使えるテクニックを紹介。NOW関数との違いや揮発性関数の仕組みも解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「期限日まであと何日だっけ？」と毎回カレンダーを見て数えていませんか？</p>



<p class="wp-block-paragraph">手作業で日付を入力すると、更新を忘れてしまうこともありますよね。</p>



<p class="wp-block-paragraph">Googleスプレッドシートの<strong>TODAY関数</strong>を使えば、今日の日付を自動で表示できます。期限管理や日数計算もラクになりますよ。</p>



<p class="wp-block-paragraph">この記事では、TODAY関数の基本から応用テクニックまで解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-7" checked><label class="toc-title" for="toc-checkbox-7">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">TODAY関数とは｜スプレッドシートで今日の日付をセルに自動表示する関数</a><ol><li><a href="#toc2" tabindex="0">基本の使い方と入力方法</a></li></ol></li><li><a href="#toc3" tabindex="0">TODAY関数で日数計算する方法</a><ol><li><a href="#toc4" tabindex="0">今日から〇日後・〇日前を求める</a></li><li><a href="#toc5" tabindex="0">期限まであと何日かを表示する（残り日数カウント）</a></li></ol></li><li><a href="#toc6" tabindex="0">TODAY関数とNOW関数の違い</a><ol><li><a href="#toc7" tabindex="0">日付だけ vs 日付＋時刻</a></li><li><a href="#toc8" tabindex="0">どちらを使うべきか判断基準</a></li></ol></li><li><a href="#toc9" tabindex="0">月初・月末を自動取得する応用テクニック</a><ol><li><a href="#toc10" tabindex="0">月初（1日）を取得するDATE関数との組み合わせ</a></li><li><a href="#toc11" tabindex="0">EOMONTH関数と組み合わせて月末日を求める</a></li></ol></li><li><a href="#toc12" tabindex="0">条件付き書式と組み合わせて期限切れを自動ハイライト</a><ol><li><a href="#toc13" tabindex="0">設定手順ステップ解説（今日以前の日付を赤くする）</a></li></ol></li><li><a href="#toc14" tabindex="0">TODAY関数が毎回再計算される理由｜揮発性関数とは</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">よくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">DATEDIF関数と組み合わせて年数・月数を正確に計算する</a><ol><li><a href="#toc19" tabindex="0">勤続年数を計算する</a></li><li><a href="#toc20" tabindex="0">年齢を自動計算する</a></li></ol></li><li><a href="#toc21" tabindex="0">WORKDAY関数と組み合わせて営業日ベースで期限を管理する</a><ol><li><a href="#toc22" tabindex="0">〇営業日後の日付を求める</a></li><li><a href="#toc23" tabindex="0">〇営業日前を求めて提出期限を逆算する</a></li></ol></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">TODAY関数とは｜スプレッドシートで今日の日付をセルに自動表示する関数</span></h2>



<p class="wp-block-paragraph">TODAY関数は、<strong>今日の日付を自動で返す関数</strong>です。読み方は「トゥデイ関数」。</p>



<p class="wp-block-paragraph">ファイルを開くたびに日付が自動更新されます。手入力のように古い日付が残る心配がありません。</p>



<p class="wp-block-paragraph">期限管理や日数計算の基準日として、ビジネスシーンでよく使われます。</p>



<h3 class="wp-block-heading"><span id="toc2">基本の使い方と入力方法</span></h3>



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



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



<p class="wp-block-paragraph">引数（カッコの中に入れる値）は不要です。カッコの中は空のまま入力してください。</p>



<p class="wp-block-paragraph">セルに <code>=TODAY()</code> と入力してEnterを押すだけ。これで今日の日付が表示されます。</p>



<p class="wp-block-paragraph">もし日付ではなく「46098」のような数値が表示される場合は心配いりません。表示形式の設定を変えるだけで直ります。</p>



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



<p class="wp-block-paragraph">TODAY関数が返すのは「シリアル値」という数値です。スプレッドシートは日付を内部的に数値で管理しています。表示形式を「日付」にすると、見慣れた日付表記になりますよ。</p>



<h2 class="wp-block-heading"><span id="toc3">TODAY関数で日数計算する方法</span></h2>



<p class="wp-block-paragraph">TODAY関数の真価は、日数計算と組み合わせたときに発揮されます。日付はシリアル値（数値）なので、足し算・引き算がそのままできます。</p>



<h3 class="wp-block-heading"><span id="toc4">今日から〇日後・〇日前を求める</span></h3>



<p class="wp-block-paragraph">〇日後を求めるには、TODAY()に日数を足します。</p>



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



<p class="wp-block-paragraph">この数式で、今日から7日後の日付が表示されます。</p>



<p class="wp-block-paragraph">〇日前を求めるには、日数を引くだけです。</p>



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



<p class="wp-block-paragraph">これで30日前の日付がわかります。直近1ヶ月のデータを抽出するときなどに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc5">期限まであと何日かを表示する（残り日数カウント）</span></h3>



<p class="wp-block-paragraph">期限日からTODAY()を引けば、残り日数がわかります。</p>



<p class="wp-block-paragraph">A1セルに期限日が入っている場合の数式はこちらです。</p>



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



<p class="wp-block-paragraph">結果がマイナスなら期限超過、0なら当日、プラスなら期限前です。</p>



<p class="wp-block-paragraph">結果が日付形式で表示されてしまう場合は、表示形式を「数値」に変更してください。</p>



<h2 class="wp-block-heading"><span id="toc6">TODAY関数とNOW関数の違い</span></h2>



<p class="wp-block-paragraph">TODAY関数と似た関数に<strong>NOW関数</strong>があります。この2つの違いを整理しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc7">日付だけ vs 日付＋時刻</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>TODAY()</th><th>NOW()</th></tr></thead><tbody><tr><td>返す値</td><td>日付のみ（例: 2026/03/19）</td><td>日付＋時刻（例: 2026/03/19 14:30）</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">TODAY()は日付だけを返します。一方、NOW()は現在時刻も含めて返します。小数部分が時刻を表していますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">どちらを使うべきか判断基準</span></h3>



<p class="wp-block-paragraph">迷ったときは、次の基準で選んでみてください。</p>



<ul class="wp-block-list"><li><strong>TODAY関数が向いている場面</strong>: 期限管理、残り日数の計算、日付の比較</li><li><strong>NOW関数が向いている場面</strong>: 作業ログのタイムスタンプ、経過時間の計算</li></ul>



<p class="wp-block-paragraph">日数計算にNOW関数を使うと、時刻の端数が影響します。日単位の計算にはTODAY関数を使いましょう。</p>



<h2 class="wp-block-heading"><span id="toc9">月初・月末を自動取得する応用テクニック</span></h2>



<p class="wp-block-paragraph">TODAY関数を他の関数と組み合わせると、月初や月末の日付も自動取得できます。月次レポートの期間指定などに活用できますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">月初（1日）を取得するDATE関数との組み合わせ</span></h3>



<p class="wp-block-paragraph">当月1日を取得するには、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数の使い方</a>と組み合わせます。</p>



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



<p class="wp-block-paragraph">ちょっとむずかしく見えますが、やっていることはシンプルです。</p>



<ul class="wp-block-list"><li><code>YEAR(TODAY())</code>: 今年の「年」を取り出す</li><li><code>MONTH(TODAY())</code>: 今月の「月」を取り出す</li><li>最後の<code>1</code>: 「1日」を指定</li></ul>



<p class="wp-block-paragraph">この3つをDATE関数でつなげて、当月1日の日付を作っています。</p>



<p class="wp-block-paragraph">翌月1日を取得したい場合は、MONTHに1を足すだけです。</p>



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



<p class="wp-block-paragraph">12月でも自動で翌年1月になるので安心してください。</p>



<h3 class="wp-block-heading"><span id="toc11">EOMONTH関数と組み合わせて月末日を求める</span></h3>



<p class="wp-block-paragraph">月末日の取得にはEOMONTH関数が便利です。</p>



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



<p class="wp-block-paragraph">第2引数の<code>0</code>は「当月」を意味します。<code>1</code>にすると翌月末、<code>-1</code>にすると先月末が返ります。</p>



<p class="wp-block-paragraph">月末日は月によって28〜31日と変わりますよね。EOMONTH関数なら、うるう年の2月29日も自動で判定してくれます。</p>



<h2 class="wp-block-heading"><span id="toc12">条件付き書式と組み合わせて期限切れを自動ハイライト</span></h2>



<p class="wp-block-paragraph">TODAY関数の実務的な活用として特におすすめなのが、条件付き書式との組み合わせです。期限切れのセルを自動で赤くできます。</p>



<h3 class="wp-block-heading"><span id="toc13">設定手順ステップ解説（今日以前の日付を赤くする）</span></h3>



<p class="wp-block-paragraph">期限日が入ったA列を自動ハイライトする手順を解説します。</p>



<p class="wp-block-paragraph"><strong>ステップ1</strong>: 対象範囲（例: A2:A100）を選択する</p>



<p class="wp-block-paragraph"><strong>ステップ2</strong>: メニューから「表示形式」→「条件付き書式」を選ぶ</p>



<p class="wp-block-paragraph"><strong>ステップ3</strong>: 「書式ルール」のプルダウンで「カスタム数式」を選ぶ</p>



<p class="wp-block-paragraph"><strong>ステップ4</strong>: 数式欄に以下を入力する</p>



<pre class="wp-block-code"><code>=$A2&lt;TODAY()</code></pre>



<p class="wp-block-paragraph"><strong>ステップ5</strong>: 書式スタイルで背景色を赤系に設定して「完了」を押す</p>



<p class="wp-block-paragraph">これで期限切れの行が自動で赤くなります。ファイルを開くたびにTODAY()が更新されるので、常に最新の状態が反映されますよ。</p>



<p class="wp-block-paragraph">応用として、期限が近い行を黄色にすることもできます。「3日以内に期限が来る」場合の数式はこちらです。</p>



<pre class="wp-block-code"><code>=AND($A2&gt;=TODAY(),$A2&lt;=TODAY()+3)</code></pre>



<p class="wp-block-paragraph">赤（期限切れ）と黄色（期限間近）を組み合わせると、タスク管理がぐっと見やすくなります。</p>



<h2 class="wp-block-heading"><span id="toc14">TODAY関数が毎回再計算される理由｜揮発性関数とは</span></h2>



<p class="wp-block-paragraph">TODAY関数には1つ注意点があります。ファイルを開くたびに値が変わるという点です。</p>



<h3 class="wp-block-heading"><span id="toc15">ファイルを開くたびに更新される仕組み</span></h3>



<p class="wp-block-paragraph">TODAY関数は<strong>揮発性関数</strong>と呼ばれる種類の関数です。</p>



<p class="wp-block-paragraph">通常の関数は、参照先のセルが変わったときだけ再計算されます。しかし揮発性関数は、スプレッドシートを開いたときや編集したときに毎回再計算されます。</p>



<p class="wp-block-paragraph">再計算のタイミングは設定で変更できます。「ファイル」→「設定」→「計算」タブを開くと、次の3つから選べます。</p>



<ul class="wp-block-list"><li><strong>変更時</strong>（デフォルト）</li><li><strong>変更時と毎分</strong></li><li><strong>変更時と毎時</strong></li></ul>



<p class="wp-block-paragraph">TODAY関数を大量に使うと再計算の負荷が増えます。対策として、TODAY()は1つのセルにだけ入力するのがおすすめです。他のセルからは絶対参照（例: <code>=$B$1</code>）で参照しましょう。</p>



<h3 class="wp-block-heading"><span id="toc16">再計算させたくない場合の対処法</span></h3>



<p class="wp-block-paragraph">「今日の日付を固定値として残したい」という場面もありますよね。</p>



<p class="wp-block-paragraph">その場合は、TODAY関数ではなくキーボードショートカットを使いましょう。</p>



<p class="wp-block-paragraph">セルを選んだ状態で、以下のショートカットを押してください。</p>



<ul class="wp-block-list"><li><strong>Windows</strong>: <code>Ctrl + ;</code>（セミコロン）</li><li><strong>Mac</strong>: <code>Cmd + ;</code>（セミコロン）</li></ul>



<p class="wp-block-paragraph">このショートカットで入力された日付は固定値です。再計算で変わることはありません。</p>



<p class="wp-block-paragraph">作業記録やログなど「入力した時点の日付を残したい」場面ではこちらが適しています。</p>



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



<p class="wp-block-paragraph">TODAY関数はシンプルですが、つまずきやすいポイントもあります。</p>



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



<p class="wp-block-paragraph">表示形式が「数値」になっています。セルを選択して「表示形式」→「数字」→「日付」に変更してください。</p>



<p class="wp-block-paragraph"><strong>日数計算の結果が日付で表示される</strong></p>



<p class="wp-block-paragraph"><code>=A1-TODAY()</code> の結果を数値で見たいのに、日付形式で表示されるケースです。結果セルの表示形式を「数値」に変更しましょう。</p>



<p class="wp-block-paragraph"><strong>日付の表示形式を変えたい</strong></p>



<p class="wp-block-paragraph">「2026年3月19日」や「3/19」など、好みの形式にしたい場合があります。<a href="https://mashukabu.com/spreadsheet-text-function/">TEXT関数の使い方</a>を使えば、表示形式を自由に指定できますよ。</p>



<pre class="wp-block-code"><code>=TEXT(TODAY(),&quot;YYYY年MM月DD日&quot;)</code></pre>



<p class="wp-block-paragraph"><strong><code>#ERROR!</code> が出る</strong></p>



<p class="wp-block-paragraph">カッコの中に引数を入れていないか確認してください。TODAY関数は <code>=TODAY()</code> のように、カッコ内を空にします。</p>



<h2 class="wp-block-heading"><span id="toc18">DATEDIF関数と組み合わせて年数・月数を正確に計算する</span></h2>



<p class="wp-block-paragraph">残り日数だけでなく、「〇年〇ヶ月」という表現が必要な場面もあります。たとえば勤続年数の確認や、会員登録からの経過期間表示などです。そういった場合はDATEDIF関数と組み合わせましょう。</p>



<h3 class="wp-block-heading"><span id="toc19">勤続年数を計算する</span></h3>



<p class="wp-block-paragraph">入社日がA1セルに入っている場合、今日までの勤続年数（年単位）は次の数式で求められます。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1,TODAY(),&quot;Y&quot;)</code></pre>



<p class="wp-block-paragraph">第3引数に指定する単位は以下のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>単位</th><th>意味</th></tr></thead><tbody><tr><td>&#8220;Y&#8221;</td><td>満年数</td></tr><tr><td>&#8220;M&#8221;</td><td>満月数</td></tr><tr><td>&#8220;D&#8221;</td><td>満日数</td></tr><tr><td>&#8220;YM&#8221;</td><td>年未満の端数（月数）</td></tr><tr><td>&#8220;MD&#8221;</td><td>月未満の端数（日数）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「〇年〇ヶ月」と表示したい場合は、複数のDATEDIFを組み合わせて文字列を連結します。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1,TODAY(),&quot;Y&quot;)&amp;&quot;年&quot;&amp;DATEDIF(A1,TODAY(),&quot;YM&quot;)&amp;&quot;ヶ月&quot;</code></pre>



<p class="wp-block-paragraph">このような数式を使うと、「3年7ヶ月」という形式で表示できます。人事管理や会員管理のシートで特に重宝しますよ。</p>



<h3 class="wp-block-heading"><span id="toc20">年齢を自動計算する</span></h3>



<p class="wp-block-paragraph">生年月日がA1セルに入っている場合、現在の年齢は次の数式で求められます。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1,TODAY(),&quot;Y&quot;)</code></pre>



<p class="wp-block-paragraph">誕生日を過ぎているかどうかを自動で判定して満年齢を返してくれます。YEAR関数で単純に年を引く方法だと誕生日前後で1歳ずれてしまうため、DATEDIF関数を使う方が正確です。</p>



<h2 class="wp-block-heading"><span id="toc21">WORKDAY関数と組み合わせて営業日ベースで期限を管理する</span></h2>



<p class="wp-block-paragraph">「5営業日後が締め切り」という場面は仕事でよくありますよね。土日や祝日を除いた日付を求めるには、WORKDAY関数との組み合わせが便利です。</p>



<h3 class="wp-block-heading"><span id="toc22">〇営業日後の日付を求める</span></h3>



<pre class="wp-block-code"><code>=WORKDAY(TODAY(),5)</code></pre>



<p class="wp-block-paragraph">これで今日から5営業日後（土日を除く）の日付が返ります。</p>



<p class="wp-block-paragraph">祝日も除きたい場合は、第3引数に祝日一覧のセル範囲を指定します。</p>



<pre class="wp-block-code"><code>=WORKDAY(TODAY(),5,E2:E20)</code></pre>



<p class="wp-block-paragraph">E2:E20に祝日の日付を列挙しておけば、祝日もスキップして営業日を数えてくれます。</p>



<h3 class="wp-block-heading"><span id="toc23">〇営業日前を求めて提出期限を逆算する</span></h3>



<p class="wp-block-paragraph">締め切りから逆算して「〇営業日前に提出する」という日付も求められます。</p>



<p class="wp-block-paragraph">A1セルが締め切り日の場合、3営業日前はこちらです。</p>



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



<p class="wp-block-paragraph">第2引数をマイナスにするだけです。「締め切り3営業日前には社内レビューが必要」といったワークフロー管理に活用できますよ。</p>



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



<p class="wp-block-paragraph">TODAY関数は、今日の日付を自動表示するシンプルな関数です。</p>



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



<ul class="wp-block-list"><li><strong>基本</strong>: <code>=TODAY()</code> で今日の日付を表示</li><li><strong>日数計算</strong>: <code>=TODAY()+7</code> で〇日後、<code>=A1-TODAY()</code> で残り日数</li><li><strong>月初・月末</strong>: DATE関数やEOMONTH関数と組み合わせ</li><li><strong>条件付き書式</strong>: <code>=$A2<TODAY()</code> で期限切れを自動ハイライト</li><li><strong>年数・月数</strong>: DATEDIF関数で「〇年〇ヶ月」形式の計算</li><li><strong>営業日計算</strong>: WORKDAY関数で土日・祝日を除いた期限管理</li><li><strong>固定日付が必要なら</strong>: <code>Ctrl + ;</code> ショートカットを使う</li></ul>



<p class="wp-block-paragraph">揮発性関数なので、大量に使う場合は1セルにまとめて絶対参照で使うのがコツです。</p>



<p class="wp-block-paragraph">まずは <code>=TODAY()</code> をセルに入力するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-today-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのYEAR関数の使い方｜日付から年だけを取り出す方法</title>
		<link>https://mashukabu.com/spreadsheet-year-function/</link>
					<comments>https://mashukabu.com/spreadsheet-year-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 19 Mar 2026 09:20:19 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DATE関数]]></category>
		<category><![CDATA[DAY関数]]></category>
		<category><![CDATA[MONTH関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[YEAR関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[年度計算]]></category>
		<category><![CDATA[日付関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4272</guid>

					<description><![CDATA[スプレッドシートのYEAR関数の使い方を基本から解説。日付から年だけを取り出す方法、年度の判定（YEAR+IF）、年ごとの集計（SUMPRODUCT+YEAR）など実務テクニックを紹介。MONTH・DAY関数との違いやDATE関数との組み合わせも解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「日付データから年だけを取り出して、年度ごとに集計したい」。こんな場面はありませんか？</p>



<p class="wp-block-paragraph">手作業で年を書き写していると、データが増えたときに大変ですよね。入力ミスも起きやすいです。</p>



<p class="wp-block-paragraph">Googleスプレッドシートの<strong>YEAR関数</strong>を使えば、日付から年（西暦4桁）を一発で取り出せます。</p>



<p class="wp-block-paragraph">この記事では、YEAR関数の基本から年度判定・年ごとの集計まで、実務で使えるテクニックをまとめて紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">YEAR関数とは？スプレッドシートで日付から年を取り出す関数</a></li><li><a href="#toc2" tabindex="0">YEAR関数の基本の書き方</a><ol><li><a href="#toc3" tabindex="0">構文と引数</a></li><li><a href="#toc4" tabindex="0">戻り値</a></li><li><a href="#toc5" tabindex="0">入力例</a></li></ol></li><li><a href="#toc6" tabindex="0">基本的な使い方｜日付から年だけを取り出す</a></li><li><a href="#toc7" tabindex="0">実務で使えるYEAR関数の活用例</a><ol><li><a href="#toc8" tabindex="0">年度を判定する（YEAR + IF）</a></li><li><a href="#toc9" tabindex="0">年ごとに集計する（SUMPRODUCT + YEAR）</a></li><li><a href="#toc10" tabindex="0">年ごとの件数を数える（SUMPRODUCT + YEAR）</a></li><li><a href="#toc11" tabindex="0">ARRAYFORMULA と組み合わせる（補助列を使わない方法）</a></li><li><a href="#toc12" tabindex="0">生年月日から生まれ年・年代を取り出す</a></li><li><a href="#toc13" tabindex="0">N年後の日付を求める（DATE + YEAR）</a></li><li><a href="#toc14" tabindex="0">今年・去年を動的に判定する（TODAY + YEAR）</a></li></ol></li><li><a href="#toc15" tabindex="0">YEAR・MONTH・DAY関数の違いと使い分け</a></li><li><a href="#toc16" tabindex="0">ピボットテーブルで年ごとに集計する方法との違い</a></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc18" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc19" tabindex="0">意図しない年が返る</a></li></ol></li><li><a href="#toc20" tabindex="0">YEAR関数 よくある質問</a><ol><li><a href="#toc21" tabindex="0">Q1. 「2026/3/19」と入力したのに、年が「1905」など変な値になります</a></li><li><a href="#toc22" tabindex="0">Q2. YEAR関数で「1900」や「1899」が返ってきます</a></li><li><a href="#toc23" tabindex="0">Q3. テキスト形式の「2026年3月19日」から年を取り出したいです</a></li><li><a href="#toc24" tabindex="0">Q4. インポートしたデータが「2026-03-19T00:00:00Z」のような形式で年が取り出せません</a></li></ol></li><li><a href="#toc25" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">YEAR関数とは？スプレッドシートで日付から年を取り出す関数</span></h2>



<p class="wp-block-paragraph">YEAR関数（読み方: イヤー関数）は、<strong>日付データから「年」の部分だけを数値として取り出す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「year（年）」がそのまま関数名になっています。</p>



<p class="wp-block-paragraph">たとえばセルに「2026/3/19」という日付が入っていれば、YEAR関数は「2026」を返します。とてもシンプルですね。</p>



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



<ul class="wp-block-list"><li>日付から年（西暦4桁）を数値で取り出す</li><li>TODAY関数と組み合わせて「今年の西暦」を動的に取得する</li><li>IF関数と組み合わせて年度（4月始まり等）を判定する</li><li>SUMPRODUCT関数と組み合わせて年ごとの集計を行う</li></ul>



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



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



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



<pre class="wp-block-code"><code>=YEAR(日付)</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>年を取り出したい日付データ。セル参照、DATE関数の戻り値、日付として認識される文字列を指定できます</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数はたった1つだけです。覚えやすいですよね。</p>



<h3 class="wp-block-heading"><span id="toc4">戻り値</span></h3>



<p class="wp-block-paragraph">YEAR関数は<strong>1900〜9999の範囲の整数</strong>を返します。「2026/3/19」なら「2026」、「1990/1/1」なら「1990」です。</p>



<p class="wp-block-paragraph">返すのは数値です。文字列ではありません。そのため、取り出した年をそのまま計算に使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc5">入力例</span></h3>



<pre class="wp-block-code"><code>=YEAR(A2)           … セルA2の日付から年を取得
=YEAR(TODAY())       … 今日の日付から年を取得（今年の西暦）
=YEAR(&quot;2026/3/19&quot;)  … 日付文字列から年を取得 → 2026</code></pre>



<h2 class="wp-block-heading"><span id="toc6">基本的な使い方｜日付から年だけを取り出す</span></h2>



<p class="wp-block-paragraph">実際の使い方を見てみましょう。受注日の一覧から年を取り出すケースです。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A列（受注日）</th><th>B列（年）</th></tr></thead><tbody><tr><td>2行目</td><td>2024/8/15</td><td>=YEAR(A2) → <strong>2024</strong></td></tr><tr><td>3行目</td><td>2025/3/1</td><td>=YEAR(A3) → <strong>2025</strong></td></tr><tr><td>4行目</td><td>2026/12/20</td><td>=YEAR(A4) → <strong>2026</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph">B2セルに <code>=YEAR(A2)</code> と入力するだけです。あとは下方向にコピーすれば、すべての行の年を取り出せます。</p>



<p class="wp-block-paragraph">YEAR関数の結果は数値なので、フィルタで「2025」だけに絞り込んだり、ピボットテーブルの行に配置したりできます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「今年の西暦」を取得するなら <code>=YEAR(TODAY())</code> が便利です。<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>が今日の日付を返し、YEAR関数がそこから年を取り出します。ファイルを開くたびに自動更新されますよ。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc8">年度を判定する（YEAR + IF）</span></h3>



<p class="wp-block-paragraph">日本の会社では4月始まりの「年度」を使うことが多いですよね。YEAR関数とIF関数を組み合わせれば、日付から年度を自動判定できます。</p>



<pre class="wp-block-code"><code>=IF(MONTH(A2)&gt;=4, YEAR(A2), YEAR(A2)-1)</code></pre>



<p class="wp-block-paragraph">この数式のポイントは次のとおりです。</p>



<ul class="wp-block-list"><li>MONTH関数で月を取り出す（1〜12の数値）</li><li>4月以降（4〜12月）なら、その年がそのまま年度</li><li>1〜3月なら、前年が年度（YEAR(A2)-1）</li></ul>



<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>2026/6/15</td><td>6（4月以降）</td><td><strong>2026</strong>年度</td></tr><tr><td>2026/2/10</td><td>2（3月以前）</td><td><strong>2025</strong>年度</td></tr><tr><td>2025/4/1</td><td>4（4月以降）</td><td><strong>2025</strong>年度</td></tr><tr><td>2025/3/31</td><td>3（3月以前）</td><td><strong>2024</strong>年度</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">4月1日と3月31日で年度が変わるのがわかりますね。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>年度の開始月が4月以外の場合は、数式の「4」を変更してください。たとえば10月始まりなら <code>=IF(MONTH(A2)>=10, YEAR(A2), YEAR(A2)-1)</code> です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc9">年ごとに集計する（SUMPRODUCT + YEAR）</span></h3>



<p class="wp-block-paragraph">「年ごとの売上合計を出したい」という場面では、SUMPRODUCT関数とYEAR関数を組み合わせます。</p>



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



<p class="wp-block-paragraph">この数式は、A列の日付が2026年の行だけを対象に、B列の金額を合計します。</p>



<p class="wp-block-paragraph">数式の仕組みを分解すると、次のとおりです。</p>



<ol class="wp-block-list"><li><code>YEAR(A2:A100)</code> で各行の年を取り出す</li><li><code>=2026</code> で2026年かどうかを判定（TRUE/FALSE）</li><li>TRUEは1、FALSEは0として金額と掛け算される</li><li>SUMPRODUCTが合計を返す</li></ol>



<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>SUMIF関数で <code>=SUMIF(A2:A100, "2026", B2:B100)</code> のように年を文字列で指定しても、日付と年は型が違うため正しく集計できません。SUMPRODUCT+YEAR関数の組み合わせを使いましょう。</p></blockquote>



<p class="wp-block-paragraph">今年の売上を動的に集計したい場合は、「2026」の部分をYEAR(TODAY())に置き換えます。</p>



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



<h3 class="wp-block-heading"><span id="toc10">年ごとの件数を数える（SUMPRODUCT + YEAR）</span></h3>



<p class="wp-block-paragraph">「年ごとの売上合計」だけでなく、「年ごとに何件あったか」を数えたい場面も多いですよね。契約件数や問い合わせ件数の集計です。</p>



<p class="wp-block-paragraph">これもSUMPRODUCT関数とYEAR関数で実現できます。合計のときの「金額範囲」を「1」に置き換えるだけです。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((YEAR(A2:A100)=2026)*1)</code></pre>



<p class="wp-block-paragraph">A列の日付が2026年の行だけを「1」として数え上げます。最後の <code>*1</code> がTRUE/FALSEを数値の1/0に変換する役割です。</p>



<p class="wp-block-paragraph">仕組みは合計のときと同じで、次のように動きます。</p>



<ol class="wp-block-list"><li><code>YEAR(A2:A100)</code> で各行の年を取り出す</li><li><code>=2026</code> で2026年かどうかを判定（TRUE/FALSE）</li><li><code>*1</code> でTRUEを1、FALSEを0に変換する</li><li>SUMPRODUCTが1の個数（＝件数）を合計する</li></ol>



<p class="wp-block-paragraph">今年の件数を動的に数えたいなら、<code>2026</code> を <code>YEAR(TODAY())</code> に置き換えてください。ファイルを開くたびに自動更新されますよ。</p>



<pre class="wp-block-code"><code>=SUMPRODUCT((YEAR(A2:A100)=YEAR(TODAY()))*1)</code></pre>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>日付範囲で数える方法もあります。<code>=COUNTIFS(A2:A100, ">="&DATE(2026,1,1), A2:A100, "<="&#038;DATE(2026,12,31))</code> のようにDATE関数で年初と年末を指定する書き方です。YEAR関数を使わずに範囲指定したいときはこちらが便利ですが、年が増えるたびに条件を書き換える手間があります。複数年をまとめて扱うならSUMPRODUCT+YEAR関数のほうが応用しやすいですよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc11">ARRAYFORMULA と組み合わせる（補助列を使わない方法）</span></h3>



<p class="wp-block-paragraph"><code>=YEAR(A2)</code> を下方向にコピーするのが基本ですが、データが日々増える表だと、コピー範囲が足りなくなることがありますよね。</p>



<p class="wp-block-paragraph">そんなときは<a href="https://mashukabu.com/spreadsheet-arrayformula-function/">ARRAYFORMULA関数</a>と組み合わせると、1か所の入力だけで全行に年を展開できます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(YEAR(A2:A100))</code></pre>



<p class="wp-block-paragraph">B2セルにこの1行を入れるだけで、A2からA100までの年が一括で表示されます。新しい行を追加しても範囲内なら自動で計算されますよ。</p>



<p class="wp-block-paragraph">ただし、空白セルがあると <code>YEAR("")</code> がエラーになる点に注意してください。空白行を含む範囲では、IF関数でガードを入れます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(A2:A100&lt;&gt;&quot;&quot;, YEAR(A2:A100), &quot;&quot;))</code></pre>



<p class="wp-block-paragraph">これで「A列が空でない行だけ年を表示し、空白行は何も表示しない」という挙動になります。年度判定をARRAYFORMULA化したい場合も、同じ考え方でIF関数を組み合わせればOKです。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(IF(A2:A100&lt;&gt;&quot;&quot;, IF(MONTH(A2:A100)&gt;=4, YEAR(A2:A100), YEAR(A2:A100)-1), &quot;&quot;))</code></pre>



<p class="wp-block-paragraph">補助列を毎回コピーする手間がなくなるので、フォーム回答やインポートデータのように行数が変動する表で重宝します。</p>



<h3 class="wp-block-heading"><span id="toc12">生年月日から生まれ年・年代を取り出す</span></h3>



<p class="wp-block-paragraph">YEAR関数は受注日や売上日だけでなく、人事や会員管理でも活躍します。社員台帳や顧客リストで「生まれ年」を列に追加したいケースですね。</p>



<p class="wp-block-paragraph">生年月日から生まれ年を取り出すのは、いつもどおりYEAR関数だけです。</p>



<pre class="wp-block-code"><code>=YEAR(A2)   … 生年月日のセルから生まれ年を取得</code></pre>



<p class="wp-block-paragraph">さらに「1980年代」「1990年代」のように年代で分類したいときは、INT関数を組み合わせます。</p>



<pre class="wp-block-code"><code>=INT(YEAR(A2)/10)*10</code></pre>



<p class="wp-block-paragraph">この数式は、生まれ年を10で割って小数点以下を切り捨て、また10を掛けることで「下1桁を0にする」処理です。</p>



<figure class="wp-block-table"><table><thead><tr><th>生年月日</th><th>生まれ年</th><th>年代の計算結果</th></tr></thead><tbody><tr><td>1985/7/3</td><td>1985</td><td><strong>1980</strong></td></tr><tr><td>1992/12/1</td><td>1992</td><td><strong>1990</strong></td></tr><tr><td>2001/4/20</td><td>2001</td><td><strong>2000</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><code>="（"&INT(YEAR(A2)/10)*10&"年代）"</code> のように文字列と結合すれば、「1980年代」という表示も作れます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>「年齢」を計算したい場合はYEAR関数ではなく、<a href="https://mashukabu.com/spreadsheet-datedif-function/">DATEDIF関数</a>が向いています。YEAR関数で年だけを引き算すると誕生日前後で1歳ずれることがあるためです。「生まれ年だけ欲しい」「年代で分類したい」という用途ならYEAR関数が最適ですよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc13">N年後の日付を求める（DATE + YEAR）</span></h3>



<p class="wp-block-paragraph">契約更新日や資格の有効期限など、「N年後の日付」が必要な場面もありますよね。<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数</a>とYEAR関数を組み合わせれば計算できます。</p>



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



<p class="wp-block-paragraph">たとえば3年後の日付を求めるなら、次のように書きます。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>基準日</th><th>3年後</th></tr></thead><tbody><tr><td>2026/3/19</td><td><strong>2029/3/19</strong></td></tr><tr><td>2024/2/29</td><td><strong>2027/3/1</strong>（うるう年の調整）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">2月29日の3年後は2月29日が存在しないため、自動的に3月1日に繰り上がります。DATE関数のロールオーバー機能のおかげです。</p>



<h3 class="wp-block-heading"><span id="toc14">今年・去年を動的に判定する（TODAY + YEAR）</span></h3>



<p class="wp-block-paragraph">「今年のデータだけを色付けしたい」「去年と今年で分けたい」という場面では、<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数</a>との組み合わせが便利です。</p>



<pre class="wp-block-code"><code>=YEAR(A2)=YEAR(TODAY())       … 今年のデータかどうか（TRUE/FALSE）
=YEAR(A2)=YEAR(TODAY())-1     … 去年のデータかどうか</code></pre>



<p class="wp-block-paragraph">条件付き書式のカスタム数式にも使えます。「今年のデータだけ背景色を変える」といった設定が簡単にできますよ。</p>



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



<p class="wp-block-paragraph">YEAR関数には姉妹関数として<strong>MONTH関数</strong>と<strong>DAY関数</strong>があります。3つセットで覚えておくと便利です。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>読み方</th><th>取り出す要素</th><th>戻り値の範囲</th><th>入力例（2026/3/19）</th><th>結果</th></tr></thead><tbody><tr><td>YEAR</td><td>イヤー</td><td>年</td><td>1900〜9999</td><td>=YEAR(A2)</td><td>2026</td></tr><tr><td>MONTH</td><td>マンス</td><td>月</td><td>1〜12</td><td>=MONTH(A2)</td><td>3</td></tr><tr><td>DAY</td><td>デイ</td><td>日</td><td>1〜31</td><td>=DAY(A2)</td><td>19</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">3関数とも構文は同じで <code>=関数名(日付)</code> です。引数も1つだけなので、迷うことはありません。</p>



<p class="wp-block-paragraph">この3関数を組み合わせると、日付の分解と再構築が自由にできます。</p>



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



<p class="wp-block-paragraph">上の数式はA2の日付をいったんYEAR・MONTH・DAYで分解し、DATE関数で再構築しています。このパターンは「年だけ変える」「月だけずらす」といった加工の基本形です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>日付を「2026年3月」のようにテキスト表示したい場合は、<a href="https://mashukabu.com/spreadsheet-text-function/">TEXT関数</a>を使ってください。<code>=TEXT(A2, "yyyy年m月")</code> で書式付きの文字列に変換できます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc16">ピボットテーブルで年ごとに集計する方法との違い</span></h2>



<p class="wp-block-paragraph">「SUMPRODUCT+YEAR関数の数式がむずかしい」と感じたら、ピボットテーブルという選択肢もあります。マウス操作で年ごとの集計ができる機能です。</p>



<p class="wp-block-paragraph">ピボットテーブルでは、日付の列を「行」に配置し、右クリックから「年でグループ化」を選ぶと、年単位の集計表が作れます。数式を一切書かずに、年ごとの売上や件数を出せるのが魅力です。</p>



<p class="wp-block-paragraph">数式とピボットテーブル、それぞれの向き不向きを整理すると次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>YEAR関数による数式</th><th>ピボットテーブル</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>条件の細かさ</td><td>年度・複数条件を自由に設定</td><td>グループ化の単位に依存</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ざっくり言うと、「集計結果を別の計算に使いたい」「自動で更新したい」なら数式、「とりあえず手早く眺めたい」ならピボットテーブル、という使い分けです。</p>



<p class="wp-block-paragraph">YEAR関数を覚えておけば、ピボットテーブルでは作りにくい「4月始まり年度での集計」なども柔軟に対応できます。両方を場面で使い分けられると、集計作業がぐっと楽になりますよ。</p>



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



<h3 class="wp-block-heading"><span id="toc18">#VALUE! エラー</span></h3>



<p class="wp-block-paragraph">YEAR関数で最もよくあるエラーです。原因は<strong>引数が日付として認識できない</strong>ことです。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>入力例</th><th>対処法</th></tr></thead><tbody><tr><td>文字列の日付</td><td>=YEAR("令和8年")</td><td>西暦の日付形式に変換する</td></tr><tr><td>数値の文字列</td><td>=YEAR("2026")</td><td>=YEAR(DATEVALUE("2026/1/1")) に変更</td></tr><tr><td>空白セル</td><td>=YEAR("")</td><td>IF関数で空白チェックを追加</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「2026/3/19」のような形式の文字列ならYEAR関数で認識できます。ただし「令和8年」や「R8」のような和暦は認識できませんので注意してください。</p>



<h3 class="wp-block-heading"><span id="toc19">意図しない年が返る</span></h3>



<p class="wp-block-paragraph">日付に見えて実は文字列になっているセルがあります。セルの左上に小さな緑の三角マークが出ていたら要注意です。</p>



<p class="wp-block-paragraph">「表示形式」→「数字」→「日付」で日付型に変換するか、DATEVALUE関数で文字列を日付に変換してからYEAR関数を使ってください。</p>



<h2 class="wp-block-heading"><span id="toc20">YEAR関数 よくある質問</span></h2>



<p class="wp-block-paragraph">YEAR関数を使っていてつまずきやすいポイントを、Q&A形式でまとめました。</p>



<h3 class="wp-block-heading"><span id="toc21">Q1. 「2026/3/19」と入力したのに、年が「1905」など変な値になります</span></h3>



<p class="wp-block-paragraph">セルの表示形式が「数値」になっていて、日付が日付シリアル値（数値）として扱われている可能性があります。この場合、YEAR関数はその数値を別の日付として解釈してしまいます。</p>



<p class="wp-block-paragraph">対処法は2つあります。1つはセルの表示形式を「日付」に変更すること。「表示形式」→「数字」→「日付」で切り替えられます。</p>



<p class="wp-block-paragraph">もう1つは、数式内で直接DATE関数を使う方法です。<code>=YEAR(DATE(2026,3,19))</code> のように書けば、確実に日付として認識されますよ。</p>



<h3 class="wp-block-heading"><span id="toc22">Q2. YEAR関数で「1900」や「1899」が返ってきます</span></h3>



<p class="wp-block-paragraph">参照先のセルが空白になっていないか確認してください。空白セルは「0」として扱われ、シリアル値の0は1899年12月30日を指すため、YEAR関数が1899や1900を返してしまいます。</p>



<p class="wp-block-paragraph">対処法はIF関数で空白チェックを入れることです。</p>



<pre class="wp-block-code"><code>=IF(A2&lt;&gt;&quot;&quot;, YEAR(A2), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">これで「A2が空白なら何も表示せず、日付が入っていれば年を返す」という動きになります。集計表で空白行が混ざるときに特に有効です。</p>



<h3 class="wp-block-heading"><span id="toc23">Q3. テキスト形式の「2026年3月19日」から年を取り出したいです</span></h3>



<p class="wp-block-paragraph">「年」「月」「日」を含む和暦風のテキストは、そのままではYEAR関数で認識できません。<code>=YEAR("2026年3月19日")</code> は#VALUE!エラーになります。</p>



<p class="wp-block-paragraph">一番おすすめなのは、最初から「2026/3/19」という日付形式で入力することです。これがいちばん手間がかかりません。</p>



<p class="wp-block-paragraph">すでにテキストで入力済みの場合は、SUBSTITUTE関数で「年」「月」をスラッシュに置き換え、DATEVALUE関数で日付に変換してからYEAR関数に渡します。</p>



<pre class="wp-block-code"><code>=YEAR(DATEVALUE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,&quot;年&quot;,&quot;/&quot;),&quot;月&quot;,&quot;/&quot;),&quot;日&quot;,&quot;&quot;)))</code></pre>



<p class="wp-block-paragraph">ただし数式が複雑になるので、データが大量にある場合は入力ルール自体を「日付形式」に統一するのが現実的ですよ。</p>



<h3 class="wp-block-heading"><span id="toc24">Q4. インポートしたデータが「2026-03-19T00:00:00Z」のような形式で年が取り出せません</span></h3>



<p class="wp-block-paragraph">外部システムからのデータはISO 8601形式（<code>2026-03-19T00:00:00Z</code>）になっていることがあります。後半の時刻部分が邪魔をして、YEAR関数が認識できないケースです。</p>



<p class="wp-block-paragraph">LEFT関数で先頭10文字（日付部分）だけを取り出し、DATEVALUE関数で日付に変換すれば解決できます。</p>



<pre class="wp-block-code"><code>=YEAR(DATEVALUE(LEFT(A2,10)))</code></pre>



<p class="wp-block-paragraph"><code>LEFT(A2,10)</code> で「2026-03-19」だけを抜き出し、DATEVALUE関数が日付型に変換、最後にYEAR関数が年を取り出す、という流れです。インポートデータの加工で覚えておくと便利ですよ。</p>



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



<p class="wp-block-paragraph">この記事では、スプレッドシートのYEAR関数の使い方を解説しました。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>内容</th></tr></thead><tbody><tr><td>構文</td><td>=YEAR(日付)</td></tr><tr><td>できること</td><td>日付から年（西暦4桁）を数値で取り出す</td></tr><tr><td>姉妹関数</td><td>MONTH（月）・DAY（日）</td></tr><tr><td>年度判定</td><td>=IF(MONTH(A2)>=4, YEAR(A2), YEAR(A2)-1)</td></tr><tr><td>年ごと集計</td><td>=SUMPRODUCT((YEAR(範囲)=年)*金額範囲)</td></tr><tr><td>N年後の日付</td><td>=DATE(YEAR(A2)+N, MONTH(A2), DAY(A2))</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">YEAR関数は単体でも便利ですが、IF関数やSUMPRODUCT関数と組み合わせると活用の幅がぐっと広がります。まずは <code>=YEAR(A2)</code> で年を取り出すところから試してみてくださいね。</p>



<p class="wp-block-paragraph">日付操作をもっと知りたい方は、<a href="https://mashukabu.com/spreadsheet-date-function/">DATE関数の使い方</a>や<a href="https://mashukabu.com/spreadsheet-today-function/">TODAY関数の使い方</a>もあわせてチェックしてみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-year-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのDAYS関数の使い方｜日数計算と実務活用を解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-days/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-days/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 13 Jul 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[DATEDIF]]></category>
		<category><![CDATA[DAYS関数]]></category>
		<category><![CDATA[NETWORKDAYS]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[日数計算]]></category>
		<category><![CDATA[関数比較]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2385</guid>

					<description><![CDATA[ExcelのDAYS関数で2つの日付間の日数を求める方法を解説。引数の順番、TODAY関数との組み合わせ、納期管理や経過日数の実務例を紹介。引き算・DATEDIF・NETWORKDAYSとの使い分け比較表つき。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「2つの日付の間が何日あるか」を計算したいこと、ありますよね。引き算でもできますが、表示形式が日付のままになって数値として扱えなかったり、見た目が崩れたりと地味にハマるポイントがあります。</p>



<p class="wp-block-paragraph">そんなときに使いたいのが <strong>DAYS関数</strong> です。この記事では、DAYS関数の基本から実務での活用パターン、似た関数との使い分けまで解説します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>この記事は次のような人におすすめ</strong></p><p>&#8211; 2つの日付の日数差を正確に求めたい<br>&#8211; 引き算とDAYS関数の違いがわからない<br>&#8211; DATEDIF関数やNETWORKDAYS関数との使い分けを知りたい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-9" checked><label class="toc-title" for="toc-checkbox-9">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">DAYS関数とは？</a></li><li><a href="#toc2" tabindex="0">ExcelのDAYS関数の書き方</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">DAYS関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">2つの日付の日数差を求める</a></li><li><a href="#toc7" tabindex="0">終了日が開始日より前の場合</a></li><li><a href="#toc8" tabindex="0">文字列の日付を指定する</a></li><li><a href="#toc9" tabindex="0">開始日を含めた日数を求める（+1問題）</a></li></ol></li><li><a href="#toc10" tabindex="0">実務での活用例</a><ol><li><a href="#toc11" tabindex="0">納期までの残り日数を表示する</a></li><li><a href="#toc12" tabindex="0">契約の残り日数を管理する</a></li><li><a href="#toc13" tabindex="0">プロジェクトの経過日数を計算する</a></li><li><a href="#toc14" tabindex="0">2つの日付列から一括で日数を計算する</a></li></ol></li><li><a href="#toc15" tabindex="0">DAYS関数・引き算・DATEDIF・NETWORKDAYSの使い分け</a><ol><li><a href="#toc16" tabindex="0">どれを使うべき？ 判断フロー</a></li></ol></li><li><a href="#toc17" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li><li><a href="#toc20" tabindex="0">関数一覧</a></li><li><a href="#toc21" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">DAYS関数は、2つの日付の間の日数を求める関数です。読み方は「デイズ」で、英語の <strong>Days（日数）</strong> がそのまま名前になっています。</p>



<p class="wp-block-paragraph">「開始日から終了日まで何日か」をシンプルに返してくれます。Excel 2013以降で使える関数です。</p>



<p class="wp-block-paragraph">たとえば、2026年1月1日から2026年3月31日までの日数は <strong>89日</strong> です。DAYS関数なら1つの数式でこの答えが出ます。</p>



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



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



<pre class="wp-block-code"><code>=DAYS(終了日, 開始日)</code></pre>



<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">引数の順番に注意してください。<strong>終了日が先、開始日が後</strong> です。<a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数</a>は「開始日, 終了日」の順番なので、混同しないようにしましょう。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>引数の覚え方</strong></p><p>「<strong>終了日 − 開始日</strong>」の引き算をイメージすると覚えやすいですよ。引かれる数（終了日）が先にくる、と考えてみてください。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc6">2つの日付の日数差を求める</span></h3>



<p class="wp-block-paragraph">A1に「2026/1/1」、B1に「2026/3/31」と入っている場合を見てみましょう。</p>



<pre class="wp-block-code"><code>=DAYS(B1, A1)</code></pre>



<p class="wp-block-paragraph">結果: <strong>89</strong></p>



<p class="wp-block-paragraph">B1（終了日）からA1（開始日）を引いた日数が返ります。結果は整数なので、そのまま計算に使えます。</p>



<h3 class="wp-block-heading"><span id="toc7">終了日が開始日より前の場合</span></h3>



<p class="wp-block-paragraph">DAYS関数は、終了日が開始日より前でもエラーになりません。</p>



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



<p class="wp-block-paragraph">結果: <strong>-89</strong></p>



<p class="wp-block-paragraph">マイナスの値が返ります。「期限切れかどうか」の判定に使えるので、これは便利な仕様です。</p>



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



<p class="wp-block-paragraph">DAYS関数はセル参照だけでなく、文字列で直接日付を指定することもできます。</p>



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



<p class="wp-block-paragraph">結果: <strong>364</strong></p>



<p class="wp-block-paragraph">文字列の日付は内部で自動的に日付データに変換されます。ただし、セル参照のほうが入力ミスを防げるのでおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc9">開始日を含めた日数を求める（+1問題）</span></h3>



<p class="wp-block-paragraph">DAYS関数は「終了日 − 開始日」の差を返します。つまり、<strong>開始日そのものは日数に含まれません</strong>。</p>



<p class="wp-block-paragraph">たとえば、1月1日から1月3日までの「滞在日数」を求めたい場合です。</p>



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



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



<p class="wp-block-paragraph">1月1日・2日・3日の3日間を数えたいなら、結果に <strong>+1</strong> する必要があります。</p>



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



<p class="wp-block-paragraph">結果: <strong>3</strong></p>



<p class="wp-block-paragraph">「当日を含むかどうか」は業務によって変わります。イベントの開催日数や旅行の宿泊数など、当日を含めるケースでは +1 を忘れないようにしてください。</p>



<h2 class="wp-block-heading"><span id="toc10">実務での活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">納期までの残り日数を表示する</span></h3>



<p class="wp-block-paragraph">TODAY関数と組み合わせると、納期までの残り日数をリアルタイムで表示できます。A2に納期が入っている場合です。</p>



<pre class="wp-block-code"><code>=DAYS(A2, TODAY())</code></pre>



<p class="wp-block-paragraph">TODAY関数はファイルを開くたびに当日の日付を返します。納期が過ぎるとマイナスになるので、期限切れの判定にも使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">契約の残り日数を管理する</span></h3>



<p class="wp-block-paragraph">契約終了日（B列）から今日までの残り日数を表示し、30日以内なら「更新間近」と表示する例です。</p>



<pre class="wp-block-code"><code>=IF(DAYS(B2, TODAY()) &lt;= 30, &quot;更新間近&quot;, DAYS(B2, TODAY()) &amp; &quot;日&quot;)</code></pre>



<p class="wp-block-paragraph">残り日数が30日以下になったら「更新間近」、それ以外なら「○○日」と表示されます。</p>



<h3 class="wp-block-heading"><span id="toc13">プロジェクトの経過日数を計算する</span></h3>



<p class="wp-block-paragraph">開始日（A列）から今日までの経過日数を求める場合です。</p>



<pre class="wp-block-code"><code>=DAYS(TODAY(), A2)</code></pre>



<p class="wp-block-paragraph">ここでは TODAY() が終了日の位置にきます。「今日 − 開始日」で経過日数を計算しているわけですね。</p>



<h3 class="wp-block-heading"><span id="toc14">2つの日付列から一括で日数を計算する</span></h3>



<p class="wp-block-paragraph">開始日（A列）と終了日（B列）が並んでいるリストで、C列に日数を一括表示する場合です。</p>



<pre class="wp-block-code"><code>=DAYS(B2, A2)</code></pre>



<p class="wp-block-paragraph">C2にこの数式を入力し、下方向にコピーすればリスト全体の日数を一気に計算できます。</p>



<h2 class="wp-block-heading"><span id="toc15">DAYS関数・引き算・DATEDIF・NETWORKDAYSの使い分け</span></h2>



<p class="wp-block-paragraph">Excelには日数を計算する方法がいくつかあります。それぞれの違いを表で整理しました。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>DAYS関数</th><th>引き算（B1-A1）</th><th><a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数</a></th><th>NETWORKDAYS関数</th></tr></thead><tbody><tr><td>戻り値</td><td>日数（整数）</td><td>日数（※表示形式に注意）</td><td>年/月/日を指定可</td><td>営業日数</td></tr><tr><td>引数の順番</td><td>終了日, 開始日</td><td>任意</td><td>開始日, 終了日</td><td>開始日, 終了日</td></tr><tr><td>負の値</td><td>返る</td><td>返る</td><td>#NUM! エラー</td><td>返る</td></tr><tr><td>文字列日付の対応</td><td>自動変換</td><td>エラーになる場合あり</td><td>自動変換</td><td>自動変換</td></tr><tr><td>土日・祝日の除外</td><td>不可</td><td>不可</td><td>不可</td><td>可</td></tr><tr><td>対応バージョン</td><td>2013以降</td><td>すべて</td><td>すべて（非公式）</td><td>すべて</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc16">どれを使うべき？ 判断フロー</span></h3>



<p class="wp-block-paragraph">迷ったときは、以下の基準で選んでみてください。</p>



<ol class="wp-block-list"><li><strong>土日・祝日を除いた営業日数を求めたい</strong> → NETWORKDAYS関数</li><li><strong>年数や月数の単位で差を求めたい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数</a></li><li><strong>単純な日数差を求めたい</strong> → DAYS関数 or 引き算</li><li><strong>文字列日付を扱う可能性がある</strong> → DAYS関数（自動変換してくれる）</li><li><strong>Excel 2010以前の環境で使う</strong> → 引き算</li></ol>



<p class="wp-block-paragraph">DAYS関数と引き算は結果自体は同じです。ただし、引き算はセルの表示形式が「日付」のままだと正しい数値が表示されないことがあります。DAYS関数なら必ず整数が返るので、表示形式のトラブルを避けたいならDAYS関数がおすすめです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>DATEDIF関数の注意点</strong></p><p>DATEDIF関数は公式のサポートページに掲載されていない非公式関数です。動作に問題はありませんが、Excelの関数入力時に候補として表示されません。日数だけの計算ならDAYS関数を使うほうが安心です。</p></blockquote>



<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>#VALUE!</td><td>日付として認識できない文字列を渡した</td><td>セル参照を使うか、「2026/1/1」のように正しい日付形式で入力する</td></tr><tr><td>#NUM!</td><td>日付の範囲外の数値を渡した</td><td>日付として有効な値かどうかを確認する</td></tr><tr><td>結果が日付のように表示される</td><td>セルの表示形式が「日付」になっている</td><td>セルの表示形式を「標準」または「数値」に変更する</td></tr><tr><td>期待と1日ズレる</td><td>開始日を含めて数えている前提だった</td><td>当日を含める場合は結果に +1 する</td></tr><tr><td>大きな数値が表示される</td><td>引数に日付ではなく数値が入っている</td><td>引数のセルが正しい日付データかどうかを確認する</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>表示形式のトラブルを防ぐコツ</strong></p><p>DAYS関数の結果が「1900/3/30」のような日付で表示されたら、表示形式が原因です。セルを選択して <strong>Ctrl + 1</strong> → 「標準」を選べば正しい数値が表示されますよ。</p></blockquote>



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



<p class="wp-block-paragraph">DAYS関数は、2つの日付の日数差をシンプルに求められる関数です。</p>



<ul class="wp-block-list"><li><strong>=DAYS(終了日, 開始日)</strong> で日数を返す。引数は終了日が先</li><li>終了日が開始日より前なら <strong>マイナスの値</strong> が返る（エラーにならない）</li><li>TODAY関数と組み合わせれば <strong>残り日数のリアルタイム表示</strong> ができる</li><li>開始日を含めたい場合は結果に <strong>+1</strong> する</li><li>引き算と結果は同じだが、<strong>表示形式トラブルがない</strong>のがDAYS関数の強み</li></ul>



<p class="wp-block-paragraph">日付の引き算で表示が崩れて困った経験がある方は、DAYS関数に切り替えてみてください。数式の意味もわかりやすくなりますよ。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数の使い方</a>や<a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数の使い方</a>もあわせてチェックすると、Excelの日付操作がもっとスムーズになります。<a href="https://mashukabu.com/excel-date-calculation-guide/">日付計算完全攻略記事</a>もぜひ参考にしてみてください。</p>



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-datedif/">DATEDIF関数の使い方</a></li><li><a href="https://mashukabu.com/excel-date-calculation-guide/">Excelの日付計算完全攻略</a></li></ul>



<h3 class="wp-block-heading"><span id="toc20">関数一覧</span></h3>



<p class="wp-block-paragraph">どちらの関数一覧からでも各関数の解説記事へアクセスできます。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order/">【Excel】アルファベット順 関数一覧</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">【Excel】機能別のエクセル関数一覧</a></li><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<h3 class="wp-block-heading"><span id="toc21">エラー値についてのまとめ記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-error-value-list/">エラー値についてのまとめ記事</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-days/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのDATEDIF関数の使い方｜年齢・勤続年数を計算</title>
		<link>https://mashukabu.com/excel-function-howto-use-datedif/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-datedif/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 12 Jul 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[DATEDIF関数]]></category>
		<category><![CDATA[DAYS関数]]></category>
		<category><![CDATA[EDATE関数]]></category>
		<category><![CDATA[TODAY関数]]></category>
		<category><![CDATA[勤続年数]]></category>
		<category><![CDATA[年齢計算]]></category>
		<category><![CDATA[日付関数]]></category>
		<category><![CDATA[関数比較]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2376</guid>

					<description><![CDATA[ExcelのDATEDIF関数で年齢・勤続年数・経過月数を自動計算する方法を解説。6つの単位の違い、"MD"バグの回避策、DAYS/YEARFRACとの使い分け比較、スプレッドシートとの違いまで実務目線で網羅しています。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「この人は今何歳？」「入社から何年経った？」と計算したい場面、ありますよね。生年月日と今日の日付から年齢を出したいのに、ぴったりの関数が見つからない。</p>



<p class="wp-block-paragraph">そんなときに使えるのが <strong>DATEDIF関数</strong> です。この記事では、基本の書き方から6つの単位の違い、年齢・勤続年数の実務パターン、&#8221;MD&#8221;単位の既知バグと回避策まで解説します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>この記事は次のような人におすすめ</strong></p><p>&#8211; 生年月日から年齢を自動計算したい<br>&#8211; 入社日から勤続年数を「○年○ヶ月」で表示したい<br>&#8211; DATEDIF関数の6つの単位の違いを知りたい<br>&#8211; &#8220;MD&#8221;のバグが不安で正しい回避策を知りたい</p></blockquote>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-10" checked><label class="toc-title" for="toc-checkbox-10">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">DATEDIF関数とは？</a><ol><li><a href="#toc2" tabindex="0">DATEDIF関数の読み方と意味</a></li><li><a href="#toc3" tabindex="0">非公開関数とは何か</a></li></ol></li><li><a href="#toc4" tabindex="0">DATEDIF関数の書き方</a><ol><li><a href="#toc5" tabindex="0">基本構文と3つの引数</a></li><li><a href="#toc6" tabindex="0">6つの単位の違い一覧</a></li></ol></li><li><a href="#toc7" tabindex="0">DATEDIF関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">年数を求める（単位 Y）</a></li><li><a href="#toc9" tabindex="0">月数を求める（単位 M）</a></li><li><a href="#toc10" tabindex="0">日数を求める（単位 D）</a></li><li><a href="#toc11" tabindex="0">端数の月・日を取り出す（YM/MD）</a></li></ol></li><li><a href="#toc12" tabindex="0">DATEDIF関数の実務活用パターン</a><ol><li><a href="#toc13" tabindex="0">年齢を自動計算する（TODAY関数との組み合わせ）</a></li><li><a href="#toc14" tabindex="0">勤続年数を「○年○ヶ月」で表示する</a></li><li><a href="#toc15" tabindex="0">契約の残り期間を表示する</a></li></ol></li><li><a href="#toc16" tabindex="0">&#8220;MD&#8221;単位の既知バグと回避策</a><ol><li><a href="#toc17" tabindex="0">どんな場合に不正確な値になるか</a></li><li><a href="#toc18" tabindex="0">代替式で正確に端数日数を求める方法</a></li></ol></li><li><a href="#toc19" tabindex="0">DATEDIF / DAYS / YEARFRAC 三者比較</a><ol><li><a href="#toc20" tabindex="0">3関数の特徴と適切な使い分け</a></li><li><a href="#toc21" tabindex="0">判断フロー｜何を計算したいかで関数を選ぶ</a></li></ol></li><li><a href="#toc22" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc23" tabindex="0">まとめ</a><ol><li><a href="#toc24" tabindex="0">関連記事</a></li><li><a href="#toc25" tabindex="0">関数一覧</a></li><li><a href="#toc26" tabindex="0">エラー値についてのまとめ記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">DATEDIF関数は、2つの日付の間の期間を <strong>年数・月数・日数</strong> で求めるExcelの関数です。</p>



<p class="wp-block-paragraph">ほかの日付関数との大きな違いは、「○年」「○ヶ月」と単位を選べる点です。年齢計算や勤続年数の算出にぴったりですよ。</p>



<h3 class="wp-block-heading"><span id="toc2">DATEDIF関数の読み方と意味</span></h3>



<p class="wp-block-paragraph">読み方は「デイトディフ」です。<strong>Date（日付）+ Difference（差）</strong> が語源で、そのまま「日付の差」を意味します。</p>



<h3 class="wp-block-heading"><span id="toc3">非公開関数とは何か</span></h3>



<p class="wp-block-paragraph">DATEDIF関数は、Excelの <strong>非公開関数</strong> です。関数ダイアログや入力補完の候補に表示されません。</p>



<p class="wp-block-paragraph">もともとLotus 1-2-3という表計算ソフトとの互換性のために残された関数です。Excel 2000のヘルプでは公式に記載されていましたが、現在は通常の関数一覧から外されています。</p>



<p class="wp-block-paragraph">ただし、動作自体にはまったく問題ありません。すべてのバージョンのExcelで使えます。数式を手入力すれば普通に動きますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>廃止される心配はない？</strong></p><p>極めて低いと考えてよいでしょう。すべてのExcelバージョンで動作し、Microsoftのサポートページも存続しています。ただし公式サポート対象外なので、将来の仕様変更がゼロとは言い切れません。重要な業務で使う場合は、この点を頭に入れておいてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc4">DATEDIF関数の書き方</span></h2>



<h3 class="wp-block-heading"><span id="toc5">基本構文と3つの引数</span></h3>



<pre class="wp-block-code"><code>=DATEDIF(開始日, 終了日, 単位)</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><tr><td>単位</td><td>必須</td><td>結果の形式を指定する文字列</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数の順番に注意してください。<strong>開始日が先、終了日が後</strong> です。<a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>は「終了日, 開始日」と逆順なので、混同しないようにしましょう。</p>



<p class="wp-block-paragraph">開始日が終了日より後の日付だと <strong>#NUM! エラー</strong> になります。<a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>のようにマイナスの値は返りません。</p>



<p class="wp-block-paragraph">日付はセル参照のほか、<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>で直接指定することもできます。</p>



<pre class="wp-block-code"><code>=DATEDIF(DATE(2020,4,1), DATE(2026,3,21), &quot;Y&quot;)</code></pre>



<p class="wp-block-paragraph">文字列で <code>"2020/4/1"</code> と書いても動きます。ただし<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>のほうが確実に日付として認識されるので安心です。</p>



<h3 class="wp-block-heading"><span id="toc6">6つの単位の違い一覧</span></h3>



<p class="wp-block-paragraph">DATEDIF関数の特徴は、第3引数の「単位」で結果を細かく指定できる点です。</p>



<figure class="wp-block-table"><table><thead><tr><th>単位</th><th>意味</th><th>2020/4/1 → 2026/3/21 の結果</th></tr></thead><tbody><tr><td>&#8220;Y&#8221;</td><td>期間の満年数</td><td>5</td></tr><tr><td>&#8220;M&#8221;</td><td>期間の総月数</td><td>71</td></tr><tr><td>&#8220;D&#8221;</td><td>期間の総日数</td><td>2182</td></tr><tr><td>&#8220;YM&#8221;</td><td>年を無視した端数の月数</td><td>11</td></tr><tr><td>&#8220;MD&#8221;</td><td>月と年を無視した端数の日数</td><td>20</td></tr><tr><td>&#8220;YD&#8221;</td><td>年を無視した通算日数</td><td>355</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">&#8220;Y&#8221; &#8220;M&#8221; &#8220;D&#8221; はそのまま年数・月数・日数を返します。</p>



<p class="wp-block-paragraph">&#8220;YM&#8221; &#8220;MD&#8221; &#8220;YD&#8221; は <strong>端数を取り出す</strong> ための単位です。たとえば「5年11ヶ月20日」のうち、&#8221;YM&#8221; は「11」の部分だけを返します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>&#8220;MD&#8221; には既知のバグがあります</strong></p><p>&#8220;MD&#8221; は一部の日付で不正確な値を返します。詳しくはこの記事の後半で解説しています。</p></blockquote>



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



<h3 class="wp-block-heading"><span id="toc8">年数を求める（単位 Y）</span></h3>



<p class="wp-block-paragraph">A1に「2020/4/1」、B1に「2026/3/21」と入っている場合です。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1, B1, &quot;Y&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>5</strong></p>



<p class="wp-block-paragraph">開始日から終了日までの満年数が返ります。6年に満たないので「5」です。</p>



<h3 class="wp-block-heading"><span id="toc9">月数を求める（単位 M）</span></h3>



<p class="wp-block-paragraph">同じセルを使って月数を求めてみましょう。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1, B1, &quot;M&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>71</strong></p>



<p class="wp-block-paragraph">2020年4月から2026年3月までの総月数です。</p>



<h3 class="wp-block-heading"><span id="toc10">日数を求める（単位 D）</span></h3>



<pre class="wp-block-code"><code>=DATEDIF(A1, B1, &quot;D&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>2182</strong></p>



<p class="wp-block-paragraph">総日数が返ります。日数だけなら<a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>や引き算でも同じ結果になります。</p>



<h3 class="wp-block-heading"><span id="toc11">端数の月・日を取り出す（YM/MD）</span></h3>



<p class="wp-block-paragraph">「5年 <strong>11ヶ月</strong> 20日」の端数月を取り出すには &#8220;YM&#8221; を使います。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1, B1, &quot;YM&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>11</strong></p>



<p class="wp-block-paragraph">年を無視した端数の月数だけが返ります。</p>



<p class="wp-block-paragraph">同様に、端数の日数は &#8220;MD&#8221; で取り出せます。</p>



<pre class="wp-block-code"><code>=DATEDIF(A1, B1, &quot;MD&quot;)</code></pre>



<p class="wp-block-paragraph">結果: <strong>20</strong></p>



<p class="wp-block-paragraph">ただし &#8220;MD&#8221; には既知のバグがあります。正確な端数日数が必要な場合は、後述の回避策を使ってください。</p>



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



<h3 class="wp-block-heading"><span id="toc13">年齢を自動計算する（TODAY関数との組み合わせ）</span></h3>



<p class="wp-block-paragraph">人事・総務でよく使うのが年齢計算です。A2に生年月日が入っている場合、<a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>と組み合わせます。</p>



<pre class="wp-block-code"><code>=DATEDIF(A2, TODAY(), &quot;Y&quot;)</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>はファイルを開くたびに当日の日付を返します。この数式を入れておけば年齢が毎日自動で更新されますよ。</p>



<p class="wp-block-paragraph">たとえばA2が「1990/5/15」なら、2026年3月21日時点で <strong>35</strong> と表示されます。</p>



<h3 class="wp-block-heading"><span id="toc14">勤続年数を「○年○ヶ月」で表示する</span></h3>



<p class="wp-block-paragraph">入社日（A2）から今日までの勤続年数を「3年5ヶ月」のように表示する方法です。&#8221;Y&#8221; と &#8220;YM&#8221; を組み合わせます。</p>



<pre class="wp-block-code"><code>=DATEDIF(A2, TODAY(), &quot;Y&quot;) &amp; &quot;年&quot; &amp; DATEDIF(A2, TODAY(), &quot;YM&quot;) &amp; &quot;ヶ月&quot;</code></pre>



<p class="wp-block-paragraph">&#8220;Y&#8221; で年数、&#8221;YM&#8221; で端数の月数を取り出し、<code>&</code> で文字列連結しています。</p>



<p class="wp-block-paragraph">A2が「2022/10/1」なら「3年5ヶ月」のように表示されます。</p>



<p class="wp-block-paragraph">さらに日数まで含めた「○年○ヶ月○日」の表示も可能です。ただし &#8220;MD&#8221; にはバグがあるため、次の代替式を使ってください。</p>



<pre class="wp-block-code"><code>=DATEDIF(A2,TODAY(),&quot;Y&quot;)&amp;&quot;年&quot;&amp;DATEDIF(A2,TODAY(),&quot;YM&quot;)&amp;&quot;ヶ月&quot;&amp;(TODAY()-EDATE(A2,DATEDIF(A2,TODAY(),&quot;M&quot;)))&amp;&quot;日&quot;</code></pre>



<p class="wp-block-paragraph">日数部分で<a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a>を使い、&#8221;MD&#8221; のバグを回避しています。</p>



<h3 class="wp-block-heading"><span id="toc15">契約の残り期間を表示する</span></h3>



<p class="wp-block-paragraph">契約終了日（B2）までの残り期間を表示する例です。開始日に<a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>を指定します。</p>



<pre class="wp-block-code"><code>=DATEDIF(TODAY(), B2, &quot;Y&quot;) &amp; &quot;年&quot; &amp; DATEDIF(TODAY(), B2, &quot;YM&quot;) &amp; &quot;ヶ月&quot;</code></pre>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>（今日）が開始日、B2（契約終了日）が終了日です。順番を逆にすると#NUM!エラーになるので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc16">&#8220;MD&#8221;単位の既知バグと回避策</span></h2>



<h3 class="wp-block-heading"><span id="toc17">どんな場合に不正確な値になるか</span></h3>



<p class="wp-block-paragraph">&#8220;MD&#8221; は月末日をまたぐ特定の日付で、負の値や不正確な値を返します。Microsoftも公式に「MDの使用は推奨しない」と警告しています。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>開始日</th><th>終了日</th><th>&#8220;MD&#8221; の結果</th><th>正しい値</th></tr></thead><tbody><tr><td>2016/1/31</td><td>2016/3/1</td><td><strong>-2</strong></td><td>1</td></tr><tr><td>2016/1/30</td><td>2016/3/1</td><td><strong>-1</strong></td><td>1</td></tr><tr><td>2016/3/31</td><td>2016/5/1</td><td><strong>0</strong></td><td>1</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">1月31日から3月1日は1日の差のはずなのに、結果は「-2」です。このように月末付近の日付で計算が狂います。</p>



<p class="wp-block-paragraph">なお、&#8221;Y&#8221; &#8220;M&#8221; &#8220;YM&#8221; は基本的に安全です。ただし、うるう年が絡む特殊なケース（例: 2020/2/29 → 2021/2/28）では、&#8221;MD&#8221; 以外の単位でも予期しない値を返すことがあります。通常の日付ペアでは心配いりませんが、2月29日を含む計算は結果を確認しておくと安心です。</p>



<h3 class="wp-block-heading"><span id="toc18">代替式で正確に端数日数を求める方法</span></h3>



<p class="wp-block-paragraph">&#8220;MD&#8221; の代わりに、次の式を使えば正確な端数日数が求められます。</p>



<pre class="wp-block-code"><code>=B1 - EDATE(A1, DATEDIF(A1, B1, &quot;M&quot;))</code></pre>



<p class="wp-block-paragraph">仕組みはこうです。</p>



<ol class="wp-block-list"><li><code>DATEDIF(A1, B1, "M")</code> で完了した月数を求める</li><li><a href="https://mashukabu.com/excel-function-howto-use-edate/">EDATE関数</a>で開始日をその月数分だけ進める</li><li>終了日との差が正確な端数日数になる</li></ol>



<p class="wp-block-paragraph">先ほどの問題例（2016/1/31 → 2016/3/1）で試すと、結果は正しく <strong>1</strong> になります。</p>



<p class="wp-block-paragraph">&#8220;MD&#8221; を使っている数式があれば、この代替式に置き換えることをおすすめします。</p>



<h2 class="wp-block-heading"><span id="toc19">DATEDIF / DAYS / YEARFRAC 三者比較</span></h2>



<h3 class="wp-block-heading"><span id="toc20">3関数の特徴と適切な使い分け</span></h3>



<p class="wp-block-paragraph">日付の差を求める関数は3つあります。それぞれ得意分野が違います。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>DATEDIF</th><th>DAYS</th><th>YEARFRAC</th></tr></thead><tbody><tr><td>返す値</td><td>年/月/日（6単位）</td><td>日数のみ</td><td>小数の年数</td></tr><tr><td>引数の順番</td><td>開始日, 終了日</td><td>終了日, 開始日</td><td>開始日, 終了日, 基準</td></tr><tr><td>公式関数か</td><td>いいえ（非公開）</td><td>はい（2013以降）</td><td>はい</td></tr><tr><td>年齢計算</td><td>最適（整数で正確）</td><td>不向き</td><td>うるう年で誤差あり</td></tr><tr><td>主な用途</td><td>年齢・勤続年数</td><td>日数差・残日数</td><td>利子・利回り計算</td></tr><tr><td>既知のバグ</td><td>MD単位</td><td>なし</td><td>なし</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>は日数を返す公式関数です。YEARFRAC関数は小数の年数を返し、財務計算で使われます。</p>



<h3 class="wp-block-heading"><span id="toc21">判断フロー｜何を計算したいかで関数を選ぶ</span></h3>



<ul class="wp-block-list"><li><strong>年齢や勤続年数を「○年○ヶ月」で出したい</strong> → DATEDIF関数</li><li><strong>日数の差だけをシンプルに求めたい</strong> → <a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>または引き算</li><li><strong>マイナスの値がほしい（期限超過の判定）</strong> → <a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a></li><li><strong>利率や利回りの年数計算</strong> → YEARFRAC関数</li><li><strong>Excel 2010以前で日数を計算したい</strong> → DATEDIF関数または引き算</li></ul>



<p class="wp-block-paragraph">日数だけなら<a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>が公式関数で安心です。年数や月数が必要になったらDATEDIF関数の出番、と覚えておきましょう。</p>



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



<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>#NUM!</td><td>開始日が終了日より後</td><td>日付の順番を確認する。古いほうが第1引数</td></tr><tr><td>#NUM!</td><td>単位の文字列が無効</td><td>&#8220;Y&#8221; &#8220;M&#8221; &#8220;D&#8221; &#8220;YM&#8221; &#8220;MD&#8221; &#8220;YD&#8221; のいずれかを指定する</td></tr><tr><td>#VALUE!</td><td>日付として認識できない値</td><td>セルが正しい日付データか確認する。文字列なら<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>を使う</td></tr><tr><td>#NAME?</td><td>関数名のスペルミス</td><td>&#8220;DATEDIFF&#8221;（Fが2つ）は間違い。正しくは &#8220;DATEDIF&#8221;</td></tr><tr><td>入力補完に出ない</td><td>非公開関数のため</td><td>正常です。「=DATEDIF(」と手入力してください</td></tr><tr><td>結果が0になる</td><td>期間が単位に満たない</td><td>&#8220;Y&#8221; は満1年に達しないと0を返します。&#8221;M&#8221; や &#8220;D&#8221; で確認してみてください</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">DATEDIF関数は、2つの日付の期間を年数・月数・日数で求められる関数です。</p>



<ul class="wp-block-list"><li><strong>=DATEDIF(開始日, 終了日, 単位)</strong> で期間を計算する</li><li>6つの単位で <strong>年数(&#8220;Y&#8221;)・月数(&#8220;M&#8221;)・日数(&#8220;D&#8221;)</strong> を使い分けられる</li><li><strong>&#8220;YM&#8221;</strong> で端数の月数、<strong>&#8220;MD&#8221;</strong> で端数の日数を取り出せる</li><li><a href="https://mashukabu.com/excel-function-howto-use-today/">TODAY関数</a>と組み合わせれば <strong>年齢や勤続年数が毎日自動更新</strong> される</li><li><strong>&#8220;MD&#8221; には既知のバグ</strong> がある。代替式 <code>=終了日-EDATE(開始日,DATEDIF(開始日,終了日,"M"))</code> を使おう</li><li>非公開関数だが <strong>全バージョンで動作</strong> し、廃止リスクは極めて低い</li><li>日数だけなら<a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数</a>、年数・月数ならDATEDIF関数</li></ul>



<p class="wp-block-paragraph">年齢計算や勤続年数の管理に、ぜひDATEDIF関数を活用してみてください。日付計算の関数を網羅的に知りたい方は、<a href="https://mashukabu.com/excel-date-calculation-guide/">Excelの日付計算を完全攻略</a>もあわせてチェックしてみてください。</p>



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-days/">DAYS関数の使い方</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-edate/">EDATE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-date-calculation-guide/">Excelの日付計算を完全攻略</a></li></ul>



<h3 class="wp-block-heading"><span id="toc25">関数一覧</span></h3>



<p class="wp-block-paragraph">どちらの関数一覧からでも各関数の解説記事へアクセスできます。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-alphabetical-order/">アルファベット順 Excel関数一覧</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">機能別 Excel関数一覧</a></li><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>



<h3 class="wp-block-heading"><span id="toc26">エラー値についてのまとめ記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-error-value-list/">セルに表示されるエラーの種類と原因、対処方法</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-datedif/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
