<?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>利回り計算 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/%e5%88%a9%e5%9b%9e%e3%82%8a%e8%a8%88%e7%ae%97/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 15:15:40 +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>利回り計算 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【Excel】ODDFYIELD関数の使い方｜初回利払いが半端な債券の利回りを計算する</title>
		<link>https://mashukabu.com/excel-oddfyield/</link>
					<comments>https://mashukabu.com/excel-oddfyield/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 09 May 2026 23:16:55 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[ODDFYIELD]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[利回り計算]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6738</guid>

					<description><![CDATA[ExcelのODDFYIELD関数の使い方を解説します。発行日から最初の利払い日までが端数期間（不定期）になる社債・国債の年間利回りを計算する関数で、9つの引数の意味、日付順制約、frequencyやbasisの選び方、Microsoft公式サンプルを使った計算例、よくあるエラーと対処、YIELD・ODDFPRICE・YIELDMATとの使い分けまでまとめて整理しました。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「発行日が10月15日なのに最初の利払い日は翌年3月1日」――こんな少し変則的な社債や国債の利回りを計算したいとき、通常のYIELD関数では正しい値が出ません。そこで使うのが <strong>ODDFYIELD関数</strong> です。</p>



<p class="wp-block-paragraph">ただ、ODDFYIELD関数は引数がなんと9つもあります。日付の指定順や frequency、basis の選び方で迷う方が多いのが実情です。引数の順序を一つでも間違えると、すぐに #NUM! エラーが返ってきます。</p>



<p class="wp-block-paragraph">この記事では、ODDFYIELD関数の構文から、初回端数期間がある債券の意味、Microsoft公式サンプルを使った計算例、日付順制約や basis の選び方、よくあるエラーと関連関数との使い分けまでをまとめて整理します。</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">ExcelのODDFYIELD関数とは？</a></li><li><a href="#toc2" tabindex="0">ODDFYIELD関数の書き方（構文と引数）</a></li><li><a href="#toc3" tabindex="0">frequency引数（利払い頻度）の選び方</a></li><li><a href="#toc4" tabindex="0">basis引数（日数計算方法）の選び方</a></li><li><a href="#toc5" tabindex="0">実用例：Microsoft公式サンプルで利回りを計算する</a></li><li><a href="#toc6" tabindex="0">日付順制約（最重要ポイント）</a></li><li><a href="#toc7" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc8" tabindex="0">ODDFYIELD関数と関連関数の使い分け</a><ol><li><a href="#toc9" tabindex="0">使い分けの判断フロー</a></li></ol></li><li><a href="#toc10" tabindex="0">関連記事</a></li><li><a href="#toc11" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ExcelのODDFYIELD関数（読み方：オッド・エフ・イールド）は、<strong>初回利払い期間が不定期（端数期間）になっている証券の年間利回りを返す財務関数</strong>です。関数名は「<strong>Odd First Yield</strong>（最初の利払いが不規則な利回り）」の略で、文字通り「最初だけ半端な債券」の利回り計算に特化しています。</p>



<p class="wp-block-paragraph">通常の固定利付債では、発行日から半年なり1年なりの一定間隔で利息が支払われます。ところが、たとえば「10月15日発行で、最初の利払いは翌年3月1日」のような債券だと、発行日から最初の利払い日までが定期的な周期になりません。この最初の半端な期間を <strong>初回端数期間（Odd First Period）</strong> と呼びます。</p>



<p class="wp-block-paragraph">このような債券の利回りを定期利払いの YIELD関数で計算してしまうと、初回の半端な期間が考慮されず、本来の年間利回りからズレた値が出てしまいます。ODDFYIELD関数は、初回端数期間を正しく扱った上で年間利回り（％換算前の小数）を返してくれる関数です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>ODDFYIELD関数は Excel 2007 以降で利用できます。Microsoft 365、Excel for Mac、Google スプレッドシートでも同名で同じ動作をします。日本の証券実務では「不定期利払い債」と呼ばれることもあり、特に新発の社債や仕組債で見られます。</p></blockquote>



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



<p class="wp-block-paragraph">ODDFYIELD関数の構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=ODDFYIELD(settlement, maturity, issue, first_coupon, rate, pr, redemption, frequency, [basis])</code></pre>



<p class="wp-block-paragraph">引数は9つ（うち basis は省略可）と多めですが、それぞれの意味を押さえれば難しくありません。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須</th><th>説明</th></tr></thead><tbody><tr><td>settlement</td><td>必須</td><td>受渡日（買い手に証券が渡される日。発行日より後）</td></tr><tr><td>maturity</td><td>必須</td><td>満期日（最後に元本が償還される日）</td></tr><tr><td>issue</td><td>必須</td><td>発行日</td></tr><tr><td>first_coupon</td><td>必須</td><td>最初の利払い日</td></tr><tr><td>rate</td><td>必須</td><td>年間クーポンレート（小数。5%なら 0.05）</td></tr><tr><td>pr</td><td>必須</td><td>額面100あたりの債券価格</td></tr><tr><td>redemption</td><td>必須</td><td>額面100あたりの償還価格（通常は100）</td></tr><tr><td>frequency</td><td>必須</td><td>年間利払い回数（<strong>1</strong>＝年1回、<strong>2</strong>＝半年払い、<strong>4</strong>＝四半期払い）</td></tr><tr><td>basis</td><td>省略可</td><td>日数計算方法（0〜4。省略時は 0＝US 30/360）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">戻り値は年間利回りを小数で返します。たとえば 0.0772 が返ってきたら、年間利回り 7.72% を意味します。セルの表示形式を「パーセンテージ」にしておくと読みやすいです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>引数が多いので、セルにあらかじめラベル付きで値を並べて、関数からはセル参照で渡すのがおすすめです。後で条件を変えてシミュレーションする際にも便利で、引数の取り違えも防げます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc3">frequency引数（利払い頻度）の選び方</span></h2>



<p class="wp-block-paragraph">frequency は年間に何回利息が支払われるかを指定します。指定できる値は3つだけです。</p>



<figure class="wp-block-table"><table><thead><tr><th>frequency</th><th>利払い頻度</th><th>代表的な債券</th></tr></thead><tbody><tr><td>1</td><td>年1回</td><td>欧州系社債、ユーロ債の一部</td></tr><tr><td>2</td><td>半年に1回（年2回）</td><td>米国国債、日本国債、多くの社債</td></tr><tr><td>4</td><td>四半期に1回（年4回）</td><td>一部の仕組債、変動利付債</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日本や米国の標準的な利付債は半年払い（frequency=2）が圧倒的多数です。迷ったらまず2を入れて、目論見書や条件決定通知で利払い回数を確認しましょう。1, 2, 4 以外を指定すると <strong>#NUM! エラー</strong> が返ります。</p>



<h2 class="wp-block-heading"><span id="toc4">basis引数（日数計算方法）の選び方</span></h2>



<p class="wp-block-paragraph">basis は、利息計算で1年や1か月をどう数えるかを指定する引数です。証券の種類によって慣習が異なるので、目論見書の「日数計算方式」欄を確認するのが確実です。</p>



<figure class="wp-block-table"><table><thead><tr><th>basis</th><th>日数計算方法</th><th>主な用途</th></tr></thead><tbody><tr><td>0（または省略）</td><td>30/360（米国式）</td><td>米国の社債、地方債</td></tr><tr><td>1</td><td>Actual/Actual（実日数/実日数）</td><td>米国国債、多くの政府債</td></tr><tr><td>2</td><td>Actual/360</td><td>短期金融商品、CD</td></tr><tr><td>3</td><td>Actual/365</td><td>一部の英国債、円建て短期商品</td></tr><tr><td>4</td><td>30/360（欧州式）</td><td>欧州の社債（ユーロ債）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">basis に5以上や負の値を指定すると <strong>#NUM! エラー</strong> になります。実務では「とりあえず 0 で省略」というケースが多いですが、米国国債のように Actual/Actual（basis=1）を使うべき商品もあるので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc5">実用例：Microsoft公式サンプルで利回りを計算する</span></h2>



<p class="wp-block-paragraph">Microsoft 公式ドキュメントの ODDFYIELD関数のサンプル値を使って、実際に計算してみます。次のような社債を想定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>値</th></tr></thead><tbody><tr><td>受渡日（settlement）</td><td>2008/11/11</td></tr><tr><td>満期日（maturity）</td><td>2021/3/1</td></tr><tr><td>発行日（issue）</td><td>2008/10/15</td></tr><tr><td>最初の利払い日（first_coupon）</td><td>2009/3/1</td></tr><tr><td>年間クーポンレート（rate）</td><td>5.75%（0.0575）</td></tr><tr><td>債券価格（pr）</td><td>84.50</td></tr><tr><td>償還価格（redemption）</td><td>100</td></tr><tr><td>利払い頻度（frequency）</td><td>2（半年払い）</td></tr><tr><td>日数計算（basis）</td><td>0（US 30/360）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">シートのセル B2:B10 に上から順にこれらの値を入れたとします。日付はそのまま日付として、利率は 0.0575 として入力します。利回りを求める数式は次のようになります。</p>



<pre class="wp-block-code"><code>=ODDFYIELD(B2, B3, B4, B5, B6, B7, B8, B9, B10)</code></pre>



<p class="wp-block-paragraph">このとき、戻り値はおよそ <strong>0.0772</strong>、つまり <strong>年間利回り 7.72%</strong> となります。クーポンレートは 5.75% ですが、額面100の債券を 84.50 の割引価格で買っているため、利回りはクーポンレートよりも高くなる、というイメージです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>発行日（2008/10/15）から最初の利払い日（2009/3/1）までが約4.5か月で、半年払いの「半年」と一致しないため、これは初回端数期間ありの債券です。通常のYIELD関数で計算すると、この4.5か月分が考慮されず、利回りがやや低めに出てしまいます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc6">日付順制約（最重要ポイント）</span></h2>



<p class="wp-block-paragraph">ODDFYIELD関数で最も間違いやすいのが日付の順序です。次の不等式を <strong>必ず</strong> 満たす必要があります。</p>



<pre class="wp-block-code"><code>maturity &gt; first_coupon &gt; settlement &gt; issue</code></pre>



<p class="wp-block-paragraph">つまり「発行日 → 受渡日 → 最初の利払い日 → 満期日」の順に時系列で並んでいないとなりません。一つでも順序が崩れると即 #NUM! エラーになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>日付</th><th>意味</th><th>順序</th></tr></thead><tbody><tr><td>issue（発行日）</td><td>債券が発行された日</td><td>一番古い</td></tr><tr><td>settlement（受渡日）</td><td>投資家に証券が引き渡された日</td><td>2番目</td></tr><tr><td>first_coupon（最初の利払い日）</td><td>最初に利息が支払われた日</td><td>3番目</td></tr><tr><td>maturity（満期日）</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>WARNING</strong></p><p>日付順違反は #NUM! エラーになるので、ぱっと見ではどの引数が悪いのかわからない場合があります。引数が多いODDFYIELDでは、各日付セルに「●●日（○年○月○日）」とコメントを付けておくと、後から見直したときに混乱しません。</p></blockquote>



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



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#NUM!</code></td><td>日付順違反（maturity > first_coupon > settlement > issue を満たさない）</td><td>4つの日付の前後関係を見直す</td></tr><tr><td><code>#NUM!</code></td><td>rate < 0、pr ≤ 0、redemption ≤ 0</td><td>利率と価格は正の値を指定</td></tr><tr><td><code>#NUM!</code></td><td>frequency が 1, 2, 4 以外</td><td>1（年1回）、2（半年）、4（四半期）のいずれかを指定</td></tr><tr><td><code>#NUM!</code></td><td>basis が 0 〜 4 の範囲外</td><td>0〜4 の整数（または省略）を指定</td></tr><tr><td><code>#VALUE!</code></td><td>引数に日付として認識できない文字列が入っている</td><td>DATE関数で日付を作るか、セルの書式を「日付」にする</td></tr><tr><td><code>#VALUE!</code></td><td>引数に数値として認識できない値が入っている</td><td>数値型かどうかを確認</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に多いのが、目論見書の表記をそのままコピーして文字列のまま渡してしまうケースです。日付は <code>=DATE(2008,11,11)</code> のように DATE関数で作るか、セルの書式設定で「日付」型にしておくのが確実です。</p>



<h2 class="wp-block-heading"><span id="toc8">ODDFYIELD関数と関連関数の使い分け</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>ODDFYIELD</td><td>初回端数期間あり・定期利払い証券</td><td>年間利回り</td></tr><tr><td>ODDFPRICE</td><td>初回端数期間あり・定期利払い証券</td><td>額面100あたりの価格</td></tr><tr><td>YIELD</td><td>通常の定期利払い証券</td><td>年間利回り</td></tr><tr><td>PRICE</td><td>通常の定期利払い証券</td><td>額面100あたりの価格</td></tr><tr><td>YIELDMAT</td><td>満期時に利息が一括支払われる証券</td><td>年間利回り</td></tr><tr><td>PRICEMAT</td><td>満期時に利息が一括支払われる証券</td><td>額面100あたりの価格</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc9">使い分けの判断フロー</span></h3>



<ol class="wp-block-list"><li>利息は <strong>満期に一括</strong> で支払われるか？ → はい：YIELDMAT / PRICEMAT</li><li><strong>初回利払い期間が半端</strong> か？ → はい：ODDFYIELD / ODDFPRICE</li><li>それ以外（普通の定期利払い） → YIELD / PRICE</li></ol>



<p class="wp-block-paragraph">ODDFYIELDで価格から利回りを計算したら、逆に利回りから価格を求めるのは ODDFPRICE関数です。価格と利回りはちょうど裏返しの関係になっていて、引数の構成もほぼ同じです。</p>



<p class="wp-block-paragraph">なお、最終利払いだけが端数期間になる債券には ODDLYIELD関数（Odd Last Yield）を使います。発行直後だけが半端なら ODDFYIELD、満期直前だけが半端なら ODDLYIELD、と覚えておくと整理しやすいです。</p>



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



<p class="wp-block-paragraph">債券の価格・利回り計算をさらに深めたい方は、次の記事もあわせてご覧ください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-yield-function/">ExcelのYIELD関数の使い方｜定期利払い債券の利回りを1関数で計算</a>：初回端数期間のない通常の定期利払い債の利回りを求める基本の関数です。</li><li><a href="https://mashukabu.com/excel-price-function/">ExcelのPRICE関数の使い方｜国債・社債の理論価格を1関数で算出</a>：利回りから債券の理論価格を逆算する関数で、ODDFYIELDとペアになる考え方を整理できます。</li><li><a href="https://mashukabu.com/excel-yieldmat/">【Excel】YIELDMAT関数の使い方｜満期一括払い債券の利回りを計算する</a>：利息が満期に一括で支払われる債券の利回りを計算する関数です。</li></ul>



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



<p class="wp-block-paragraph">ExcelのODDFYIELD関数は、初回利払い期間が半端な債券の年間利回りを正確に計算できる関数です。要点を整理すると次のとおりです。</p>



<ul class="wp-block-list"><li><strong>構文</strong>: <code>=ODDFYIELD(settlement, maturity, issue, first_coupon, rate, pr, redemption, frequency, [basis])</code></li><li><strong>対象</strong>: 初回利払い期間が定期周期と異なる「初回端数期間あり」の債券</li><li><strong>日付順制約</strong>: <code>maturity > first_coupon > settlement > issue</code> を満たすこと</li><li><strong>frequency</strong>: 1（年1回）/ 2（半年）/ 4（四半期）から選択</li><li><strong>basis</strong>: 0〜4。迷ったら 0（省略）でOK、米国国債なら 1（Actual/Actual）</li></ul>



<p class="wp-block-paragraph">引数が9個と多いので、セルに値を並べてラベルを付けてから関数で参照する方法をおすすめします。日付順違反による #NUM! エラーが最も多いトラブルなので、計算前に必ず4つの日付の前後関係を確認しましょう。</p>



<p class="wp-block-paragraph">普通の定期利払い債なら YIELD関数、満期一括払いなら YIELDMAT関数、というように、債券のタイプに応じて関数を選び分けるのが基本です。価格から利回りへ変換するのが ODDFYIELD、利回りから価格へ逆算するのが ODDFPRICE、というペア関係も押さえておくと、債券分析がぐっとスムーズになります。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-oddfyield/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【Excel】YIELDMAT関数の使い方｜満期一括払い債券の利回りを計算する</title>
		<link>https://mashukabu.com/excel-yieldmat/</link>
					<comments>https://mashukabu.com/excel-yieldmat/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 09 May 2026 23:16:23 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[YIELDMAT]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[利回り計算]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6734</guid>

					<description><![CDATA[ExcelのYIELDMAT関数の使い方を解説します。満期時に利息がまとめて支払われる証券（満期利払い証券）の年間利回りを計算する関数で、6つの引数の意味、日数計算basisの選び方、Microsoft公式サンプルでの計算例、よくあるエラーと対処、PRICEMAT・YIELD・YIELDDISCとの使い分けまで実例で整理しました。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「満期時に元本と利息をまとめて受け取るタイプの債券、利回りはどう計算する？」と聞かれて、いつもの YIELD関数で計算しようとして「あれ、利払い回数の引数が要らない？」と気付くことはありませんか。そんなときに使うのが <strong>YIELDMAT関数</strong> です。</p>



<p class="wp-block-paragraph">YIELDMAT は、定期的なクーポン支払いがなく、満期時に利息と元本がまとめて支払われる証券（満期利払い証券）専用の利回り計算関数です。短期割引国債やCD（譲渡性預金）に近い性質の商品で活躍します。</p>



<p class="wp-block-paragraph">この記事では、YIELDMAT関数の構文から、満期利払い証券の仕組み、Microsoft公式サンプルを使った計算例、basis（日数計算）の選び方、PRICEMAT との関係、よくあるエラーと対処までをまとめて整理します。</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">ExcelのYIELDMAT関数とは？</a></li><li><a href="#toc2" tabindex="0">YIELDMAT関数の書き方（構文と引数）</a></li><li><a href="#toc3" tabindex="0">basis引数（日数計算方法）の選び方</a></li><li><a href="#toc4" tabindex="0">実用例：Microsoft公式サンプルで利回りを計算する</a></li><li><a href="#toc5" tabindex="0">日付順制約と注意点</a></li><li><a href="#toc6" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc7" tabindex="0">YIELDMAT関数と関連関数の使い分け</a><ol><li><a href="#toc8" tabindex="0">使い分けの判断フロー</a></li></ol></li><li><a href="#toc9" tabindex="0">PRICEMATとの関係（価格と利回りの逆関数ペア）</a></li><li><a href="#toc10" tabindex="0">関連記事</a></li><li><a href="#toc11" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ExcelのYIELDMAT関数（読み方：イールド・マット）は、<strong>満期時に利息が支払われる証券の年間利回りを返す財務関数</strong>です。関数名は「<strong>Yield at Maturity</strong>（満期時利払い証券の利回り）」の略で、「満期にまとめて利息が払われるタイプの債券」専用に設計されています。</p>



<p class="wp-block-paragraph">通常の固定利付債は、半年なり1年なりの周期でクーポン（利息）が支払われ、満期時には元本のみが償還されます。一方で、満期利払い証券では途中の利払いがなく、満期日に <strong>元本＋経過利息の合計</strong> をまとめて受け取る形になります。短期国債やCD（譲渡性預金）、一部の短期社債などがこのタイプです。</p>



<p class="wp-block-paragraph">このような証券では「年に何回利息が支払われるか」という frequency 引数が不要になるため、YIELD関数（定期利払い債用）よりも引数が少なくシンプルです。代わりに「発行日から満期までの全期間でいくらの利息が付くか」を rate と日数から計算する形になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>YIELDMAT関数は Excel 2003 以降で利用できます。Microsoft 365、Excel for Mac、Google スプレッドシート、さらに Power BI の DAX 言語でも同名で使えます。日本では「満期一括利払い債」「アキュムレーティング債」と呼ばれることもあります。</p></blockquote>



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



<p class="wp-block-paragraph">YIELDMAT関数の構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=YIELDMAT(settlement, maturity, issue, rate, pr, [basis])</code></pre>



<p class="wp-block-paragraph">引数は6つ（うち basis は省略可）と、財務関数のなかでは比較的シンプルな部類です。</p>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須</th><th>説明</th></tr></thead><tbody><tr><td>settlement</td><td>必須</td><td>受渡日（買い手に証券が渡される日。発行日より後）</td></tr><tr><td>maturity</td><td>必須</td><td>満期日（元本と利息がまとめて支払われる日）</td></tr><tr><td>issue</td><td>必須</td><td>発行日</td></tr><tr><td>rate</td><td>必須</td><td>発行時点の年利率（小数。6.25%なら 0.0625）</td></tr><tr><td>pr</td><td>必須</td><td>額面100あたりの債券価格</td></tr><tr><td>basis</td><td>省略可</td><td>日数計算方法（0〜4。省略時は 0＝US 30/360）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">戻り値は年間利回りを小数で返します。0.061 が返れば、年間利回りは 6.10% です。表示形式を「パーセンテージ（小数2桁）」に設定すると見やすくなります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>YIELDMATでは frequency 引数がない代わりに、発行日（issue）が利息計算の基準日になります。発行日と受渡日が大きく離れている場合、すでに経過利息が乗っている価格で売買されているケースが多いので、価格（pr）の入力時にも注意しましょう。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc3">basis引数（日数計算方法）の選び方</span></h2>



<p class="wp-block-paragraph">basis は1年・1か月の日数の数え方を指定します。証券の発行体や市場の慣行に合わせて選びます。</p>



<figure class="wp-block-table"><table><thead><tr><th>basis</th><th>日数計算方法</th><th>主な用途</th></tr></thead><tbody><tr><td>0（または省略）</td><td>30/360（米国式）</td><td>米国の社債、地方債</td></tr><tr><td>1</td><td>Actual/Actual（実日数/実日数）</td><td>米国国債、政府債</td></tr><tr><td>2</td><td>Actual/360</td><td>CD、短期金融商品、米ドル建て短期商品</td></tr><tr><td>3</td><td>Actual/365</td><td>円建て短期商品、英国短期債</td></tr><tr><td>4</td><td>30/360（欧州式）</td><td>欧州ユーロ債</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">満期一括払いの短期商品では、basis=2（Actual/360）や basis=3（Actual/365）が使われることが多いです。目論見書や約定書に「日数計算方式」が必ず記載されているので、そこを確認してから入力しましょう。範囲外の値（5以上や負数）を指定すると <strong>#NUM! エラー</strong> になります。</p>



<h2 class="wp-block-heading"><span id="toc4">実用例：Microsoft公式サンプルで利回りを計算する</span></h2>



<p class="wp-block-paragraph">Microsoft 公式ドキュメントの YIELDMAT 関数サンプルを使って、実際に計算してみます。次のような短期社債を想定します。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>値</th></tr></thead><tbody><tr><td>受渡日（settlement）</td><td>2008/3/15</td></tr><tr><td>満期日（maturity）</td><td>2008/11/3</td></tr><tr><td>発行日（issue）</td><td>2007/11/8</td></tr><tr><td>年利率（rate）</td><td>6.25%（0.0625）</td></tr><tr><td>債券価格（pr）</td><td>100.0123</td></tr><tr><td>日数計算（basis）</td><td>0（US 30/360）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">シートのセル B2:B7 に上から順にこれらの値を入れたとします。利回りを求める数式は次のようになります。</p>



<pre class="wp-block-code"><code>=YIELDMAT(B2, B3, B4, B5, B6, B7)</code></pre>



<p class="wp-block-paragraph">このとき、戻り値はおよそ <strong>0.0610</strong>、つまり <strong>年間利回り 6.10%</strong> が返ってきます。</p>



<p class="wp-block-paragraph">クーポンレート（rate）は 6.25% ですが、債券価格が額面100よりほんの少し高い 100.0123 になっていて、すでに経過利息分が価格に乗っている状態です。そのぶん年間利回りは表面金利よりやや低めの 6.10% になる、というイメージです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>発行日（2007/11/8）から満期日（2008/11/3）までほぼ1年弱の短期商品で、その途中で受渡し（2008/3/15）が行われたケースを想定したサンプルです。実務では、CDの中途売買や満期一括払いの短期社債を扱うときにこの形になります。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc5">日付順制約と注意点</span></h2>



<p class="wp-block-paragraph">YIELDMATでも、引数の日付には順序の制約があります。次の関係を満たす必要があります。</p>



<pre class="wp-block-code"><code>maturity &gt; settlement &gt; issue</code></pre>



<p class="wp-block-paragraph">つまり「発行日 → 受渡日 → 満期日」の順に時系列で並んでいることが必要です。一つでも順序が崩れると即 #NUM! エラーになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>日付</th><th>意味</th><th>順序</th></tr></thead><tbody><tr><td>issue（発行日）</td><td>証券が発行された日</td><td>一番古い</td></tr><tr><td>settlement（受渡日）</td><td>投資家に証券が引き渡された日</td><td>2番目</td></tr><tr><td>maturity（満期日）</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>WARNING</strong></p><p>短期商品では発行日と満期日が同じ年内に収まることが多く、日付の入力ミスに気付きにくいことがあります。3つの日付セルに「いつの何日か」をコメントで残しておくと、後から見直したときに混乱を防げます。</p></blockquote>



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



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#NUM!</code></td><td>日付順違反（maturity > settlement > issue を満たさない）</td><td>3つの日付の前後関係を見直す</td></tr><tr><td><code>#NUM!</code></td><td>rate < 0、pr ≤ 0</td><td>利率と価格は正の値を指定</td></tr><tr><td><code>#NUM!</code></td><td>basis が 0 〜 4 の範囲外</td><td>0〜4 の整数（または省略）を指定</td></tr><tr><td><code>#VALUE!</code></td><td>引数の日付が文字列のまま</td><td>DATE関数で日付を作るか、セルの書式を「日付」にする</td></tr><tr><td><code>#VALUE!</code></td><td>rate や pr が文字列・空欄</td><td>数値を入力、または数値型のセルを参照</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に多いのが、日付を「2008/3/15」のような <strong>文字列</strong> のまま渡してしまうケースです。セル書式が「文字列」になっていると見た目が日付でも内部的には文字列扱いとなり、#VALUE! エラーが出ます。<code>=DATE(2008,3,15)</code> の形で日付値を作るか、書式設定で「日付」に変えてから入力するのが確実です。</p>



<h2 class="wp-block-heading"><span id="toc7">YIELDMAT関数と関連関数の使い分け</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>YIELDMAT</td><td>満期時に利息一括払いの証券</td><td>年間利回り</td></tr><tr><td>PRICEMAT</td><td>満期時に利息一括払いの証券</td><td>額面100あたりの価格</td></tr><tr><td>YIELD</td><td>通常の定期利払い債</td><td>年間利回り</td></tr><tr><td>PRICE</td><td>通常の定期利払い債</td><td>額面100あたりの価格</td></tr><tr><td>YIELDDISC</td><td>利息のない割引証券（ゼロクーポン）</td><td>年間利回り</td></tr><tr><td>PRICEDISC</td><td>利息のない割引証券（ゼロクーポン）</td><td>額面100あたりの価格</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc8">使い分けの判断フロー</span></h3>



<ol class="wp-block-list"><li>利息はそもそも付くか？</li></ol>



<ul class="wp-block-list"><li>付かない（ゼロクーポン・割引債） → YIELDDISC / PRICEDISC</li></ul>



<ol class="wp-block-list"><li>利息は <strong>満期に一括</strong> で付くか？</li></ol>



<ul class="wp-block-list"><li>はい → YIELDMAT / PRICEMAT</li></ul>



<ol class="wp-block-list"><li>それ以外（定期的にクーポンが付く） → YIELD / PRICE</li></ol>



<p class="wp-block-paragraph">「満期に一括で付く」のがYIELDMAT、「そもそも利息が付かず差額で儲ける」のがYIELDDISC、と区別しておきましょう。短期国債（T-Bill）は割引で発行されるため YIELDDISC の対象、CDのように満期に元本と利息をまとめて受け取る商品は YIELDMAT の対象、というイメージです。</p>



<h2 class="wp-block-heading"><span id="toc9">PRICEMATとの関係（価格と利回りの逆関数ペア）</span></h2>



<p class="wp-block-paragraph">YIELDMAT のちょうど逆の働きをするのが <strong>PRICEMAT関数</strong> です。価格を入力して利回りを返すのが YIELDMAT、利回りを入力して価格を返すのが PRICEMAT、という関係です。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力</th><th>出力</th><th>使う関数</th></tr></thead><tbody><tr><td>債券価格（pr）</td><td>年間利回り</td><td>YIELDMAT</td></tr><tr><td>年間利回り（yld）</td><td>額面100あたり価格</td><td>PRICEMAT</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">PRICEMAT の構文も非常に似ています。</p>



<pre class="wp-block-code"><code>=PRICEMAT(settlement, maturity, issue, rate, yld, [basis])</code></pre>



<p class="wp-block-paragraph">YIELDMAT の戻り値（利回り）を PRICEMAT の yld に渡せば、ほぼ元の価格に戻ります（丸め誤差の範囲で）。逆方向の検算をしたいときに便利な使い方です。</p>



<p class="wp-block-paragraph">たとえば、上のサンプルで YIELDMAT が 6.10% を返したとします。次の式で価格を逆算すると、ほぼ 100.0123 に近い値が返るはずです。</p>



<pre class="wp-block-code"><code>=PRICEMAT(B2, B3, B4, B5, 0.0610, B7)</code></pre>



<p class="wp-block-paragraph">実務では、市場利回りから理論価格を出して入札価格を決める際に PRICEMAT、買付価格から実効利回りを出して投資判断する際に YIELDMAT、という使い分けになります。</p>



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



<p class="wp-block-paragraph">債券の利回り・価格を扱う関数は、証券のタイプごとに使い分けます。あわせて次の記事も参考にしてください。</p>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-yield-function/">ExcelのYIELD関数の使い方｜定期利払い債券の利回りを1関数で計算</a></li><li><a href="https://mashukabu.com/excel-yielddisc-function/">ExcelのYIELDDISC関数の使い方｜割引証券（TB・CP）の利回りを計算する</a></li><li><a href="https://mashukabu.com/excel-price-function/">ExcelのPRICE関数の使い方｜国債・社債の理論価格を1関数で算出</a></li><li><a href="https://mashukabu.com/excel-oddfyield/">【Excel】ODDFYIELD関数の使い方｜初回利払いが半端な債券の利回りを計算する</a></li></ul>



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



<p class="wp-block-paragraph">ExcelのYIELDMAT関数は、満期時に利息がまとめて支払われる証券の年間利回りを計算できる関数です。要点を整理すると次のとおりです。</p>



<ul class="wp-block-list"><li><strong>構文</strong>: <code>=YIELDMAT(settlement, maturity, issue, rate, pr, [basis])</code></li><li><strong>対象</strong>: 満期時に元本と利息を一括支払いする証券（CDや満期一括払い社債など）</li><li><strong>frequency引数なし</strong>: 通常のYIELD関数と違い、利払い回数を指定しない</li><li><strong>日付順制約</strong>: <code>maturity > settlement > issue</code> を満たすこと</li><li><strong>basis</strong>: 0〜4。短期商品では 2（Actual/360）や 3（Actual/365）も多用</li></ul>



<p class="wp-block-paragraph">通常の定期クーポン債なら YIELD関数、利息のない割引債なら YIELDDISC関数、満期一括払いなら YIELDMAT関数、と用途別に関数を使い分けましょう。日付順違反と書式違いによる #VALUE! / #NUM! エラーが最も多いつまずきポイントなので、入力前に必ず3つの日付の順序とセル書式を確認しておくと安全です。</p>



<p class="wp-block-paragraph">価格から利回りを求めるのが YIELDMAT、利回りから価格を求めるのが PRICEMAT、というペア関係も押さえておくと、債券の投資判断や入札価格設定の場面で柔軟に分析を進められるようになります。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-yieldmat/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのYIELDMAT関数の使い方｜満期利払い証券の利回りを計算する</title>
		<link>https://mashukabu.com/excel-yieldmat-function/</link>
					<comments>https://mashukabu.com/excel-yieldmat-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 07 May 2026 12:42:58 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[YIELDMAT関数]]></category>
		<category><![CDATA[利回り計算]]></category>
		<category><![CDATA[満期利払い証券]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6570</guid>

					<description><![CDATA[ExcelのYIELDMAT関数は、満期に元本と利息をまとめて受け取る証券（NCD・利付CP・短期利付社債）の年利回りを計算する財務関数です。構文・6つの引数・実務サンプル・PRICEMATとの双方向検証・エラー対処まで丁寧に解説します。]]></description>
										<content:encoded><![CDATA[
<h1 class="wp-block-heading">ExcelのYIELDMAT関数の使い方｜満期利払い証券の利回りを計算する</h1>



<p class="wp-block-paragraph">「満期にまとめて利息を受け取るタイプの証券、年利回りはいくらになるんだろう？」と思ったことはありませんか。NCD（譲渡性預金）やCP（コマーシャルペーパー）、短期の利付社債などは満期日に元本と利息を一括で受け取る商品で、普通の YIELD 関数や YIELDDISC 関数では正しく利回りを計算できません。</p>



<p class="wp-block-paragraph">ExcelのYIELDMAT関数を使えば、満期一括利払いタイプの証券の年利回りを数式1つで求められます。PRICEMAT関数とは「価格⇔利回り」の逆関数の関係にあり、双方向で検証できる点も実務で便利ですよ。</p>



<p class="wp-block-paragraph">この記事では、ExcelのYIELDMAT関数の構文と6つの引数、実数値で確認できる計算例、PRICEMATとの双方向検証、YIELD・YIELDDISCとの使い分けを実務目線で丁寧に解説します。</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><li><a href="#toc1" tabindex="0">ExcelのYIELDMAT関数とは？</a><ol><li><a href="#toc2" tabindex="0">YIELD・YIELDDISC・YIELDMAT の使い分け</a></li><li><a href="#toc3" tabindex="0">関数を選ぶ判断フロー</a></li></ol></li><li><a href="#toc4" tabindex="0">ExcelのYIELDMAT関数の構文と6つの引数</a><ol><li><a href="#toc5" tabindex="0">時系列のイメージ</a></li><li><a href="#toc6" tabindex="0">rate と pr の違い</a></li><li><a href="#toc7" tabindex="0">basis引数の選び方</a></li></ol></li><li><a href="#toc8" tabindex="0">YIELDMAT関数の基本的な使い方</a><ol><li><a href="#toc9" tabindex="0">例1: 1年満期・利率3%・市場価格100.50（basis=0）</a></li><li><a href="#toc10" tabindex="0">引数を日付セル参照にする書き方</a></li></ol></li><li><a href="#toc11" tabindex="0">実務での使い方｜中途売買と商品別サンプル</a><ol><li><a href="#toc12" tabindex="0">サンプル1: 短期社債を中途で購入（basis=0）</a></li><li><a href="#toc13" tabindex="0">サンプル2: NCD（譲渡性預金）90日もの（basis=2）</a></li><li><a href="#toc14" tabindex="0">サンプル3: 日本国内の短期利付社債（basis=3）</a></li><li><a href="#toc15" tabindex="0">サンプル4: 米国CP（コマーシャルペーパー）270日もの（basis=2）</a></li></ol></li><li><a href="#toc16" tabindex="0">YIELDMAT関数の計算式</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">PRICEMATとの双方向検証</a><ol><li><a href="#toc20" tabindex="0">構文の比較</a></li><li><a href="#toc21" tabindex="0">双方向検証の例</a></li></ol></li><li><a href="#toc22" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc23" tabindex="0">#NUM! エラー</a></li><li><a href="#toc24" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc25" tabindex="0">#NAME? エラー</a></li><li><a href="#toc26" tabindex="0">計算結果が異常になる場合（エラーは出ないが値が変）</a></li><li><a href="#toc27" tabindex="0">basis引数の混在に注意</a></li></ol></li><li><a href="#toc28" tabindex="0">ACCRINTM関数との組み合わせ</a></li><li><a href="#toc29" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ExcelのYIELDMAT関数は、<strong>満期に元本と利息をまとめて支払う証券（満期利払い証券）の年利回りを返す財務関数</strong>です。「YIELD」+「Maturity（満期）」が名前の由来で、英語では「Yield at Maturity payment」を意味します。</p>



<p class="wp-block-paragraph">対象となるのは、利息を毎月や半年ごとに支払うのではなく、満期日にまとめて元本と利息を一括払いする証券です。具体的には次のような商品が該当します。</p>



<ul class="wp-block-list"><li>NCD（譲渡性預金 / Negotiable Certificate of Deposit）</li><li>CP（コマーシャルペーパー）の利付タイプ</li><li>短期社債（満期一括償還型）</li><li>利付一括償還型の地方債</li></ul>



<p class="wp-block-paragraph">普通の利付債（半年や年1回クーポンを払う証券）には <a href="https://mashukabu.com/excel-yield-function/">YIELD関数</a>、利息なし・額面割れで発行される割引証券には <a href="https://mashukabu.com/excel-yielddisc-function/">YIELDDISC関数</a> を使います。<strong>「満期に一括で利息」タイプはYIELDMAT関数の出番</strong>ですよ。</p>



<h3 class="wp-block-heading"><span id="toc2">YIELD・YIELDDISC・YIELDMAT の使い分け</span></h3>



<p class="wp-block-paragraph">3つの利回り関数の違いを表で整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>対象証券</th><th>利息支払方法</th><th>引数の特徴</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-yield-function/">YIELD関数</a></td><td>定期利払い債券（普通の社債・国債）</td><td>半年・年1・四半期に分割支払い</td><td>frequency と redemption が必要</td></tr><tr><td><a href="https://mashukabu.com/excel-yielddisc-function/">YIELDDISC関数</a></td><td>割引証券（CP・TB・割引手形）</td><td>利息なし（額面割れ発行）</td><td>rate も issue も不要</td></tr><tr><td><strong>YIELDMAT関数</strong></td><td>満期利払い証券（NCD・短期利付社債等）</td><td>満期に元本＋利息一括</td><td>issue・rate・pr が必須</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc3">関数を選ぶ判断フロー</span></h3>



<p class="wp-block-paragraph">迷ったら、次の2つの質問で判断してください。</p>



<ol class="wp-block-list"><li><strong>クーポン（利息）はあるか？</strong></li></ol>



<ul class="wp-block-list"><li>ない（利息なし・割引発行） → YIELDDISC関数</li><li>ある → 次の質問へ</li></ul>



<ol class="wp-block-list"><li><strong>利息は定期的に支払われるか？</strong></li></ol>



<ul class="wp-block-list"><li>半年や年1回など定期的 → YIELD関数</li><li>満期に一括 → <strong>YIELDMAT関数</strong></li></ul>



<p class="wp-block-paragraph">このフローに沿って進めば、関数選びで迷うことはなくなりますよね。</p>



<h2 class="wp-block-heading"><span id="toc4">ExcelのYIELDMAT関数の構文と6つの引数</span></h2>



<p class="wp-block-paragraph">YIELDMAT関数の基本構文は次の通りです。引数は6つで、最後のbasisだけ省略可能です。</p>



<pre class="wp-block-code"><code>=YIELDMAT(settlement, maturity, issue, rate, pr, [basis])</code></pre>



<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>settlement</td><td>必須</td><td>受渡日（決済日 / 証券を購入する日）</td><td><code>DATE(2025,5,30)</code></td></tr><tr><td>maturity</td><td>必須</td><td>満期日（償還日）</td><td><code>DATE(2026,2,15)</code></td></tr><tr><td>issue</td><td>必須</td><td>発行日</td><td><code>DATE(2025,2,15)</code></td></tr><tr><td>rate</td><td>必須</td><td>額面利率（年率・小数で指定）</td><td><code>4%</code> または <code>0.04</code></td></tr><tr><td>pr</td><td>必須</td><td>額面100あたりの市場価格（クリーン価格）</td><td><code>100.32</code></td></tr><tr><td>basis</td><td>任意</td><td>日数計算基準</td><td><code>0</code>〜<code>4</code>（既定は0）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc5">時系列のイメージ</span></h3>



<p class="wp-block-paragraph">3つの日付（発行日・受渡日・満期日）の順序は必ず次のようになります。</p>



<pre class="wp-block-code"><code>発行日(issue) &lt; 受渡日(settlement) &lt; 満期日(maturity)</code></pre>



<p class="wp-block-paragraph">この順序を守らないと #NUM! エラーになります。受渡日は実際にお金と証券を交換する日で、約定日（取引が成立した日）とは別の概念です。発行日は証券そのものが市場に出た日で、利息計算の起点になります。</p>



<h3 class="wp-block-heading"><span id="toc6">rate と pr の違い</span></h3>



<ul class="wp-block-list"><li><strong>rate（額面利率）</strong>: 証券に印字された年利率。発行体が満期に支払う利息の計算に使う固定値</li><li><strong>pr（市場価格）</strong>: 受渡日時点で市場で取引されている額面100あたりの価格</li></ul>



<p class="wp-block-paragraph">利率と利回りが同じなら市場価格はちょうど100、市場金利が利率より高くなれば pr は100を下回ります。YIELDMATは「この市場価格 pr を実現する年利回りはいくつか？」を計算する関数です。</p>



<h3 class="wp-block-heading"><span id="toc7">basis引数の選び方</span></h3>



<p class="wp-block-paragraph">basis引数は日数の数え方を指定します。実務では次のように選びましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>値</th><th>名称</th><th>主な用途</th></tr></thead><tbody><tr><td>0（既定）</td><td>US (NASD) 30/360</td><td>米国社債のデフォルト</td></tr><tr><td>1</td><td>Actual/Actual</td><td>米国財務省証券</td></tr><tr><td>2</td><td>Actual/360</td><td>米国短期金融商品（CP・NCD）</td></tr><tr><td>3</td><td>Actual/365</td><td>日本国内債券</td></tr><tr><td>4</td><td>European 30/360</td><td>欧州社債</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日本国内のNCDや利付一括償還債なら原則 <code>basis=3</code>、米国の短期社債やCPなら <code>basis=2</code> を使うのが定石です。発行体が公表している「利息計算方法」に合わせて選んでくださいね。</p>



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



<p class="wp-block-paragraph">まずはシンプルなケースから計算してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc9">例1: 1年満期・利率3%・市場価格100.50（basis=0）</span></h3>



<p class="wp-block-paragraph">最もわかりやすい設定で、直感的な検算もできる例です。</p>



<ul class="wp-block-list"><li>発行日 2025/1/1、受渡日 2025/1/1（発行日と同日）</li><li>満期日 2026/1/1</li><li>額面利率 3%、市場価格 100.50</li><li>basis = 0（30/360）</li></ul>



<p class="wp-block-paragraph">セルに次のように入力します。</p>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,1,1), DATE(2026,1,1), DATE(2025,1,1), 0.03, 100.50, 0)</code></pre>



<p class="wp-block-paragraph">結果は <strong>2.4876%（0.024876）</strong> となります。</p>



<p class="wp-block-paragraph">直感的に検証してみましょう。1年後に元本100＋利息3＝合計103を受け取り、現在100.50で買うとすると、<code>103 ÷ 100.50 − 1 = 2.4876%</code> ですよね。YIELDMAT関数の戻り値とぴったり一致します。</p>



<h3 class="wp-block-heading"><span id="toc10">引数を日付セル参照にする書き方</span></h3>



<p class="wp-block-paragraph">実務では日付や利率をセルに入力しておき、YIELDMATでセル参照する形が便利です。</p>



<figure class="wp-block-table"><table><thead><tr><th>セル</th><th>内容</th><th>値</th></tr></thead><tbody><tr><td>B2</td><td>受渡日</td><td>2025/1/1</td></tr><tr><td>B3</td><td>満期日</td><td>2026/1/1</td></tr><tr><td>B4</td><td>発行日</td><td>2025/1/1</td></tr><tr><td>B5</td><td>額面利率</td><td>3%</td></tr><tr><td>B6</td><td>市場価格</td><td>100.50</td></tr><tr><td>B7</td><td>basis</td><td>0</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数式は次の通りです。</p>



<pre class="wp-block-code"><code>=YIELDMAT(B2, B3, B4, B5, B6, B7)</code></pre>



<p class="wp-block-paragraph">これなら市場価格が変動したときも、B6の値を書き換えるだけで利回りが瞬時に更新されます。感度分析や比較表作成にも向いている書き方です。</p>



<h2 class="wp-block-heading"><span id="toc11">実務での使い方｜中途売買と商品別サンプル</span></h2>



<p class="wp-block-paragraph">実務でYIELDMAT関数を使うのは、既に発行された満期利払い証券を中途で購入するシーンや、商品ごとの利回りを比較するシーンが多いです。代表的な4つのサンプルを見ていきましょう。</p>



<h3 class="wp-block-heading"><span id="toc12">サンプル1: 短期社債を中途で購入（basis=0）</span></h3>



<p class="wp-block-paragraph">PRICEMAT記事と対応するシナリオで、価格⇔利回りを双方向で検証できます。</p>



<ul class="wp-block-list"><li>発行日 2025/2/15</li><li>受渡日 2025/5/30（発行から約3か月半経過）</li><li>満期日 2026/2/15</li><li>額面利率 4%（満期に一括支払い）</li><li>市場価格 100.32</li><li>basis = 0</li></ul>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,5,30), DATE(2026,2,15), DATE(2025,2,15), 0.04, 100.32, 0)</code></pre>



<p class="wp-block-paragraph">結果は <strong>3.4963%</strong> です。</p>



<p class="wp-block-paragraph">利率4%・市場価格100.32なので、価格がわずかに100を上回る分、利回りは利率より少し低くなります。これが直感とも合いますよね。</p>



<h3 class="wp-block-heading"><span id="toc13">サンプル2: NCD（譲渡性預金）90日もの（basis=2）</span></h3>



<p class="wp-block-paragraph">NCDは銀行が発行する譲渡可能な定期預金証書で、米国市場ではActual/360（basis=2）が標準です。</p>



<ul class="wp-block-list"><li>発行日 2025/4/1</li><li>受渡日 2025/4/15（発行から2週間後に中途購入）</li><li>満期日 2025/6/30</li><li>額面利率 2%</li><li>市場価格 99.95</li><li>basis = 2</li></ul>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,4,15), DATE(2025,6,30), DATE(2025,4,1), 0.02, 99.95, 2)</code></pre>



<p class="wp-block-paragraph">結果は <strong>2.2362%</strong> です。</p>



<p class="wp-block-paragraph">額面利率2%より少し高い利回りになっているのは、市場価格が99.95（額面割れ）で買えるためです。残存75日の短期商品でも、年率換算した利回りで他商品と比較できる点がYIELDMATの強みです。</p>



<h3 class="wp-block-heading"><span id="toc14">サンプル3: 日本国内の短期利付社債（basis=3）</span></h3>



<p class="wp-block-paragraph">日本国内債券はActual/365（basis=3）が一般的です。</p>



<ul class="wp-block-list"><li>発行日 2025/3/1</li><li>受渡日 2025/4/10</li><li>満期日 2025/9/1</li><li>額面利率 1.5%</li><li>市場価格 99.80</li><li>basis = 3</li></ul>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,4,10), DATE(2025,9,1), DATE(2025,3,1), 0.015, 99.80, 3)</code></pre>



