<?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>ODDLYIELD関数 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/oddlyield%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Wed, 22 Apr 2026 14:41:16 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>ODDLYIELD関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのODDLYIELD関数の使い方｜不定期最終利払いの利回りを計算</title>
		<link>https://mashukabu.com/spreadsheet-oddlyield-function/</link>
					<comments>https://mashukabu.com/spreadsheet-oddlyield-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 22 Apr 2026 14:41:16 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ODDLYIELD関数]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[経理・財務]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6213</guid>

					<description><![CDATA[GoogleスプレッドシートのODDLYIELD関数を使えば、最終利払い期間が通常と異なる（不定期）債券の利回りを計算できます。構文・引数・計算例・ODDLPRICE・ODDFYIELDとの使い分け・よくあるエラー対処まで解説します。]]></description>
										<content:encoded><![CDATA[
<p>「満期前の最後の利払い期間だけ端数になっている債券を、途中で買い直したら利回りっていくらになるの？」——そんな場面で使うのが ODDLYIELD 関数です。</p>



<p>通常の YIELD 関数は、全期間の利払いが均等に揃った債券を前提にしています。満期と直前の利払い日がキリよく揃わない債券では、そのまま使うと正確な利回りが出せませんよ。</p>



<p>この記事では、スプレッドシートの ODDLYIELD 関数の使い方を、構文・計算例・よくあるエラーの対処まで同僚に教える感覚で解説します。ODDLPRICE・ODDFYIELD との使い分けも整理しているので、債券分析や財務モデリングの実務にぜひ活用してください。</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">スプレッドシートの ODDLYIELD 関数とは？</a><ol><li><a href="#toc2" tabindex="0">不定期最終利払い期間（Odd Last Period）とは</a></li></ol></li><li><a href="#toc3" tabindex="0">ODDLYIELD 関数の構文と引数</a><ol><li><a href="#toc4" tabindex="0">日数計算方法（basis）の選び方</a></li><li><a href="#toc5" tabindex="0">日付順の制約</a></li></ol></li><li><a href="#toc6" tabindex="0">ODDLYIELD 関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">Microsoft 公式サンプルで計算する</a></li><li><a href="#toc8" tabindex="0">DATE 関数を使って直接指定する</a></li><li><a href="#toc9" tabindex="0">価格がクーポン率を上回る場合（プレミアム債）</a></li></ol></li><li><a href="#toc10" tabindex="0">関連関数との使い分け</a><ol><li><a href="#toc11" tabindex="0">ODDF / ODDL 系 4 関数</a></li><li><a href="#toc12" tabindex="0">ODDLYIELD と ODDLPRICE の関係</a></li><li><a href="#toc13" tabindex="0">通常の YIELD 関数との違い</a></li></ol></li><li><a href="#toc14" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc15" tabindex="0">#NUM! エラー</a></li><li><a href="#toc16" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc17" tabindex="0">#NAME? エラー</a></li></ol></li><li><a href="#toc18" tabindex="0">Excel との互換性</a></li><li><a href="#toc19" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">スプレッドシートの ODDLYIELD 関数とは？</span></h2>



<p>スプレッドシートの ODDLYIELD 関数は、<strong>最終利払い期間が不定期（通常と異なる）な債券の、年間利回りを計算する財務関数</strong>です。</p>



<p>関数名の ODDLYIELD は &#8220;Odd Last Period Yield&#8221;（不定期最終期間の利回り）を略したもので、市場で観測された価格から利回りを逆算するときに使います。</p>



<h3 class="wp-block-heading"><span id="toc2">不定期最終利払い期間（Odd Last Period）とは</span></h3>



<p>通常の債券は、各利払い期間がほぼ等しい長さです。たとえば半年払いの債券なら、各利払い期間は約6か月ですね。</p>



<p>しかし、既存債券の満期日を途中で変更した場合などでは、<strong>直前の利払い日から満期日までの期間</strong>が通常のサイクルと揃わないことがあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>状況</th><th>説明</th></tr></thead><tbody><tr><td><strong>短い最終期間</strong>（Short Last Period）</td><td>直前利払日から満期日までが、通常の利払い間隔より短い</td></tr><tr><td><strong>長い最終期間</strong>（Long Last Period）</td><td>直前利払日から満期日までが、通常の利払い間隔より長い</td></tr></tbody></table></figure>



<p>この「最終だけ期間が違う債券」を、観測された価格から利回りに変換するのが ODDLYIELD です。</p>



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



<p>ODDLYIELD 関数の構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=ODDLYIELD(決済日, 満期日, 直前利払日, 利率, 価格, 償還価格, 頻度, [日数計算方法])</code></pre>



<p>英語表記だと <code>=ODDLYIELD(settlement, maturity, last_interest, rate, pr, redemption, frequency, [basis])</code> となります。</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>債券の受渡日（購入が完了する日）。DATE 関数での指定を推奨</td></tr><tr><td>満期日（maturity）</td><td>必須</td><td>債券の満期日</td></tr><tr><td>直前利払日（last_interest）</td><td>必須</td><td>最後から2番目の利払い日（＝最終利払い期間の開始日）</td></tr><tr><td>利率（rate）</td><td>必須</td><td>年間クーポンレート。小数で指定（例: 3.75% → 0.0375）</td></tr><tr><td>価格（pr）</td><td>必須</td><td>額面100あたりの市場価格（例: 額面100に対して99.875で取引なら99.875）</td></tr><tr><td>償還価格（redemption）</td><td>必須</td><td>額面100あたりの償還価格（通常は100）</td></tr><tr><td>頻度（frequency）</td><td>必須</td><td>年間利払い回数（1=年1回、2=半年払い、4=四半期払い）</td></tr><tr><td>日数計算方法（basis）</td><td>省略可</td><td>0=US/30/360（デフォルト）、1=Actual/Actual、2=Actual/360、3=Actual/365、4=欧州/30/360</td></tr></tbody></table></figure>



<p>ODDLPRICE とほぼ同じ構成ですが、<strong>第5引数が「利回り」ではなく「価格」</strong> に変わっている点に注意してください。価格を入れて利回りを返す、という逆方向の関数ですね。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>値</th><th>日数基準</th><th>主な使用場面</th></tr></thead><tbody><tr><td>0</td><td>US/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>ユーロ建て短期証券</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>省略すると 0（US/30/360）が適用されます。</p>



<h3 class="wp-block-heading"><span id="toc5">日付順の制約</span></h3>



<p>ODDLYIELD では、以下の日付順を必ず満たす必要があります。</p>



<pre class="wp-block-code"><code>満期日 &gt; 決済日 &gt; 直前利払日</code></pre>



<p>この順序を守らないと <code>#NUM!</code> エラーになります。日付入力でエラーが出たときは、まずこの順序を疑ってみてください。</p>



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



<h3 class="wp-block-heading"><span id="toc7">Microsoft 公式サンプルで計算する</span></h3>



<p>Microsoft 公式ドキュメントで紹介されている、半年払いの社債サンプルです。</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>2008/4/20</td></tr><tr><td>B3</td><td>満期日</td><td>2008/6/15</td></tr><tr><td>B4</td><td>直前利払日</td><td>2007/12/24</td></tr><tr><td>B5</td><td>利率（クーポン）</td><td>0.0375（3.75%）</td></tr><tr><td>B6</td><td>価格</td><td>99.875</td></tr><tr><td>B7</td><td>償還価格</td><td>100</td></tr><tr><td>B8</td><td>頻度（半年払い）</td><td>2</td></tr><tr><td>B9</td><td>日数計算方法</td><td>0（US/30/360）</td></tr></tbody></table></figure>



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



<p><strong>結果: 約 0.0452（= 4.52%）</strong></p>



<p>価格 99.875 が額面 100 をわずかに下回っている（ディスカウント）ので、クーポン率 3.75% を上回る利回り 4.52% が返ってきますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">DATE 関数を使って直接指定する</span></h3>



<pre class="wp-block-code"><code>=ODDLYIELD(
  DATE(2008,4,20),
  DATE(2008,6,15),
  DATE(2007,12,24),
  0.0375,
  99.875,
  100,
  2,
  0
)</code></pre>



<p>日付を直接入力する場合は、DATE 関数を使うと確実です。文字列で &#8220;2008/4/20&#8221; と書くと、ロケール設定によっては <code>#VALUE!</code> エラーになることがありますよ。</p>



<h3 class="wp-block-heading"><span id="toc9">価格がクーポン率を上回る場合（プレミアム債）</span></h3>



<p>次は同じ条件で、価格を額面より高く設定した例です。</p>



<pre class="wp-block-code"><code>=ODDLYIELD(DATE(2008,4,20), DATE(2008,6,15), DATE(2007,12,24), 0.0375, 100.25, 100, 2, 0)</code></pre>



<p><strong>結果: 約 0.0126（= 1.26%）</strong></p>



<p>価格 100.25 が額面 100 を上回る（プレミアム債）なので、利回りはクーポン率 3.75% を下回る 1.26% まで低下します。価格と利回りが逆方向に動く関係がわかりやすいサンプルですね。</p>



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



<p>ODDLYIELD と組み合わせて使う関連関数を整理します。</p>



<h3 class="wp-block-heading"><span id="toc11">ODDF / ODDL 系 4 関数</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>対象期間</th><th>返す値</th><th>主な用途</th></tr></thead><tbody><tr><td><strong>ODDLYIELD</strong></td><td>不定期<strong>最終</strong>利払い</td><td>利回り</td><td>最終期間が不定期な債券の利回りを求める</td></tr><tr><td><strong>ODDLPRICE</strong></td><td>不定期<strong>最終</strong>利払い</td><td>価格</td><td>最終期間が不定期な債券の価格を求める</td></tr><tr><td><strong>ODDFYIELD</strong></td><td>不定期<strong>初回</strong>利払い</td><td>利回り</td><td>初回期間が不定期な債券の利回りを求める</td></tr><tr><td><strong>ODDFPRICE</strong></td><td>不定期<strong>初回</strong>利払い</td><td>価格</td><td>初回期間が不定期な債券の価格を求める</td></tr></tbody></table></figure>



<p>「F=First（初回）、L=Last（最終）、PRICE=価格、YIELD=利回り」と覚えると整理しやすいですよ。</p>



<p>初回期間が不定期な債券の価格・利回り計算については、<a href="spreadsheet-oddfyield-function">スプレッドシートのODDFYIELD関数の使い方</a> と <a href="spreadsheet-oddfprice-function">スプレッドシートのODDFPRICE関数の使い方</a> も合わせて参考にしてください。</p>



<h3 class="wp-block-heading"><span id="toc12">ODDLYIELD と ODDLPRICE の関係</span></h3>



<p>ODDLYIELD と ODDLPRICE は<strong>逆関数ペア</strong>の関係です。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力</th><th>出力</th><th>関数</th></tr></thead><tbody><tr><td>価格 →</td><td>利回り</td><td>ODDLYIELD</td></tr><tr><td>利回り →</td><td>価格</td><td>ODDLPRICE</td></tr></tbody></table></figure>



<p>同じ債券条件で ODDLPRICE の結果を ODDLYIELD に入れ直すと、元の利回りに戻ります。計算内部では同じ現在価値モデルを使い、ODDLYIELD はニュートン法で利回りを反復的に逆算しています。ODDLPRICE 側の詳細は <a href="spreadsheet-oddlprice-function">スプレッドシートのODDLPRICE関数の使い方</a> で解説しているので、ペアで確認しておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc13">通常の YIELD 関数との違い</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>状況</th><th>使う関数</th></tr></thead><tbody><tr><td>全期間が均等な利払い期間の債券</td><td>YIELD 関数</td></tr><tr><td>初回利払い期間だけが不定期な債券</td><td>ODDFYIELD 関数</td></tr><tr><td>最終利払い期間だけが不定期な債券</td><td><strong>ODDLYIELD 関数</strong></td></tr></tbody></table></figure>



<p>債券の利回りを出すときは、「満期日＝直前利払日＋通常間隔」で揃っているかを最初にチェックしましょう。揃っていなければ YIELD ではなく ODDLYIELD が正解です。</p>



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



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



<p>最も多いエラーです。以下のケースで発生します。</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>直前利払日は決済日より前に設定する</td></tr><tr><td>利率 < 0</td><td>クーポンレートは 0 以上の小数で指定する</td></tr><tr><td>価格 ≤ 0</td><td>価格は 0 より大きい値で指定する</td></tr><tr><td>償還価格 ≤ 0</td><td>償還価格は 0 より大きい値で指定する</td></tr><tr><td>頻度が 1・2・4 以外</td><td>年間利払い回数は 1・2・4 のいずれかを指定する</td></tr><tr><td>日数計算方法が 0〜4 以外</td><td>basis は 0〜4 の整数を指定する</td></tr></tbody></table></figure>



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



<p>引数に日付・数値として解釈できない値が入っている場合に発生します。日付を直接入力するときは <code>DATE(2008,4,20)</code> のように DATE 関数を使うと確実ですよ。文字列の &#8220;2008/4/20&#8221; はロケール依存で失敗することがあります。</p>



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



<p>関数名のスペルミスが原因です。<code>ODDLYILD</code>・<code>ODD_L_YIELD</code>・<code>ODDL YIELD</code> などは存在しない関数名です。正しくは <code>ODDLYIELD</code>（アンダースコアやスペースなし）ですよ。</p>



<h2 class="wp-block-heading"><span id="toc18">Excel との互換性</span></h2>



<p>ODDLYIELD 関数は、<strong>Excel 2007 以降・Google スプレッドシート・LibreOffice Calc</strong> で同じ計算結果を返します。Excel ファイル（.xlsx）をスプレッドシートで開いてもそのまま動作しますよ。</p>



<p>内部計算はニュートン法による反復（最大100回）で利回りを逆算しているため、プラットフォームごとの微小な丸め差が出るケースがあります。実務で厳密な一致が必要な場合は、計算基準（basis）を明示して結果を確認してください。</p>



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



<p>スプレッドシートの ODDLYIELD 関数は、最終利払い期間が通常と異なる（不定期な）債券の利回りを計算する財務関数です。ポイントをまとめておきます。</p>



<ul class="wp-block-list"><li>引数は <strong>決済日・満期日・直前利払日・利率・価格・償還価格・頻度</strong> の7つ（日数計算方法は省略可）</li><li>市場価格から<strong>年間利回り（小数）</strong> を逆算する関数で、ODDLPRICE の逆関数ペア</li><li>既存債券の満期日変更などで<strong>直前利払日と満期日の間隔が通常と異なる債券</strong>の利回り計算に使う</li><li>頻度は <strong>1（年1回）・2（半年払い）・4（四半期払い）</strong> のみ指定可能</li><li>日付順制約 <strong>満期日 > 決済日 > 直前利払日</strong> を守らないと <code>#NUM!</code> エラー</li><li>初回期間が不定期な債券には <strong>ODDFYIELD 関数</strong> を使う</li><li>Excel 2007 以降・LibreOffice Calc との互換性があり、.xlsx ファイルをそのまま開いても動作する</li></ul>



<p>債券分析ツールや財務モデルの中で、満期直前の期間調整が必要な債券の利回り評価に ODDLYIELD を活用してください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-oddlyield-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
