<?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/%e7%a4%be%e5%82%b5/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Sun, 17 May 2026 09:15:14 +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のPRICE関数の使い方｜国債・社債の理論価格を1関数で算出</title>
		<link>https://mashukabu.com/excel-price-function/</link>
					<comments>https://mashukabu.com/excel-price-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Thu, 07 May 2026 12:43:01 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[PRICE]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[国債]]></category>
		<category><![CDATA[社債]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6572</guid>

					<description><![CDATA[ExcelのPRICE関数で定期利払い債券の理論価格を計算する方法を解説。7つの引数の使い方、クリーン価格とダーティ価格の違い、半年利払いの実例、YIELD・DURATION関数との関係を実務目線で整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">債券投資や資産運用の現場で「この利回りなら今いくらで買うのが妥当か」を即座に出したい場面はよくありますよね。手計算で各キャッシュフローを現在価値に割り引いて足し合わせるのは時間がかかりますし、入力ミスのリスクもあります。</p>



<p class="wp-block-paragraph">ExcelのPRICE関数（プライス関数）を使えば、定期的に利息（クーポン）を支払う債券の理論価格を<strong>1つの数式で</strong>算出できます。引数は7つですが、設定を覚えてしまえば国債・社債の評価まで幅広く対応できますよ。</p>



<p class="wp-block-paragraph">この記事では、PRICE関数の構文と引数の意味、半年利払い社債の実例、クリーン価格とダーティ価格の違いを解説します。あわせてYIELD・DURATION・MDURATION関数との関係も実務目線で整理しますね。</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のPRICE関数とは？</a></li><li><a href="#toc2" tabindex="0">PRICE関数の構文と引数</a><ol><li><a href="#toc3" tabindex="0">各引数の詳細</a></li></ol></li><li><a href="#toc4" tabindex="0">基本的な使い方｜半年利払い社債の価格を計算する</a><ol><li><a href="#toc5" tabindex="0">額面換算の仕方</a></li><li><a href="#toc6" tabindex="0">パー価格の確認</a></li><li><a href="#toc7" tabindex="0">内部計算式（理解を深めたい人向け）</a></li></ol></li><li><a href="#toc8" tabindex="0">クリーン価格とダーティ価格の違い｜経過利子の扱い</a><ol><li><a href="#toc9" tabindex="0">クリーン価格 vs ダーティ価格</a></li><li><a href="#toc10" tabindex="0">経過利子の計算</a></li><li><a href="#toc11" tabindex="0">ACCRINT関数で自動計算する</a></li></ol></li><li><a href="#toc12" tabindex="0">実務での活用例3パターン｜国債・社債・既発債の中途売買</a><ol><li><a href="#toc13" tabindex="0">パターン1: 日本国債の落札利回りから参考価格を計算</a></li><li><a href="#toc14" tabindex="0">パターン2: 米国社債の購入判断</a></li><li><a href="#toc15" tabindex="0">パターン3: 利回り感応度シミュレーション（投資判断）</a></li></ol></li><li><a href="#toc16" tabindex="0">PRICE × YIELD × DURATION × MDURATIONの関係</a><ol><li><a href="#toc17" tabindex="0">4関数の役割マップ</a></li><li><a href="#toc18" tabindex="0">PRICE↔YIELDの双方向検算</a></li><li><a href="#toc19" tabindex="0">DURATION/MDURATIONによる価格感応度の確認</a></li><li><a href="#toc20" tabindex="0">シリーズで使う流れ</a></li></ol></li><li><a href="#toc21" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc22" tabindex="0">#NUM! エラー</a></li><li><a href="#toc23" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc24" tabindex="0">#NAME? エラー</a></li><li><a href="#toc25" tabindex="0">結果がおかしい（理論価格と乖離する）</a></li></ol></li><li><a href="#toc26" tabindex="0">まとめ｜PRICE関数で債券評価の入り口を押さえる</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">ExcelのPRICE関数は、<strong>定期的に利息を支払う証券（債券）の額面100あたりの価格</strong>を計算する財務関数です。読み方は「プライス」で、日本語では「定期利付債券の現在価格」を返す関数と言えます。</p>



<p class="wp-block-paragraph">利回り（YTM、年利回り）を入力すると、その利回りに見合った理論価格が返ってきます。たとえば「残存5年・年クーポン4%・利回り3.5%・半年利払い」の社債なら、額面100あたり<strong>102.275</strong>が即座に得られますよ。</p>



<p class="wp-block-paragraph">PRICE関数の特徴は次の3つです。</p>



<ul class="wp-block-list"><li>利回り（yld）から価格を逆算するため、入札・売買の意思決定で使いやすい</li><li>戻り値は<strong>額面100あたりの価格（クリーン価格）</strong>で、経過利子は含まない</li><li>半年利払い・年1利払い・四半期利払いに対応（frequency引数で指定）</li></ul>



<p class="wp-block-paragraph">財務分野でPRICE関数を使えるようになると、DURATION関数（マコーレー・デュレーション）やMDURATION関数（修正デュレーション）と組み合わせて、価格と利回りの感応度分析も自然に進められるようになりますよ。</p>



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



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



<pre class="wp-block-code"><code>=PRICE(settlement, maturity, rate, yld, redemption, frequency, [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(2026,5,6)</code></td></tr><tr><td>maturity</td><td>必須</td><td>満期日（償還日）</td><td><code>DATE(2031,5,6)</code></td></tr><tr><td>rate</td><td>必須</td><td>年クーポン率</td><td><code>4%</code> または <code>0.04</code></td></tr><tr><td>yld</td><td>必須</td><td>年利回り（YTM）</td><td><code>3.5%</code> または <code>0.035</code></td></tr><tr><td>redemption</td><td>必須</td><td>額面100あたりの償還価額</td><td>通常は <code>100</code></td></tr><tr><td>frequency</td><td>必須</td><td>年間利払い回数</td><td><code>1</code>/<code>2</code>/<code>4</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="toc3">各引数の詳細</span></h3>



<p class="wp-block-paragraph"><strong>settlement（決済日）とmaturity（満期日）</strong></p>



<p class="wp-block-paragraph">settlementは「実際に代金を払って受渡しをする日」です。約定日と混同しがちですが、約定日ではなく決済日を入れます。maturityは「元本が償還される最終日」で、settlementより後ろの日付でなければエラーになります。</p>



<p class="wp-block-paragraph">日付は必ず<code>DATE</code>関数で生成するのが安全です。文字列で <code>"2031/5/6"</code> と直接渡してもふつうは動きます。ただしロケール（地域設定）依存で危険なので避けましょう。</p>



<p class="wp-block-paragraph"><strong>rate（クーポン率）とyld（利回り）</strong></p>



<p class="wp-block-paragraph">rateは年利クーポン率、yldは年利回り（YTM、最終利回り）です。どちらも年率で入力します。半年利払いだからといって半分にする必要はありませんよ。</p>



<p class="wp-block-paragraph">rateとyldは%表記でも小数表記でも構いません。マイナス値を入れると#NUM!エラーになります。</p>



<p class="wp-block-paragraph"><strong>redemption（償還価額）</strong></p>



<p class="wp-block-paragraph">額面100あたりの償還価額です。通常はパー償還で <code>100</code> を入れます。額面割れで償還されるケース（コーラブル債等）は別の関数を使うことが多いので、PRICEでは100を基本にしてください。</p>



<p class="wp-block-paragraph"><strong>frequency（利払頻度）</strong></p>



<p class="wp-block-paragraph">年間の利払い回数で、<strong>1（年1回）／2（半年に1回）／4（四半期に1回）</strong>の3択のみです。月次(12)や日次を入れると#NUM!エラーになりますので注意してください。</p>



<p class="wp-block-paragraph"><strong>basis（日数計算基準）</strong></p>



<p class="wp-block-paragraph">クーポン期間の日数の数え方を指定します。省略すると0（30/360方式）が使われます。詳しくは次の表で整理します。</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（米国NASD方式）</td><td>米国社債、簡易計算</td></tr><tr><td>1</td><td>実日数/実日数（Actual/Actual）</td><td>米国財務省証券（米国債）</td></tr><tr><td>2</td><td>実日数/360</td><td>一部マネー市場</td></tr><tr><td>3</td><td>実日数/365</td><td>一部円建て商品</td></tr><tr><td>4</td><td>30/360（欧州方式）</td><td>ユーロ債</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実務では「米国債=1、米国社債=0、ユーロ債=4」を覚えておくと迷いません。日本国債は実日数ベースの慣行ですが、Excel上の簡易計算では<code>0</code>や<code>3</code>を使うケースが多いですよ。</p>



<h2 class="wp-block-heading"><span id="toc4">基本的な使い方｜半年利払い社債の価格を計算する</span></h2>



<p class="wp-block-paragraph">実際にPRICE関数を使ってみましょう。次のような米国社債タイプの債券を想定します。</p>



<ul class="wp-block-list"><li>決済日: 2026年5月6日</li><li>満期日: 2031年5月6日（残存5年）</li><li>クーポン率: 4%（年率）</li><li>利回り（YTM）: 3.5%（年率）</li><li>償還価額: 100（パー償還）</li><li>利払頻度: 半年に1回（frequency=2）</li><li>日数計算基準: 30/360（basis=0）</li></ul>



<p class="wp-block-paragraph">セルへの入力例は次のようになります。</p>



<pre class="wp-block-code"><code>=PRICE(DATE(2026,5,6), DATE(2031,5,6), 4%, 3.5%, 100, 2, 0)</code></pre>



<p class="wp-block-paragraph">結果は <strong>102.275</strong>（額面100あたり）が返ります。クーポン4%が利回り3.5%を上回っているため、額面より高いプレミアム価格になっていますね。</p>



<h3 class="wp-block-heading"><span id="toc5">額面換算の仕方</span></h3>



<p class="wp-block-paragraph">PRICEの戻り値は「100あたり」の数値です。実際の取引額面が違う場合は、額面金額を100で割って掛け算します。</p>



<p class="wp-block-paragraph">たとえば額面1,000,000円の社債であれば、クリーン価格は次のように計算します。</p>



<pre class="wp-block-code"><code>取引価格 = PRICE結果 × 額面 / 100
        = 102.275 × 1,000,000 / 100
        = 1,022,750円</code></pre>



<h3 class="wp-block-heading"><span id="toc6">パー価格の確認</span></h3>



<p class="wp-block-paragraph">「クーポン率＝利回り」のときはパー価格（100ぴったり）になります。同じ5年社債で利回りも4%にして検算してみましょう。</p>



<pre class="wp-block-code"><code>=PRICE(DATE(2026,5,6), DATE(2031,5,6), 4%, 4%, 100, 2, 0)
→ 100.000</code></pre>



<p class="wp-block-paragraph">きれいに100が返ってきますね。これは「投資家が要求する利回り＝発行体が支払うクーポン率」のときに価格は額面と一致するという債券の基本原則を表しています。PRICE関数がこの原則を忠実に再現していることが確認できますよ。</p>



<h3 class="wp-block-heading"><span id="toc7">内部計算式（理解を深めたい人向け）</span></h3>



<p class="wp-block-paragraph">クーポン期日に一致する受渡日（端数日数なし）の場合、PRICEの計算は次の式と一致します。</p>



<pre class="wp-block-code"><code>PRICE = Σ(k=1→n) [(rate × 100 / freq) / (1 + yld/freq)^k]
      + redemption / (1 + yld/freq)^n</code></pre>



<p class="wp-block-paragraph">ケース1の数値で確認すると、半年クーポン2.0が10回（5年×2）と償還100の現在価値合計が102.275となり、PRICE関数の戻り値と一致します。手計算と関数の整合が取れていれば、安心して実務で使えますよ。</p>



<h2 class="wp-block-heading"><span id="toc8">クリーン価格とダーティ価格の違い｜経過利子の扱い</span></h2>



<p class="wp-block-paragraph">PRICE関数を使う上で必ず押さえたいのが「クリーン価格」と「ダーティ価格」の違いです。</p>



<h3 class="wp-block-heading"><span id="toc9">クリーン価格 vs ダーティ価格</span></h3>



<ul class="wp-block-list"><li><strong>クリーン価格</strong>: 経過利子（Accrued Interest、前回利払日から受渡日までに発生した利息）を<strong>含まない</strong>価格</li><li><strong>ダーティ価格</strong>: クリーン価格 + 経過利子（実際の取引で支払う総額）</li></ul>



<p class="wp-block-paragraph">PRICE関数が返すのはクリーン価格です。市場での実際の取引代金は「ダーティ価格」になるため、両者の違いを理解していないと実務で必ず混乱します。</p>



<h3 class="wp-block-heading"><span id="toc10">経過利子の計算</span></h3>



<p class="wp-block-paragraph">経過利子は次の式で計算できます。</p>



<pre class="wp-block-code"><code>経過利子（額面100ベース） = 100 × rate × (経過日数 / 年日数)</code></pre>



<p class="wp-block-paragraph">たとえば、額面100・クーポン4%・前回利払日から3ヶ月経過したケースでは次のとおりです。</p>



<pre class="wp-block-code"><code>経過利子 = 100 × 4% × (3 / 12) = 1.0</code></pre>



<h3 class="wp-block-heading"><span id="toc11">ACCRINT関数で自動計算する</span></h3>



<p class="wp-block-paragraph">経過利子は手計算でも出せますが、ExcelのACCRINT関数を使えば自動で算出できます。構文は次の通りです。</p>



<pre class="wp-block-code"><code>=ACCRINT(発行日, 直前利払日, 受渡日, rate, par, frequency, [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>クリーン価格（100あたり）</td><td>C2</td><td><code>=PRICE(...)</code></td><td>102.275</td></tr><tr><td>経過利子（100あたり）</td><td>C3</td><td><code>=ACCRINT(...)</code></td><td>1.000</td></tr><tr><td>ダーティ価格（100あたり）</td><td>C4</td><td><code>=C2+C3</code></td><td>103.275</td></tr><tr><td>取引価格（額面1,000,000）</td><td>C5</td><td><code>=C4*1000000/100</code></td><td>1,032,750</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">PRICE単体では実取引価格になりません。ここを誤解すると、社内説明や決済額の計算でズレが出るので注意しましょう。</p>



<h2 class="wp-block-heading"><span id="toc12">実務での活用例3パターン｜国債・社債・既発債の中途売買</span></h2>



<p class="wp-block-paragraph">PRICE関数の活用シーンを3つ紹介します。どれも筆者が実務で見かける典型例です。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン1: 日本国債の落札利回りから参考価格を計算</span></h3>



<p class="wp-block-paragraph">入札で5年国債（クーポン1.5%）を落札利回り1.0%で取得した場合、参考価格をPRICEで試算します。</p>



<pre class="wp-block-code"><code>=PRICE(DATE(2026,5,6), DATE(2031,5,6), 1.5%, 1.0%, 100, 2, 0)
→ 102.433</code></pre>



<p class="wp-block-paragraph">クーポン1.5%が利回り1.0%を上回っているため、額面100あたり102.43のプレミアム価格になります。額面1億円なら取得参考価格は約1億243万円です。</p>



<h3 class="wp-block-heading"><span id="toc14">パターン2: 米国社債の購入判断</span></h3>



<p class="wp-block-paragraph">10年米国社債（クーポン5%）を市場利回り6%で買付するケースです。</p>



<pre class="wp-block-code"><code>=PRICE(DATE(2026,5,6), DATE(2036,5,6), 5%, 6%, 100, 2, 0)
→ 92.561</code></pre>



<p class="wp-block-paragraph">利回りがクーポンを上回っているため、価格は92.56のディスカウント水準になります。「金利が上がると価格が下がる」という債券の基本原則がPRICEの数値で確認できますね。</p>



<h3 class="wp-block-heading"><span id="toc15">パターン3: 利回り感応度シミュレーション（投資判断）</span></h3>



<p class="wp-block-paragraph">同じ債券でYTMを変化させ、価格がどう動くかを表化すると投資判断に役立ちます。5年・4%クーポン・半年利払いのケースで作成すると次のようになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>利回り(YTM)</th><th>PRICE関数結果</th><th>パー(100)からの乖離</th></tr></thead><tbody><tr><td>3.0%</td><td>104.611</td><td>+4.61%</td></tr><tr><td>3.5%</td><td>102.275</td><td>+2.28%</td></tr><tr><td>4.0%</td><td>100.000</td><td>0.00%</td></tr><tr><td>4.5%</td><td>97.783</td><td>-2.22%</td></tr><tr><td>5.0%</td><td>95.624</td><td>-4.38%</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">利回り0.5%の上昇で価格は約-2.22%動きます。この「利回り変化に対する価格変化」がまさに修正デュレーション（MDuration）が示す感応度です。詳しい解説はシリーズ記事の<a href="https://mashukabu.com/excel-mduration-function/">ExcelのMDURATION関数の使い方</a>を参照してくださいね。</p>



<h2 class="wp-block-heading"><span id="toc16">PRICE × YIELD × DURATION × MDURATIONの関係</span></h2>



<p class="wp-block-paragraph">債券評価の財務関数は単独で使うより、組み合わせると威力を発揮します。4つの関数の関係を整理しましょう。</p>



<h3 class="wp-block-heading"><span id="toc17">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>PRICE</strong></td><td>利回り</td><td>価格</td><td>利回りから理論価格を出す</td></tr><tr><td><strong>YIELD</strong></td><td>価格</td><td>利回り</td><td>取引価格から利回りを逆算</td></tr><tr><td><strong>DURATION</strong></td><td>利回り</td><td>マコーレー年限</td><td>キャッシュフローの加重平均年限</td></tr><tr><td><strong>MDURATION</strong></td><td>利回り</td><td>修正デュレーション</td><td>利回り変化に対する価格感応度</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc18">PRICE↔YIELDの双方向検算</span></h3>



<p class="wp-block-paragraph">PRICE と YIELD は互いに逆関数の関係にあります。検算してみましょう。</p>



<p class="wp-block-paragraph">ケース1の債券（5年・4%・半年・パー償還）で利回り3.5%を入れたPRICE結果は102.275でした。今度は逆に、価格102.275から利回りを逆算します。</p>



<pre class="wp-block-code"><code>=YIELD(DATE(2026,5,6), DATE(2031,5,6), 4%, 102.275, 100, 2, 0)
→ 0.035（=3.5%）</code></pre>



<p class="wp-block-paragraph">入力した利回りと一致しますね。これでPRICEとYIELDの計算ロジックが整合していることを自分の手で確認できます。</p>



<h3 class="wp-block-heading"><span id="toc19">DURATION/MDURATIONによる価格感応度の確認</span></h3>



<p class="wp-block-paragraph">5年・4%・パー価格(YTM=4%)の債券で、利回りを0.5%上昇させたときの価格変化を見ます。</p>



<ul class="wp-block-list"><li>PRICE関数: 100.000 → 97.783（変化率 <strong>-2.22%</strong>）</li><li>MDURATIONによる一次近似: -MDuration × Δy = -4.411 × 0.5% = <strong>-2.21%</strong></li></ul>



<p class="wp-block-paragraph">ほぼ一致しますね。差の0.01%は二次以降の項（コンベクシティ）によるものです。詳しい話は<a href="https://mashukabu.com/excel-mduration-function/">ExcelのMDURATION関数の使い方</a>の記事を参照してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc20">シリーズで使う流れ</span></h3>



<ol class="wp-block-list"><li><strong>DURATION</strong>で加重平均年限を確認 → 投資の長さの感覚をつかむ</li><li><strong>MDURATION</strong>で価格感応度を確認 → リスク量を把握する</li><li><strong>PRICE</strong>で具体的な理論価格を算出 → 取引判断に使う</li><li><strong>YIELD</strong>で逆算検算 → 整合性チェック</li></ol>



<p class="wp-block-paragraph">このフローで4関数を組み合わせると、債券評価の自己整合性が確保されますよ。</p>



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



<p class="wp-block-paragraph">PRICE関数で発生しやすいエラーと対処法を整理します。</p>



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



<p class="wp-block-paragraph">最も多いエラーです。次のいずれかが原因です。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>settlement ≧ maturity</td><td>maturityを後ろの日付に修正</td></tr><tr><td>rate < 0 または yld < 0</td><td>負の値は不可。クーポン・利回りを正の値に</td></tr><tr><td>redemption ≦ 0</td><td>通常は100を入れる</td></tr><tr><td>frequency が 1, 2, 4 以外</td><td>月次(12)等は不可。1/2/4のいずれかに</td></tr><tr><td>basis が 0〜4 以外</td><td>0〜4の整数を指定</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">settlementやmaturityが日付として認識されていないことが原因です。文字列ではなく<code>DATE</code>関数で生成しましょう。</p>



<pre class="wp-block-code"><code>誤: =PRICE(&quot;2026-05-06&quot;, &quot;2031-05-06&quot;, 4%, 3.5%, 100, 2, 0)
正: =PRICE(DATE(2026,5,6), DATE(2031,5,6), 4%, 3.5%, 100, 2, 0)</code></pre>



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



<p class="wp-block-paragraph">Excel 2003以前で「分析ツール」アドインが読み込まれていない場合に発生します。Excel 2007以降は標準搭載なので、ほぼ気にしなくて大丈夫ですよ。</p>



<h3 class="wp-block-heading"><span id="toc25">結果がおかしい（理論価格と乖離する）</span></h3>



<p class="wp-block-paragraph">エラーは出ないが値が想定と違う場合は、次を確認してください。</p>



<ul class="wp-block-list"><li>frequencyの取り違え（半年なのに1を入れている等）</li><li>basisの選択が用途と違う（米国債なのにbasis=0を使う等）</li><li>利回りのスケール（%入力か小数入力か）</li></ul>



<p class="wp-block-paragraph">特にbasisは結果を細かく動かすため、米国社債/米国債/ユーロ債の使い分けに注意しましょう。</p>



<h2 class="wp-block-heading"><span id="toc26">まとめ｜PRICE関数で債券評価の入り口を押さえる</span></h2>



<p class="wp-block-paragraph">ExcelのPRICE関数は、定期的に利息を支払う債券の理論価格を1関数で算出できる便利な財務関数です。本記事のポイントを整理します。</p>



<ul class="wp-block-list"><li>PRICE関数は<strong>利回りから価格を返す</strong>関数で、戻り値は額面100あたりのクリーン価格</li><li>7つの引数のうち重要なのは<strong>settlement / maturity / rate / yld / frequency</strong>の5つ</li><li>frequencyは<strong>1/2/4のみ</strong>、basisは0〜4で米国/欧州/日本債の慣行に合わせる</li><li>実取引では<strong>ダーティ価格＝クリーン価格＋経過利子</strong>になる点に注意</li><li>YIELD・DURATION・MDURATION と組み合わせて使うと、債券評価の自己整合性が確認できる</li></ul>



<p class="wp-block-paragraph">債券は「価格と利回りの逆方向の関係」を理解した上で、関数で素早く検算する習慣をつけると実務がぐっと楽になります。同シリーズの<a href="https://mashukabu.com/excel-duration-function/">ExcelのDURATION関数の使い方</a>・<a href="https://mashukabu.com/excel-mduration-function/">ExcelのMDURATION関数の使い方</a>・<a href="https://mashukabu.com/excel-fvschedule-function/">ExcelのFVSCHEDULE関数の使い方</a>もあわせて読んで、財務関数を体系的に身につけてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-price-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのACCRINT関数の使い方｜定期利付債の経過利息</title>
		<link>https://mashukabu.com/spreadsheet-accrint-function/</link>
					<comments>https://mashukabu.com/spreadsheet-accrint-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 21 Apr 2026 14:38:03 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ACCRINT関数]]></category>
		<category><![CDATA[債券]]></category>
		<category><![CDATA[利付国債]]></category>
		<category><![CDATA[社債]]></category>
		<category><![CDATA[経過利息]]></category>
		<category><![CDATA[財務関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6161</guid>

					<description><![CDATA[スプレッドシートのACCRINT関数の使い方を、構文から実務例・basis比較・ダーティプライス計算・ACCRINTMとの使い分け・エラー対処・FAQまで丁寧に解説。社債や利付国債の途中売買、期末の未収利息計上に必要な経過利息を一発で計算できますよ。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「決算期をまたいで社債を売買したんだけど、経過利息っていくら乗せればいいんだっけ？」と聞かれたとき、サッと数字を出せると経理や財務の現場で頼りにされますよね。債券を途中売買する際に必要な経過利息の計算は、スプレッドシートのACCRINT関数を使えば一発で答えが出せますよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのACCRINT関数の使い方を、構文から実務の活用例・basis別の結果比較・ACCRINTM関数との使い分け・ダーティプライス計算・FAQまで、同僚に教える感覚で解説します。定期利付債（クーポン債）の途中売買や期末の未収利息計上にぜひ活用してくださいね。</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">スプレッドシートのACCRINT関数とは？</a><ol><li><a href="#toc2" tabindex="0">経過利息（Accrued Interest）とは</a></li><li><a href="#toc3" tabindex="0">どんな業務シーンで使うか</a></li></ol></li><li><a href="#toc4" tabindex="0">ACCRINT関数の構文と引数</a><ol><li><a href="#toc5" tabindex="0">日数計算基準（basis）の設定値</a></li><li><a href="#toc6" tabindex="0">計算方法（calc_method）の使い分け</a></li></ol></li><li><a href="#toc7" tabindex="0">ACCRINT関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">半年払い社債の経過利息を求める</a></li><li><a href="#toc9" tabindex="0">年1回払い利付国債の経過利息を求める</a></li><li><a href="#toc10" tabindex="0">四半期払い社債（frequency=4）の経過利息を求める</a></li><li><a href="#toc11" tabindex="0">basis指定で結果がどう変わるか</a></li></ol></li><li><a href="#toc12" tabindex="0">経過利息の意味をつかむ</a><ol><li><a href="#toc13" tabindex="0">「日割り利息」として読む</a></li><li><a href="#toc14" tabindex="0">購入価格への反映（Dirty Priceの考え方）</a></li><li><a href="#toc15" tabindex="0">手計算とACCRINT結果を検算する</a></li></ol></li><li><a href="#toc16" tabindex="0">ACCRINTM（満期一括払い）との使い分け</a><ol><li><a href="#toc17" tabindex="0">2つの関数の違いを整理</a></li><li><a href="#toc18" tabindex="0">実務での使い分け（目論見書での見分け方）</a></li></ol></li><li><a href="#toc19" tabindex="0">途中売買時の受渡金額を計算する</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></ol></li><li><a href="#toc27" tabindex="0">Excelとの互換性</a></li><li><a href="#toc28" tabindex="0">関連する財務関数</a></li><li><a href="#toc29" tabindex="0">ACCRINT関数に関するよくある質問（FAQ）</a><ol><li><a href="#toc30" tabindex="0">Q. ACCRINTとACCRINTMはどう使い分けますか？</a></li><li><a href="#toc31" tabindex="0">Q. frequency に 12（月1回）は指定できますか？</a></li><li><a href="#toc32" tabindex="0">Q. basis は何を選べばよいですか？</a></li><li><a href="#toc33" tabindex="0">Q. calc_method を FALSE にすべきケースは？</a></li><li><a href="#toc34" tabindex="0">Q. ACCRINTの結果と取引明細書の経過利息が合わないのはなぜ？</a></li><li><a href="#toc35" tabindex="0">Q. 半年払いと年1回払いで経過日数が同じなら結果も同じですか？</a></li><li><a href="#toc36" tabindex="0">Q. Excel と Google スプレッドシートで結果が違うことはありますか？</a></li><li><a href="#toc37" tabindex="0">Q. 期末の未収利息計上にも使えますか？</a></li></ol></li><li><a href="#toc38" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">スプレッドシートのACCRINT関数は、<strong>定期的に利息を支払う利付債について、発行日から決済日までの経過利息（Accrued Interest）を計算する財務関数</strong>です。</p>



<p class="wp-block-paragraph">経過利息とは、前回の利払日（または発行日）から次回の利払日までの間で、保有期間に応じて日割りで発生している未払い利息のことです。債券を利払日以外の日に売買するとき、買い手は売り手に対して「売り手が保有していた期間分の利息」を上乗せして支払うのが商習慣になっているんですよ。</p>



<p class="wp-block-paragraph">ACCRINT関数は、この経過利息を額面・利率・保有期間から自動計算してくれる関数です。社債・利付国債・地方債の途中売買や、期末の未収収益計上の場面でよく使いますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">経過利息（Accrued Interest）とは</span></h3>



<p class="wp-block-paragraph">経過利息は、債券保有期間に応じて発生する「日割りの未払い利息」のことです。クーポン（利息）は半年ごとや年1回などまとめて支払われますが、利払日と利払日の間でも利息は毎日少しずつ積み上がっています。</p>



<p class="wp-block-paragraph">途中売買時には「売り手の保有期間分の利息」を買い手が立て替えて支払い、次の利払日で買い手がクーポンを丸ごと受け取って差し引き精算する、という仕組みになっていますよ。</p>



<h3 class="wp-block-heading"><span id="toc3">どんな業務シーンで使うか</span></h3>



<p class="wp-block-paragraph">ACCRINT関数は次のような実務で活躍します。</p>



<ul class="wp-block-list"><li>社債や利付国債を<strong>利払日以外の日に売買</strong>するときの経過利息計算</li><li>期末決算で<strong>未収利息を計上</strong>するときの金額算出</li><li>取引明細書に記載された経過利息の<strong>検算</strong></li><li>ダーティプライス（実際の受渡金額）を求めるための部品計算</li></ul>



<p class="wp-block-paragraph">経理・財務担当だけでなく、証券会社のミドル/バックオフィスや、社債を保有する個人投資家の検算用途にも便利ですよ。</p>



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



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



<pre class="wp-block-code"><code>=ACCRINT(発行日, 初回利払日, 決済日, 利率, 額面, 頻度, [日数計算基準], [計算方法])</code></pre>



<p class="wp-block-paragraph">英語表記だと <code>=ACCRINT(issue, first_interest, settlement, rate, redemption, frequency, [day_count_convention], [calc_method])</code> となります。</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>債券の発行日。DATE関数での指定を推奨</td></tr><tr><td>初回利払日（first_interest）</td><td>必須</td><td>最初のクーポン支払日</td></tr><tr><td>決済日（settlement）</td><td>必須</td><td>経過利息を計算する基準日（受渡日）</td></tr><tr><td>利率（rate）</td><td>必須</td><td>債券の年利クーポン率（例: 0.03 = 年3%）</td></tr><tr><td>額面（redemption）</td><td>必須</td><td>債券の額面金額（例: 1000000 = 100万円）</td></tr><tr><td>頻度（frequency）</td><td>必須</td><td>年あたりの利払い回数（1, 2, 4のいずれか）</td></tr><tr><td>日数計算基準（basis）</td><td>省略可</td><td>1年の日数計算方式（下表参照、省略時は0）</td></tr><tr><td>計算方法（calc_method）</td><td>省略可</td><td>TRUE=発行日から（既定）、FALSE=直近利払日から</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">頻度（frequency）は「1=年1回払い」「2=半年ごと」「4=四半期ごと」の3種類のみです。上記以外の値を指定すると#NUM!エラーになりますよ。</p>



<h3 class="wp-block-heading"><span id="toc5">日数計算基準（basis）の設定値</span></h3>



<p class="wp-block-paragraph">basisは「分子の経過日数」と「分母の年間日数」をどう数えるかを決める引数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>値</th><th>1年の日数計算</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>米国短期金融商品</td></tr><tr><td>3</td><td>実際の日数/365日</td><td>一部の社債・スワップ</td></tr><tr><td>4</td><td>30日/360日（ヨーロッパ方式）</td><td>欧州債券</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">日本の国債や社債なら <strong>basis=1（実際/実際）</strong> を選ぶのが基本です。米国の短期金融商品なら basis=2 が一般的ですよ。対象債券の目論見書で使われている方式を確認するのが安全です。</p>



<h3 class="wp-block-heading"><span id="toc6">計算方法（calc_method）の使い分け</span></h3>



<p class="wp-block-paragraph">第8引数の計算方法（calc_method）は、決済日が初回利払日より後にある場合に、経過利息の起算点を切り替える引数です。</p>



<figure class="wp-block-table"><table><thead><tr><th>値</th><th>起算点</th><th>用途</th></tr></thead><tbody><tr><td>TRUE（省略時）</td><td>発行日から決済日まで</td><td>発行直後の途中売買</td></tr><tr><td>FALSE</td><td>直近の利払日から決済日まで</td><td>利払後の途中売買</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">通常の途中売買では省略（TRUE）で問題ありません。FALSEを指定するケースは稀なので、迷ったら既定のままで大丈夫ですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc8">半年払い社債の経過利息を求める</span></h3>



<p class="wp-block-paragraph">額面100万円・年利クーポン3%・半年ごと利払い・2026年4月1日発行の社債を、2026年7月31日に決済するケースを計算してみましょう。</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>2026/4/1</td></tr><tr><td>B3</td><td>初回利払日</td><td>2026/10/1</td></tr><tr><td>B4</td><td>決済日</td><td>2026/7/31</td></tr><tr><td>B5</td><td>クーポン利率</td><td>0.03</td></tr><tr><td>B6</td><td>額面</td><td>1000000</td></tr><tr><td>B7</td><td>頻度（半年）</td><td>2</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">結果は <strong>約9,945円</strong> になります。発行日（4/1）から決済日（7/31）までの121日分が、年利3%・額面100万円に対する経過利息として計算されますよ（1,000,000 × 0.03 × 121/365 ≒ 9,945）。</p>



<p class="wp-block-paragraph">直接日付を入れる場合はDATE関数（指定した年月日からシリアル値を生成する関数）を使います。</p>



<pre class="wp-block-code"><code>=ACCRINT(DATE(2026,4,1), DATE(2026,10,1), DATE(2026,7,31), 0.03, 1000000, 2, 1)</code></pre>



<h3 class="wp-block-heading"><span id="toc9">年1回払い利付国債の経過利息を求める</span></h3>



<p class="wp-block-paragraph">額面1000万円・年利1.2%・年1回利払い・2026年4月1日発行の利付国債を、2026年10月1日に決済するケースです。</p>



<pre class="wp-block-code"><code>=ACCRINT(DATE(2026,4,1), DATE(2027,4,1), DATE(2026,10,1), 0.012, 10000000, 1, 1)</code></pre>



<p class="wp-block-paragraph">結果は <strong>約60,164円</strong> になります。発行日から半年経過しているので、年利1.2%の半分に近い金額が経過利息として発生している計算ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">四半期払い社債（frequency=4）の経過利息を求める</span></h3>



<p class="wp-block-paragraph">米ドル建て社債では四半期払い（frequency=4）の銘柄も多いので、こちらも見ておきましょう。額面50万円・年利4%・四半期払い・2026年4月1日発行で、2026年5月15日に決済するケースです。</p>



<pre class="wp-block-code"><code>=ACCRINT(DATE(2026,4,1), DATE(2026,7,1), DATE(2026,5,15), 0.04, 500000, 4, 1)</code></pre>



<p class="wp-block-paragraph">結果は <strong>約2,411円</strong> になります。発行から44日経過なので、500,000 × 0.04 × 44/365 ≒ 2,411円という日割り計算と一致しますよ。</p>



<h3 class="wp-block-heading"><span id="toc11">basis指定で結果がどう変わるか</span></h3>



<p class="wp-block-paragraph">同じ条件でも、日数計算基準（basis）を変えると結果が少し変わります。半年払い社債（額面100万円・利率3%・発行4/1・決済7/31）で比較してみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>basis</th><th>結果の概算</th><th>特徴</th></tr></thead><tbody><tr><td>0（30日/360日・米国）</td><td>10,000円</td><td>月を30日固定で計算</td></tr><tr><td>1（実際/実際）</td><td>9,945円</td><td>日本の債券で一般的</td></tr><tr><td>2（実際/360日）</td><td>10,083円</td><td>分子は実日数・分母360日</td></tr><tr><td>3（実際/365日）</td><td>9,945円</td><td>閏年も365日扱い</td></tr><tr><td>4（30日/360日・欧州）</td><td>10,000円</td><td>欧州方式</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数千円単位の差ですが、額面が大きくなると無視できない金額になります。取引先との契約書や目論見書に記載された日数計算基準に合わせて指定してくださいね。</p>



<h2 class="wp-block-heading"><span id="toc12">経過利息の意味をつかむ</span></h2>



<h3 class="wp-block-heading"><span id="toc13">「日割り利息」として読む</span></h3>



<p class="wp-block-paragraph">ACCRINT関数が返す値は「発行日（または直近利払日）から決済日までに発生した利息」です。<strong>額面 × 年利 × 経過日数 ÷ 年間日数</strong> という日割り計算が基本式ですよ。</p>



<p class="wp-block-paragraph">たとえば額面100万円・年利3%の債券を、発行から121日経った時点で売買する場合、経過利息は次の式で計算できます。</p>



<pre class="wp-block-code"><code>1,000,000 × 0.03 × 121/365 ≒ 9,945円</code></pre>



<p class="wp-block-paragraph">ACCRINT関数はこの計算を、頻度や日数計算基準を踏まえて自動化してくれるわけですね。</p>



<p class="wp-block-paragraph">直感的には「売り手が保有していた期間分の利息を、買い手が立て替えて払う」と覚えてください。次の利払日が来ると買い手は1回分のクーポンを丸ごと受け取れるので、差額で売り手の期間分を回収する仕組みですよ。</p>



<h3 class="wp-block-heading"><span id="toc14">購入価格への反映（Dirty Priceの考え方）</span></h3>



<p class="wp-block-paragraph">債券の取引価格には2つの概念があります。</p>



<figure class="wp-block-table"><table><thead><tr><th>用語</th><th>意味</th><th>計算</th></tr></thead><tbody><tr><td>クリーンプライス（Clean Price）</td><td>経過利息を含まない価格</td><td>新聞・気配値で表示される価格</td></tr><tr><td>ダーティプライス（Dirty Price）</td><td>実際に支払う価格</td><td>クリーンプライス + 経過利息</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実際の受渡金額は、<strong>ダーティプライス = クリーンプライス + ACCRINTで計算した経過利息</strong> で求めます。社債の売買明細書に「経過利息」として別行で記載されるのが、まさにACCRINT関数の計算結果ですよ。</p>



<h3 class="wp-block-heading"><span id="toc15">手計算とACCRINT結果を検算する</span></h3>



<p class="wp-block-paragraph">ACCRINTの結果が正しいかどうか不安なときは、簡易な手計算で検算してみましょう。検算の手順は3ステップです。</p>



<ol class="wp-block-list"><li>経過日数を数える（決済日 − 発行日 または 直近利払日）</li><li>額面 × 年利 × 経過日数 ÷ 年間日数（basis=1なら365）で概算する</li><li>ACCRINT結果と突き合わせる</li></ol>



<p class="wp-block-paragraph">たとえば半年払い社債（額面100万円・年利3%・basis=1）で発行4/1・決済7/31の場合、経過日数は121日、概算は <code>1,000,000 × 0.03 × 121/365 ≒ 9,945円</code> でACCRINT結果と一致します。</p>



<p class="wp-block-paragraph">basisを変えると分母（年間日数）や分子（経過日数の数え方）が変わるので、検算式も合わせて変えてくださいね。30/360方式（basis=0や4）では「経過月数を30日換算」して数えるので、4月1日から7月31日なら「3か月+30日 = 120日」として扱います。</p>



<h2 class="wp-block-heading"><span id="toc16">ACCRINTM（満期一括払い）との使い分け</span></h2>



<h3 class="wp-block-heading"><span id="toc17">2つの関数の違いを整理</span></h3>



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



<figure class="wp-block-table"><table><thead><tr><th>観点</th><th>ACCRINT関数</th><th>ACCRINTM関数</th></tr></thead><tbody><tr><td>対象債券</td><td>定期利付債（クーポン債）</td><td>満期一括払い債</td></tr><tr><td>利払方式</td><td>年1/2/4回の定期利払い</td><td>満期時に元本と一括</td></tr><tr><td>引数の数</td><td>6〜8個</td><td>4〜5個</td></tr><tr><td>頻度指定</td><td>あり（1, 2, 4）</td><td>なし</td></tr><tr><td>主な用途</td><td>社債・利付国債の途中売買</td><td>割引債・CD（譲渡性預金）の経過利息</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">ACCRINTM関数の構文はシンプルで、頻度の指定がありません。</p>



<pre class="wp-block-code"><code>=ACCRINTM(発行日, 満期日, 利率, 額面, [日数計算基準])</code></pre>



<h3 class="wp-block-heading"><span id="toc18">実務での使い分け（目論見書での見分け方）</span></h3>



<p class="wp-block-paragraph">実務での選び方は次のとおりです。</p>



<ul class="wp-block-list"><li><strong>ACCRINT関数</strong>: 定期的にクーポンを受け取る社債・利付国債・地方債の途中売買時</li><li><strong>ACCRINTM関数</strong>: 満期時に利息と元本をまとめて受け取るCD・割引短期債の経過利息</li></ul>



<p class="wp-block-paragraph"><strong>対象債券の利払方式で選び分ける</strong>のが基本ですよ。目論見書や社債要項に「利息は年2回払い」「クーポン半年ごと」と書いてあればACCRINT、「満期時に一括償還」「ゼロクーポン」と書いてあればACCRINTMと判断すれば大丈夫です。</p>



<p class="wp-block-paragraph">迷ったときは引数の数も目印になります。frequency（頻度）の指定が必要ならACCRINT、不要ならACCRINTMという見分け方ができますよ。</p>



<h2 class="wp-block-heading"><span id="toc19">途中売買時の受渡金額を計算する</span></h2>



<h3 class="wp-block-heading"><span id="toc20">ダーティプライス計算の完全例</span></h3>



<p class="wp-block-paragraph">ACCRINT関数を使うと、債券を途中売買するときの実際の受渡金額をきれいに計算できます。基本式は次のとおりです。</p>



<pre class="wp-block-code"><code>受渡金額 = 額面 × クリーンプライス率 + ACCRINT(経過利息)</code></pre>



<p class="wp-block-paragraph">額面100万円・クリーンプライス99.50（=額面の99.50%）・経過利息9,945円のケースで見てみましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>金額</th></tr></thead><tbody><tr><td>額面</td><td>1,000,000円</td></tr><tr><td>クリーンプライス（99.50）</td><td>995,000円</td></tr><tr><td>経過利息（ACCRINT）</td><td>9,945円</td></tr><tr><td><strong>受渡金額（ダーティプライス）</strong></td><td><strong>1,004,945円</strong></td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>買い手が実際に支払う金額は1,004,945円</strong>、売り手が受け取る金額も同じ1,004,945円です。この経過利息9,945円の部分が、ACCRINT関数で一瞬で算出できるわけですよ。</p>



<p class="wp-block-paragraph">スプレッドシート上では次のように組み合わせると便利です。</p>



<pre class="wp-block-code"><code>=B6*B8/100 + ACCRINT(B2, B3, B4, B5, B6, B7, 1)</code></pre>



<p class="wp-block-paragraph">B6に額面、B8にクリーンプライス率（例: 99.50）を入れておけば、受渡金額が一発で出ますよ。</p>



<h3 class="wp-block-heading"><span id="toc21">期末未収利息の仕訳イメージ</span></h3>



<p class="wp-block-paragraph">期末決算で未収利息を計上する場合も同じ考え方です。期末時点の決済日でACCRINTを計算すれば、「発行日から期末までに発生している未収利息」がそのまま計上額として使えます。</p>



<p class="wp-block-paragraph">仕訳イメージは次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>借方</th><th>貸方</th></tr></thead><tbody><tr><td>未収収益（B/S資産） 9,945</td><td>受取利息（P/L収益） 9,945</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">翌期に実際にクーポンが入金されたら未収収益を消し込みます。期末ごとにACCRINTの結果をシートに残しておくと、監査対応のときも検算がスムーズですよ。</p>



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



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



<p class="wp-block-paragraph">以下のケースで発生します。</p>



<figure class="wp-block-table"><table><thead><tr><th>発生条件</th><th>対処法</th></tr></thead><tbody><tr><td>発行日 ≥ 決済日</td><td>発行日が決済日より前になるよう修正する</td></tr><tr><td>頻度が 1, 2, 4 以外</td><td>1、2、4のいずれかに修正する</td></tr><tr><td>basis が 0〜4 以外</td><td>0、1、2、3、4のいずれかに修正する</td></tr><tr><td>利率が0以下</td><td>正の利率を指定する</td></tr><tr><td>額面が0以下</td><td>正の額面を指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">よくあるのが<strong>頻度の指定ミス</strong>です。月1回払いを想定して「12」を入れるとエラーになりますよ。ACCRINT関数は年1回・半年・四半期の3パターンしか対応していません。</p>



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



<p class="wp-block-paragraph">引数に数値・日付以外の文字列が入っている場合に発生します。日付は <code>DATE(2026,4,1)</code> のようにDATE関数で指定するのが確実ですよ。セル参照で日付を渡す場合は、参照先のセルが日付書式になっているかも確認してください。</p>



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



<p class="wp-block-paragraph">関数名のスペルミスが原因です。「ACCRINT」の打ち間違いや、ACCRINTMと混同するケースがよくありますよ。入力中に候補から選ぶようにすると防げます。対象債券の利払方式に合っているか、引数の数（ACCRINT=6〜8個、ACCRINTM=4〜5個）で見分けてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc26">結果が想定より大きい・小さい</span></h3>



<p class="wp-block-paragraph">日数計算基準（basis）の指定を間違えているケースがほとんどです。日本の債券で basis=0（30/360方式）を使うと、実日数ベースの想定と数百円〜数千円ズレることがありますよ。目論見書に合わせて basis を指定し直してみてください。</p>



<p class="wp-block-paragraph">頻度（frequency）と実際の利払い回数がズレているケースもあります。半年払いなのに frequency=1 を指定すると、内部計算でクーポン期間配分が変わって結果がブレますよ。</p>



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



<p class="wp-block-paragraph">ACCRINT関数はExcelとGoogleスプレッドシートで同じ計算結果を返します。Excelファイル（.xlsx）をスプレッドシートで開いても関数はそのまま動作しますよ。</p>



<p class="wp-block-paragraph">スプレッドシートでは引数名が日本語で表示されます。Excelの英語表記（<code>issue</code>、<code>first_interest</code>、<code>settlement</code>、<code>rate</code>、<code>redemption</code>、<code>frequency</code>、<code>basis</code>、<code>calc_method</code>）と見た目は違いますが、動作は完全に同じです。</p>



<p class="wp-block-paragraph">ACCRINTM関数も同様にExcel・スプレッドシート間で互換性があります。両方の環境で同じ分析ファイルを使えるので、チーム内で経過利息の計算ロジックを統一しやすいですよ。</p>



<h2 class="wp-block-heading"><span id="toc28">関連する財務関数</span></h2>



<p class="wp-block-paragraph">ACCRINT関数は、同じ債券分析シリーズの関数と組み合わせて使う場面が多い関数です。それぞれの位置づけを整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>用途</th></tr></thead><tbody><tr><td>ACCRINT関数</td><td>定期利付債の経過利息</td></tr><tr><td>ACCRINTM関数</td><td>満期一括払い債の経過利息</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-yield-function/">YIELD関数</a></td><td>定期利付債の利回り</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a></td><td>定期利付債の理論価格（クリーンプライス）</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a></td><td>定期利付債の加重平均回収期間</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実務でよくある流れは、「<a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>で理論クリーンプライスを計算 → ACCRINT関数で経過利息を計算 → 合算してダーティプライスを出す」という組み合わせですよ。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-yield-function/">YIELD関数</a>で利回りを逆算したり、<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>で金利リスクを測ったりと、財務関数シリーズはセットで使うと威力を発揮します。</p>



<h2 class="wp-block-heading"><span id="toc29">ACCRINT関数に関するよくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc30">Q. ACCRINTとACCRINTMはどう使い分けますか？</span></h3>



<p class="wp-block-paragraph">対象債券の利払方式で判断します。定期利払債（年1/2/4回のクーポンあり）ならACCRINT、満期一括払い債（ゼロクーポン・CDなど）ならACCRINTMです。目論見書に「年2回利払い」とあればACCRINT、「満期時に一括償還」とあればACCRINTMと覚えてくださいね。</p>



<h3 class="wp-block-heading"><span id="toc31">Q. frequency に 12（月1回）は指定できますか？</span></h3>



<p class="wp-block-paragraph">できません。frequencyは 1（年1回）/ 2（半年）/ 4（四半期）の3種類のみです。12を指定すると #NUM! エラーになりますよ。月1回払いの債券はACCRINT関数では正確にカバーできないので、手計算かカスタム関数で対応してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc32">Q. basis は何を選べばよいですか？</span></h3>



<p class="wp-block-paragraph">日本の国債・社債なら 1（実際/実際）が基本です。米国短期金融商品では 2（実際/360日）が一般的ですよ。最終的には目論見書や社債要項に記載された日数計算基準に従うのが安全です。迷ったら basis=1 から試して、結果が取引明細書と合うか確認してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc33">Q. calc_method を FALSE にすべきケースは？</span></h3>



<p class="wp-block-paragraph">直近利払日後の途中売買で、起算点を「直近利払日」にしたい場合だけです。通常はTRUE（既定）で問題なく、99%のケースは省略でOKですよ。FALSEを使う場面はかなり限定的なので、迷ったら省略してください。</p>



<h3 class="wp-block-heading"><span id="toc34">Q. ACCRINTの結果と取引明細書の経過利息が合わないのはなぜ？</span></h3>



<p class="wp-block-paragraph">basisの不一致がほぼ原因です。日本社債で basis=0（30/360）を使うと、実日数ベースの取引明細書の数字と数日分ズレますよ。目論見書記載の方式に変更して再計算してみてください。それでも合わない場合は、起算点（calc_methodの設定）や経過日数の数え方も確認してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc35">Q. 半年払いと年1回払いで経過日数が同じなら結果も同じですか？</span></h3>



<p class="wp-block-paragraph">ほぼ同じですが、basisとfrequencyにより内部のクーポン期間配分が変わるため、わずかにズレることがあります。日割り計算の基本式は同じですが、ACCRINT関数の内部処理ではクーポン区間ごとに按分しているので、頻度違いで微差が出るんですよ。</p>



<h3 class="wp-block-heading"><span id="toc36">Q. Excel と Google スプレッドシートで結果が違うことはありますか？</span></h3>



<p class="wp-block-paragraph">ありません。同じ引数を与えれば完全に同じ結果が返ります。引数の順序・名称も共通なので、Excelで作った財務モデルをそのままスプレッドシートに移しても問題なく動きますよ。</p>



<h3 class="wp-block-heading"><span id="toc37">Q. 期末の未収利息計上にも使えますか？</span></h3>



<p class="wp-block-paragraph">使えます。決済日に期末日（例: 3/31）を指定すれば、「発行日から期末までに発生した未収利息」が得られますよ。仕訳は「未収収益／受取利息」で計上し、翌期の利払日に消し込みます。監査対応用にACCRINT結果をシートに残しておくと検算がスムーズですよ。</p>



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



<p class="wp-block-paragraph">スプレッドシートのACCRINT関数は、定期利付債の経過利息を計算する財務関数です。ポイントをまとめておきます。</p>



<ul class="wp-block-list"><li>引数は<strong>発行日・初回利払日・決済日・利率・額面・頻度</strong>の6つが必須。basisとcalc_methodは省略可</li><li>頻度（frequency）は <strong>1, 2, 4 のいずれか</strong>（年1回/半年/四半期）のみ</li><li>返す値は「発行日から決済日までに発生した利息額」。日割り計算が基本</li><li><strong>ダーティプライス = クリーンプライス + ACCRINT</strong> で受渡金額を計算できる</li><li>日本の債券なら <strong>basis=1（実際/実際）</strong> が目安</li><li><strong>ACCRINTM関数とは別物</strong>。定期利払い債ならACCRINT、満期一括払い債ならACCRINTM</li><li>Excel・スプレッドシート間で完全互換。関数名・引数順序も共通</li></ul>



<p class="wp-block-paragraph">債券の途中売買や期末の未収利息計上では、経過利息の計算がどうしても必要になります。ACCRINT関数を使いこなせるようになると、取引明細書の検算や仕訳額の計算がグッとラクになりますよ。</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-price-function/">PRICE関数</a>や<a href="https://mashukabu.com/spreadsheet-yield-function/">YIELD関数</a>・<a href="https://mashukabu.com/spreadsheet-duration-function/">DURATION関数</a>とあわせて、財務関数シリーズを一通りチェックしておくと、債券分析の基礎が整いますね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-accrint-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