<p class="wp-block-paragraph">結果は <strong>2.0077%</strong> です。</p>



<p class="wp-block-paragraph">国内市場で同タイプの利付一括償還型社債を比較する場合、すべてbasis=3でそろえれば異なる残存期間でも公平に利回りを比べられます。</p>



<h3 class="wp-block-heading"><span id="toc15">サンプル4: 米国CP（コマーシャルペーパー）270日もの（basis=2）</span></h3>



<p class="wp-block-paragraph">利付タイプのCPは満期に元本と利息を一括で受け取ります。米国基準のbasis=2を使います。</p>



<ul class="wp-block-list"><li>発行日 2025/2/1</li><li>受渡日 2025/2/1（発行と同時購入）</li><li>満期日 2025/11/1</li><li>額面利率 4.5%</li><li>市場価格 99.50</li><li>basis = 2</li></ul>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,2,1), DATE(2025,11,1), DATE(2025,2,1), 0.045, 99.50, 2)</code></pre>



<p class="wp-block-paragraph">結果は <strong>5.1853%</strong> です。</p>



<p class="wp-block-paragraph">利率4.5%に対して利回りが5.18%まで跳ね上がっているのは、(1) 市場価格99.50の割安発行と、(2) basis=2（Actual/360）による年換算（実日数270日 ÷ 360日）の組み合わせによるものです。商品ごとに適切なbasisを選ぶことで、市場慣行に沿った正しい利回りが得られます。</p>



<h2 class="wp-block-heading"><span id="toc16">YIELDMAT関数の計算式</span></h2>



<p class="wp-block-paragraph">中身を理解しておくと、想定外の値が出たときの原因分析がしやすくなります。</p>



<h3 class="wp-block-heading"><span id="toc17">内部計算式</span></h3>



<p class="wp-block-paragraph">YIELDMATの内部計算式は次の通りです。</p>



<pre class="wp-block-code"><code>                  1 + (rate × DIM/B)
YIELDMAT = ────────────────────────────── − 1   ×   B/DSM
                P/100 + (A/B × rate)</code></pre>



<p class="wp-block-paragraph">各記号の意味は次の通りです。</p>



<ul class="wp-block-list"><li><strong>DIM</strong>（Days in Maturity）: 発行日から満期日までの日数</li><li><strong>A</strong>（Accrued days）: 発行日から受渡日までの経過日数</li><li><strong>DSM</strong>（Days from Settlement to Maturity）: 受渡日から満期日までの残存日数</li><li><strong>B</strong>: basis引数で決まる1年あたりの基準日数</li></ul>



<h3 class="wp-block-heading"><span id="toc18">計算式の意味</span></h3>



<ul class="wp-block-list"><li>分子 <code>1 + rate × DIM/B</code>: 発行から満期までに証券が積み上げる元本＋利息の合計（額面1あたり）</li><li>分母 <code>P/100 + A/B × rate</code>: 受渡日時点で投資家が支払う実質コスト（市場価格＋経過利子）</li><li>分子÷分母から1を引くと残存期間DSM/Bの総リターン</li><li>最後に <code>B/DSM</code> をかけることで年率に換算</li></ul>



<p class="wp-block-paragraph">つまり「満期に受け取る金額」÷「受渡日に払うコスト」をベースに、年率換算しているシンプルなロジックです。</p>



<h2 class="wp-block-heading"><span id="toc19">PRICEMATとの双方向検証</span></h2>



<p class="wp-block-paragraph">YIELDMAT関数とPRICEMAT関数は「コインの裏表」の関係にあります。同じ計算式の入出力を逆にしただけで、一方の出力をもう一方に入れると元の値に戻ります。</p>



<h3 class="wp-block-heading"><span id="toc20">構文の比較</span></h3>



<pre class="wp-block-code"><code>=PRICEMAT(settlement, maturity, issue, rate, yld, [basis])  → 価格を返す
=YIELDMAT(settlement, maturity, issue, rate, pr,  [basis])  → 利回りを返す</code></pre>



<p class="wp-block-paragraph">引数の順序は同じで、第5引数だけが <code>yld（利回り）</code> か <code>pr（価格）</code> かの違いです。</p>



<h3 class="wp-block-heading"><span id="toc21">双方向検証の例</span></h3>



<p class="wp-block-paragraph">サンプル1（短期社債を中途購入）の例で双方向の整合性を確認してみましょう。</p>



<p class="wp-block-paragraph"><strong>ステップ1: PRICEMATで価格を計算</strong></p>



<pre class="wp-block-code"><code>=PRICEMAT(DATE(2025,5,30), DATE(2026,2,15), DATE(2025,2,15), 0.04, 0.034963, 0)
→ 100.32</code></pre>



<p class="wp-block-paragraph">利回り 3.4963% を入力すると、価格 100.32 が返ります。</p>



<p class="wp-block-paragraph"><strong>ステップ2: YIELDMATで利回りを逆算</strong></p>



<pre class="wp-block-code"><code>=YIELDMAT(DATE(2025,5,30), DATE(2026,2,15), DATE(2025,2,15), 0.04, 100.32, 0)
→ 0.034963（3.4963%）</code></pre>



<p class="wp-block-paragraph">価格 100.32 を入力すると、元の利回り 3.4963% が返ります。</p>



<p class="wp-block-paragraph">このように <a href="https://mashukabu.com/excel-pricemat-function/">PRICEMAT関数</a> と組み合わせることで、価格と利回りのどちらからも検証できる便利な関数ペアになっています。実務では「相手から提示された価格を利回りに変換」「目標利回りから理論価格を逆算」と双方向に使い分けます。</p>



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



<p class="wp-block-paragraph">YIELDMAT関数でよく遭遇するエラーと対処法をまとめます。</p>



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



<p class="wp-block-paragraph">引数の値や順序が不正なときに出ます。次のいずれかに当てはまっていないか確認してください。</p>



<ul class="wp-block-list"><li><code>settlement >= maturity</code>（受渡日が満期日以降）→ 日付の前後関係を見直す</li><li><code>issue >= settlement</code>（発行日が受渡日以降）→ 発行日が一番過去になっているか確認する</li><li><code>rate < 0</code>（額面利率がマイナス）→ 0以上の値にする</li><li><code>pr <= 0</code>（市場価格が0以下）→ 正の値にする</li><li><code>basis < 0</code> または <code>basis > 4</code> → 0〜4の範囲に修正する</li></ul>



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



<p class="wp-block-paragraph">日付引数が日付として認識できない、または数値引数が数値として読めないときに出ます。</p>



<ul class="wp-block-list"><li>日付は必ず DATE 関数で指定する（DATE関数は年月日からシリアル値を作る関数）</li><li>文字列で「2025/5/30」と入力すると環境によってエラーになるので、シリアル値で渡すのが安全</li><li>数値引数（rate, pr, basis）にスペースや全角数字が混入していないか確認する</li></ul>



<h3 class="wp-block-heading"><span id="toc25">#NAME? エラー</span></h3>



<p class="wp-block-paragraph">関数名のスペルミスで発生します。「YEILDMAT」「YIELDMA」など綴りを間違えていないか確認しましょう。</p>



<h3 class="wp-block-heading"><span id="toc26">計算結果が異常になる場合（エラーは出ないが値が変）</span></h3>



<p class="wp-block-paragraph"><code>rate</code> を <code>4</code> のような整数で入力すると、Excelは「400%」と解釈します。</p>



<ul class="wp-block-list"><li>誤: <code>=YIELDMAT(...,4,100.32,0)</code> → 利率400%扱いで結果がメチャクチャに</li><li>正: <code>=YIELDMAT(...,0.04,100.32,0)</code> または <code>=YIELDMAT(...,4%,100.32,0)</code></li></ul>



<p class="wp-block-paragraph">セル書式を「パーセンテージ」にして 4% と直接入力するのがおすすめです。価格 pr も <code>100.32</code> と100基準で渡すこと（<code>1.0032</code> と1基準で渡すと結果が極端に小さくなります）。</p>



<h3 class="wp-block-heading"><span id="toc27">basis引数の混在に注意</span></h3>



<p class="wp-block-paragraph">社内システムが basis=0、市場慣行が basis=3 のように混在すると、利回り照合で誤差が出ます。発行体の公表情報や社内基準に合わせて統一しましょう。</p>



<h2 class="wp-block-heading"><span id="toc28">ACCRINTM関数との組み合わせ</span></h2>



<p class="wp-block-paragraph">YIELDMATは利回り計算に特化した関数ですが、実務では<a href="https://mashukabu.com/excel-function-howto-use-accrintm/">ACCRINTM関数</a>（経過利子の計算）と組み合わせると、満期利払い証券の評価が一気通貫で完結します。</p>



<ul class="wp-block-list"><li><strong>YIELDMAT</strong>: 市場価格から利回りを逆算</li><li><strong>PRICEMAT</strong>: 利回りから理論価格を計算</li><li><strong>ACCRINTM</strong>: 発行日から指定日までの経過利子を計算</li></ul>



<p class="wp-block-paragraph">PRICEMATの戻り値は経過利子を含まないクリーン価格、ACCRINTMで計算した経過利子を加えるとダーティ価格（実際の取引額）になります。YIELDMATで利回りを把握しつつ、PRICEMAT＋ACCRINTMで取引金額を確定する流れが定番です。</p>



<p class="wp-block-paragraph">金利感応度（リスク）を測りたいときは DURATION関数や MDURATION関数と組み合わせて、ポートフォリオ全体のリスク管理にも展開できますよ。</p>



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



<p class="wp-block-paragraph">ExcelのYIELDMAT関数は、満期に元本と利息を一括で受け取る証券の年利回りを計算する財務関数です。本記事のポイントを振り返ります。</p>



<ul class="wp-block-list"><li><strong>対象</strong>: NCD・利付CP・短期利付社債・利付一括償還型地方債など「満期一括利息支払い」の証券</li><li><strong>構文</strong>: <code>=YIELDMAT(settlement, maturity, issue, rate, pr, [basis])</code></li><li><strong>時系列</strong>: 発行日 < 受渡日 < 満期日 の順序を必ず守る</li><li><strong>戻り値</strong>: 年利回り（小数）。半年利払いでも年率換算済み</li><li><strong>使い分け</strong>: 定期利払い→YIELD、割引債→YIELDDISC、満期一括利払い→YIELDMAT</li><li><strong>basis</strong>: 米国短期金融商品=2、日本国内債券=3、米国社債=0 が実務の定石</li><li><strong>PRICEMATとの関係</strong>: コインの裏表。価格と利回りで双方向に検証できる</li><li><strong>エラー対処</strong>: <code>#NUM!</code>は日付順序や引数範囲、<code>#VALUE!</code>は日付・数値の型を見直す</li></ul>



<p class="wp-block-paragraph">満期一括利払い証券のシリーズでは、価格計算には <a href="https://mashukabu.com/excel-pricemat-function/">PRICEMAT関数</a>、経過利子の計算には <a href="https://mashukabu.com/excel-function-howto-use-accrintm/">ACCRINTM関数</a> を組み合わせて使ってみてください。利回り計算3兄弟（<a href="https://mashukabu.com/excel-yield-function/">YIELD</a>・<a href="https://mashukabu.com/excel-yielddisc-function/">YIELDDISC</a>・YIELDMAT）の使い分けが身につけば、債券評価の実務がぐっと楽になりますよ。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-yieldmat-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのINTRATE関数｜割引債の利回りを計算する方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-intrate/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-intrate/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 31 Jul 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[INTRATE関数]]></category>
		<category><![CDATA[YIELDDISC関数]]></category>
		<category><![CDATA[利回り計算]]></category>
		<category><![CDATA[割引債]]></category>
		<category><![CDATA[国債]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2372</guid>

					<description><![CDATA[ExcelのINTRATE関数の使い方を丁寧に解説。引数（受渡日・満期日・現在価格・償還価額・基準）の設定方法、基準0〜4の違いを比較表で確認できます。国債・社債・CPの実務3シナリオ付き。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">ExcelのINTRATE関数は、割引債（ゼロクーポン債）の利回りを計算できる関数です。国債やコマーシャルペーパーの購入利回りを求めたいとき、手計算では日数計算が面倒ですよね。INTRATE関数を使えば、受渡日と満期日、投資額を入力するだけで年率換算の利回りがすぐにわかります。</p>



<p class="wp-block-paragraph">この記事では、INTRATE関数の基本的な使い方から実務での活用例まで詳しく解説します。</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">INTRATE関数とは</a><ol><li><a href="#toc2" tabindex="0">読み方と概要</a></li><li><a href="#toc3" tabindex="0">どんな場面で使うのか（割引債・国債・CP）</a></li></ol></li><li><a href="#toc4" tabindex="0">INTRATE関数の構文と引数</a><ol><li><a href="#toc5" tabindex="0">5つの引数の意味と指定方法</a></li><li><a href="#toc6" tabindex="0">基準（日数計算方法）の選び方</a></li></ol></li><li><a href="#toc7" tabindex="0">基本的な使い方（手計算との検証）</a></li><li><a href="#toc8" tabindex="0">実務での使用例（3シナリオ）</a><ol><li><a href="#toc9" tabindex="0">10年国債の購入利回り</a></li><li><a href="#toc10" tabindex="0">コマーシャルペーパー（90日物CP）</a></li><li><a href="#toc11" tabindex="0">複数銘柄の利回り比較</a></li></ol></li><li><a href="#toc12" tabindex="0">YIELDDISC関数との使い分け</a></li><li><a href="#toc13" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc14" tabindex="0">#NUM!エラー</a></li><li><a href="#toc15" tabindex="0">#VALUE!エラー</a></li></ol></li><li><a href="#toc16" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<h3 class="wp-block-heading"><span id="toc2">読み方と概要</span></h3>



<p class="wp-block-paragraph">読み方は「インタレスト・レート関数」です。INTRATEは「Interest Rate（利率）」の略になります。</p>



<p class="wp-block-paragraph">INTRATE関数は、全額投資された証券の利率を返す関数です。利息が支払われない割引債（額面より安く購入し、満期に額面で償還される債券）の利回り計算に使います。</p>



<p class="wp-block-paragraph">対応バージョンはExcel 2007以降です。Excel 365・2024・2021・2019・2016で利用できますよ。</p>



<h3 class="wp-block-heading"><span id="toc3">どんな場面で使うのか（割引債・国債・CP）</span></h3>



<p class="wp-block-paragraph">INTRATE関数は、次のような場面で活躍します。</p>



<ul class="wp-block-list"><li>割引債（ゼロクーポン債）の購入利回りを計算したいとき</li><li>国債の投資判断で年率リターンを比較したいとき</li><li>コマーシャルペーパー（CP：企業が短期資金調達のために発行する約束手形）の利回りを確認したいとき</li></ul>



<p class="wp-block-paragraph">いずれも「投資額と償還額の差額」から利回りを求める計算です。手動で日数計算をするのは大変ですが、INTRATE関数なら一発で求められますよ。</p>



<h2 class="wp-block-heading"><span id="toc4">INTRATE関数の構文と引数</span></h2>



<h3 class="wp-block-heading"><span id="toc5">5つの引数の意味と指定方法</span></h3>



<p class="wp-block-paragraph">INTRATE関数の基本構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=INTRATE(受渡日, 満期日, 投資額, 償還価額, [基準])</code></pre>



<p class="wp-block-paragraph">引数は5つあり、最初の4つは必須です。5つ目の「基準」は省略できます。</p>



<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><tr><td>償還価額</td><td>必須</td><td>満期日に受け取る金額</td></tr><tr><td>基準</td><td>省略可</td><td>日数計算の方法（0〜4）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日付の入力には<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>を使うのがおすすめです。文字列で日付を入力すると、環境によって正しく認識されないことがあります。</p>



<p class="wp-block-paragraph">なお、受渡日・満期日・基準の値は整数に切り捨てて計算されます。</p>



<p class="wp-block-paragraph">内部の計算式は次のとおりです。</p>



<pre class="wp-block-code"><code>利率 = (償還価額 - 投資額) / 投資額 × (B / DIM)</code></pre>



<ul class="wp-block-list"><li><strong>B</strong>: 年間日数（基準の設定による）</li><li><strong>DIM</strong>: 受渡日から満期日までの日数（基準の設定による）</li></ul>



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



<p class="wp-block-paragraph">基準は0〜4の整数で指定します。省略すると「0」が適用されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>基準</th><th>日数/年日数</th><th>主な用途</th></tr></thead><tbody><tr><td>0（省略時）</td><td>30日/360日（NASD方式）</td><td>米国の社債など</td></tr><tr><td>1</td><td>実日数/実日数</td><td>国際的な債券</td></tr><tr><td>2</td><td>実日数/360日</td><td>米国T-Bills（短期国債）</td></tr><tr><td>3</td><td>実日数/365日</td><td>日本円TIBOR対応</td></tr><tr><td>4</td><td>30日/360日（欧州方式）</td><td>ユーロ債券</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実務では、米国の短期国債（T-Bills）にはbasis=2、日本の金利計算にはbasis=3がよく使われます。基準の詳細な計算方法は<a href="https://mashukabu.com/excel-function-howto-use-yearfrac/">YEARFRAC関数の解説記事</a>も参考にしてみてください。</p>



<h2 class="wp-block-heading"><span id="toc7">基本的な使い方（手計算との検証）</span></h2>



<p class="wp-block-paragraph">Microsoft公式の使用例で、基本的な使い方を確認しましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>セル</th><th>項目</th><th>値</th></tr></thead><tbody><tr><td>A2</td><td>受渡日</td><td>2008/2/15</td></tr><tr><td>A3</td><td>満期日</td><td>2008/5/15</td></tr><tr><td>A4</td><td>投資額</td><td>1,000,000</td></tr><tr><td>A5</td><td>償還価額</td><td>1,014,420</td></tr><tr><td>A6</td><td>基準</td><td>2</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数式は次のように入力します。</p>



<pre class="wp-block-code"><code>=INTRATE(A2, A3, A4, A5, A6)</code></pre>



<p class="wp-block-paragraph">結果は <strong>約5.77%</strong> になります。</p>



<p class="wp-block-paragraph">手計算でも検証してみましょう。基準が2（実日数/360）なので、受渡日から満期日までの実際の日数を数えます。実日数計算では受渡日当日は含みません。</p>



<ul class="wp-block-list"><li>2月：14日（2/16〜2/29、うるう年）</li><li>3月：31日</li><li>4月：30日</li><li>5月：15日（5/1〜5/15）</li><li>合計：<strong>90日</strong></li></ul>



<p class="wp-block-paragraph">計算式に当てはめると次のようになります。</p>



<pre class="wp-block-code"><code>利率 = (1,014,420 - 1,000,000) / 1,000,000 × (360 / 90)
     = 14,420 / 1,000,000 × 4
     = 0.05768
     ≒ 5.77%</code></pre>



<p class="wp-block-paragraph">INTRATE関数の結果と一致しましたね。このように「差額÷投資額」を年率に換算する仕組みです。</p>



<h2 class="wp-block-heading"><span id="toc8">実務での使用例（3シナリオ）</span></h2>



<h3 class="wp-block-heading"><span id="toc9">10年国債の購入利回り</span></h3>



<p class="wp-block-paragraph">額面100万円の10年国債を82万円で購入したケースです。日本の金利慣行に合わせてbasis=3（実日数/365）を使います。</p>



<pre class="wp-block-code"><code>=INTRATE(DATE(2025,4,1), DATE(2035,4,1), 820000, 1000000, 3)</code></pre>



<p class="wp-block-paragraph">この数式の計算を確認しましょう。受渡日から満期日までの実日数は3,652日です。</p>



<pre class="wp-block-code"><code>利率 = (1,000,000 - 820,000) / 820,000 × (365 / 3652)
     = 180,000 / 820,000 × 0.09994
     ≒ 0.02194
     ≒ 2.19%</code></pre>



<p class="wp-block-paragraph">10年保有で約2.19%の年率利回りだとわかりますよ。</p>



<h3 class="wp-block-heading"><span id="toc10">コマーシャルペーパー（90日物CP）</span></h3>



<p class="wp-block-paragraph">企業が発行する90日物CPの利回りを計算します。短期の金融商品なので、basis=2（実日数/360）を使います。</p>



<pre class="wp-block-code"><code>=INTRATE(DATE(2025,7,1), DATE(2025,9,29), 995000, 1000000, 2)</code></pre>



<p class="wp-block-paragraph">手計算では次のようになります。受渡日から満期日までの実日数は90日です。</p>



<ul class="wp-block-list"><li>7月：30日（7/2〜7/31）</li><li>8月：31日</li><li>9月：29日（9/1〜9/29）</li><li>合計：<strong>90日</strong></li></ul>



<pre class="wp-block-code"><code>利率 = (1,000,000 - 995,000) / 995,000 × (360 / 90)
     = 5,000 / 995,000 × 4
     ≒ 0.02010
     ≒ 2.01%</code></pre>



<p class="wp-block-paragraph">短期商品なので、わずかな価格差でも年率換算すると一定の利回りになる点がポイントです。</p>



<h3 class="wp-block-heading"><span id="toc11">複数銘柄の利回り比較</span></h3>



<p class="wp-block-paragraph">INTRATE関数を使えば、複数の割引債を横並びで比較できます。セルに値を入力し、一括で計算してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>&nbsp;</th><th>A（受渡日）</th><th>B（満期日）</th><th>C（投資額）</th><th>D（償還価額）</th><th>E（基準）</th><th>F（利回り）</th></tr></thead><tbody><tr><td>銘柄A</td><td>2025/4/1</td><td>2025/7/1</td><td>998,000</td><td>1,000,000</td><td>2</td><td>=INTRATE(A2,B2,C2,D2,E2)</td></tr><tr><td>銘柄B</td><td>2025/4/1</td><td>2025/10/1</td><td>995,000</td><td>1,000,000</td><td>2</td><td>=INTRATE(A3,B3,C3,D3,E3)</td></tr><tr><td>銘柄C</td><td>2025/4/1</td><td>2026/4/1</td><td>985,000</td><td>1,000,000</td><td>3</td><td>=INTRATE(A4,B4,C4,D4,E4)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">F列にINTRATE関数を入力すれば、各銘柄の利回りを一覧で比較できます。投資判断の材料として役立ててみてください。</p>



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



<p class="wp-block-paragraph">割引債の利回り計算には、YIELDDISC関数も使えます。INTRATE関数とYIELDDISC関数の違いは、第3引数の指定方法です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>INTRATE関数</th><th>YIELDDISC関数</th></tr></thead><tbody><tr><td>第3引数</td><td>投資額（実際の購入金額）</td><td>額面あたりの価格（pr）</td></tr><tr><td>向いている場面</td><td>実額ベースで計算したいとき</td><td>価格クォートベースで計算したいとき</td></tr><tr><td>入力例（100万円額面を99万で購入）</td><td>投資額に990000を指定</td><td>prに99を指定</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">たとえば、額面100万円の債券を99万円で購入した場合を考えます。INTRATE関数では投資額に「990000」と入力します。一方、YIELDDISC関数では額面あたりの価格「99」を入力します。</p>



<p class="wp-block-paragraph">実際に手元の購入金額がわかっている場合はINTRATE関数が直感的です。債券の価格表示（額面あたりの値段）で計算したい場合はYIELDDISC関数を選びましょう。</p>



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



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



<p class="wp-block-paragraph">#NUM!エラーは、引数の値が計算できない範囲にあるときに発生します。次の条件に当てはまっていないか確認してください。</p>



<ul class="wp-block-list"><li><strong>投資額が0以下になっている</strong> → 正の数を指定する</li><li><strong>償還価額が0以下になっている</strong> → 正の数を指定する</li><li><strong>受渡日が満期日以降になっている</strong> → 日付の前後関係を見直す</li><li><strong>基準が0〜4の範囲外になっている</strong> → 0〜4の整数を指定する</li></ul>



<p class="wp-block-paragraph">特に日付の前後関係は見落としがちです。受渡日が満期日より後になっていないか確認してみてください。</p>



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



<p class="wp-block-paragraph">#VALUE!エラーは、引数に無効な値が入っているときに発生します。</p>



<ul class="wp-block-list"><li><strong>日付がExcelに認識されていない</strong> → <a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>で入力し直す</li><li><strong>数値のセルに文字列が混入している</strong> → セルの書式を確認する</li></ul>



<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-edate/">EDATE関数</a>を使って日付を指定すると、このエラーを防げますよ。</p>



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



<p class="wp-block-paragraph">INTRATE関数は、割引債の利回りを年率で計算できる関数です。この記事のポイントをおさらいしましょう。</p>



<ul class="wp-block-list"><li>構文は <code>=INTRATE(受渡日, 満期日, 投資額, 償還価額, [基準])</code></li><li>「基準」引数で日数計算方法を選ぶ（省略時は30/360のNASD方式）</li><li>日本の金利計算にはbasis=3、米国T-Billsにはbasis=2が一般的</li><li>実額ベースの計算にはINTRATE、価格クォートベースにはYIELDDISCを使い分ける</li><li>日付は<a href="https://mashukabu.com/excel-function-howto-use-date/">DATE関数</a>で入力するとエラーを防げる</li></ul>



<p class="wp-block-paragraph">基準の選び方を間違えると計算結果が変わるので、対象の金融商品に合った値を選んでみてください。<a href="https://mashukabu.com/excel-function-howto-use-yearfrac/">YEARFRAC関数</a>の使い方や基準の詳細もあわせてご覧ください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-intrate/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
