<?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/%e6%95%b0%e5%ad%a6%e7%b3%bb%e9%96%a2%e6%95%b0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Wed, 29 Apr 2026 11:25:15 +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>数学系関数 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのERF関数の使い方｜誤差関数（Error Function）を解説</title>
		<link>https://mashukabu.com/spreadsheet-erf-function/</link>
					<comments>https://mashukabu.com/spreadsheet-erf-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Wed, 29 Apr 2026 11:25:15 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[ERF関数]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[数学系関数]]></category>
		<category><![CDATA[正規分布]]></category>
		<category><![CDATA[統計]]></category>
		<category><![CDATA[誤差関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6363</guid>

					<description><![CDATA[GoogleスプレッドシートのERF関数（誤差関数）の使い方を初心者向けに解説。構文・引数・上限省略時の挙動・正規分布との関係をインライン換算表付きで説明。ERFC・ERF.PRECISEの補足も。]]></description>
										<content:encoded><![CDATA[
<p>品質管理や統計処理の業務をしていて、「この測定値が誤差の範囲内かどうか、数値で示してほしい」と頼まれた経験はありませんか。</p>



<p>正規分布を前提とした確率計算や、工学系の公式をそのまま再現したいときに登場するのが、スプレッドシートの<strong>ERF関数（誤差関数）</strong>です。エンジニアリング関数の一種ですが、名前を聞いただけで身構えてしまう方も多いはず。</p>



<p>この記事では、ERF関数の構文・使い方・正規分布との関係を、できるだけ数式に頼らず「同僚に教えてあげる感覚」で解説します。Excelで使ったことがある方も、スプレッドシート固有の挙動を改めて確認できる内容にしています。</p>



<p>最後まで読めば、<code>=ERF(下限, 上限)</code> の引数の意味が腹落ちします。上限を省略したときの挙動や <code>#VALUE!</code> エラーの原因も、自分で判断できるようになります。</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">ERF関数とは何か｜誤差関数の基本</a><ol><li><a href="#toc2" tabindex="0">誤差関数（Error Function）の直感的な意味</a></li><li><a href="#toc3" tabindex="0">どんな場面で使うのか</a></li></ol></li><li><a href="#toc4" tabindex="0">ERF関数の構文と引数</a><ol><li><a href="#toc5" tabindex="0">基本構文：=ERF(下限, [上限])</a></li><li><a href="#toc6" tabindex="0">上限を省略したときの挙動｜よくある誤解</a></li><li><a href="#toc7" tabindex="0">引数に数値以外を入れた場合（#VALUE!エラー）</a></li></ol></li><li><a href="#toc8" tabindex="0">ERF関数の使い方｜基本例と応用例</a><ol><li><a href="#toc9" tabindex="0">1引数で使う（=ERF(1) など）</a></li><li><a href="#toc10" tabindex="0">2引数で区間を指定する（=ERF(-2.3, -0.7) など）</a></li><li><a href="#toc11" tabindex="0">スプレッドシートでの入力手順（スクリーンショット付き）</a></li></ol></li><li><a href="#toc12" tabindex="0">ERF値と正規分布の関係を数式なしで理解する</a><ol><li><a href="#toc13" tabindex="0">ERF値→確率換算インライン表</a></li><li><a href="#toc14" tabindex="0">NORM.DISTとERFの使い分け</a></li></ol></li><li><a href="#toc15" tabindex="0">関連関数｜ERFC・ERF.PRECISE・NORM.DIST</a><ol><li><a href="#toc16" tabindex="0">ERFC（余誤差関数）との関係</a></li><li><a href="#toc17" tabindex="0">ERF.PRECISEとERFの違い</a></li></ol></li><li><a href="#toc18" tabindex="0">エラーと対処法</a><ol><li><a href="#toc19" tabindex="0">#VALUE!エラーの原因と解決策</a></li></ol></li><li><a href="#toc20" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ERF関数とは何か｜誤差関数の基本</span></h2>



<p>まずは「ERF関数とは何者か」を、難しい数式は後回しにしてざっくり押さえておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc2">誤差関数（Error Function）の直感的な意味</span></h3>



<p>ERFは「Error Function（誤差関数）」の略で、数学的には次のように定義される特殊関数です。</p>



<pre class="wp-block-code"><code>erf(x) = (2/√π) × ∫₀ˣ e^(-t²) dt</code></pre>



<p>数式だけ見ると難しそうですが、直感的には「<strong>平均ゼロ・ある幅で散らばる誤差が、−x〜+x の範囲に収まる確率を表す関数</strong>」と捉えると理解しやすいです。</p>



<p>シグモイド（S字）形状を持ち、xが大きくなるほど 1 に漸近します。確率論・統計学・物質科学・偏微分方程式など、幅広い分野で使われる「非初等関数」です。</p>



<p>要するに、<strong>正規分布の積分計算を一発で済ませてくれる関数</strong>だと思っておけば実務では十分です。</p>



<h3 class="wp-block-heading"><span id="toc3">どんな場面で使うのか</span></h3>



<p>ERF関数を使う典型的な場面は、次のようなケースです。</p>



<ul class="wp-block-list"><li>工学・物理系の公式に <code>erf(x)</code> がそのまま登場する場合</li><li>標準正規分布における確率を、上限と下限の両方を指定して求めたい場合</li><li>品質管理で「測定誤差が ±σ の範囲に収まる確率」を理論値として計算したい場合</li><li>拡散方程式や熱伝導の解析解にERFを組み込む必要がある場合</li></ul>



<p>逆に、平均と標準偏差を指定して確率を出したいだけなら、後述する <code>NORM.DIST</code> のほうが直感的に使えます。ERFは「<strong>工学・数学の文脈で使われる、ちょっと低レベル寄りの関数</strong>」と覚えておくとよいでしょう。</p>



<p>数学系・エンジニアリング関数の入り口として、<a href="https://mashukabu.com/spreadsheet-power-function/">スプレッドシートのPOWER関数の使い方｜べき乗</a>もあわせて確認しておくと、関数の立ち位置がイメージしやすくなります。</p>



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



<p>ERF関数の構文はとてもシンプルです。引数は最大2つ、最小1つ。これだけ覚えれば動かせます。</p>



<h3 class="wp-block-heading"><span id="toc5">基本構文：=ERF(下限, [上限])</span></h3>



<p>公式ヘルプに記載されている構文は次のとおりです。</p>



<pre class="wp-block-code"><code>=ERF(下限, [上限])</code></pre>



<ul class="wp-block-list"><li><strong>下限</strong>（必須）：積分の下限値（数値）</li><li><strong>上限</strong>（省略可）：積分の上限値（数値）</li></ul>



<p>引数を2つ指定した場合は「下限値 〜 上限値」の範囲でガウス誤差関数を積分した値を返します。引数が1つだけの場合は、後述するとおり「0 〜 下限値」の範囲で積分されます。</p>



<p>公式サンプルでは、<code>=ERF(1)</code> の戻り値は <code>0.8427007929</code>、<code>=ERF(-2.3, -0.7)</code> の戻り値は <code>0.3210556296</code> です。スプレッドシート上で実際に入力すると、同じ結果が返ってきます。</p>



<h3 class="wp-block-heading"><span id="toc6">上限を省略したときの挙動｜よくある誤解</span></h3>



<p>ここがERF関数で一番つまずきやすいポイントです。</p>



<p>上限を省略した <code>=ERF(a)</code> は、<strong>「0 〜 a の範囲で積分」した値を返します</strong>。つまり <code>=ERF(a)</code> と <code>=ERF(0, a)</code> は同じ結果になります。</p>



<p>よくある誤解は次の3パターンです。</p>



<figure class="wp-block-table"><table><thead><tr><th>誤解</th><th>実際の挙動</th></tr></thead><tbody><tr><td>「省略すると 0 〜 ∞ で積分される」</td><td>違います。0 〜 下限値 で積分されます</td></tr><tr><td>「省略すると −∞ 〜 下限値 で積分される」</td><td>違います。基点はあくまで 0 です</td></tr><tr><td>「省略すると下限値だけの値が返る（積分しない）」</td><td>違います。積分は必ず行われます</td></tr></tbody></table></figure>



<p>「省略時の基点はゼロ」と覚えてしまえば迷いません。下限値が負の数のときは符号が反転して負の値が返ります。結果の正負を見るだけで、挙動をすぐに確認できます。</p>



<h3 class="wp-block-heading"><span id="toc7">引数に数値以外を入れた場合（#VALUE!エラー）</span></h3>



<p>ERF関数の引数に数値以外（文字列など）を渡すと、<code>#VALUE!</code> エラーになります。</p>



<pre class="wp-block-code"><code>=ERF(&quot;a&quot;)        →  #VALUE!
=ERF(1, &quot;high&quot;)  →  #VALUE!</code></pre>



<p>セル参照を使うときは、参照先のセルが文字列や空白になっていないか確認してください。詳しい対処は記事後半の「エラーと対処法」で解説します。</p>



<h2 class="wp-block-heading"><span id="toc8">ERF関数の使い方｜基本例と応用例</span></h2>



<p>ここからは実際にスプレッドシートに数式を入れて、結果を見ていきましょう。</p>



<h3 class="wp-block-heading"><span id="toc9">1引数で使う（=ERF(1) など）</span></h3>



<p>まずは引数を1つだけ指定するパターンです。</p>



<pre class="wp-block-code"><code>=ERF(0.5)   →  0.5204998778
=ERF(1)     →  0.8427007929
=ERF(1.5)   →  0.9661051465
=ERF(2)     →  0.9953222650</code></pre>



<p>xが大きくなるにつれて 1 に近づいていくのがよくわかります。これが「シグモイド形状」と呼ばれる理由で、xが2を超えるとほぼ 1 に張り付きます。</p>



<p>負の値を入れると、戻り値も負になります。誤差関数は奇関数（<code>erf(-x) = -erf(x)</code>）なので、左右対称な挙動を示します。</p>



<pre class="wp-block-code"><code>=ERF(-1)    →  -0.8427007929
=ERF(-0.5)  →  -0.5204998778</code></pre>



<h3 class="wp-block-heading"><span id="toc10">2引数で区間を指定する（=ERF(-2.3, -0.7) など）</span></h3>



<p>引数を2つ指定すると、その区間の積分値が返ります。</p>



<pre class="wp-block-code"><code>=ERF(-2.3, -0.7)  →  0.3210556296
=ERF(0, 1)        →  0.8427007929
=ERF(-1, 1)       →  1.6854015858</code></pre>



<p><code>=ERF(-1, 1)</code> の値が <code>2 × ERF(1)</code> になっていることに注目してください。ERFは奇関数なので、対称な区間では「片側の2倍」になります。</p>



<p>実務でよく使うのは「<strong>ある測定値が μ−aσ 〜 μ+aσ の範囲に収まる確率</strong>」を出すパターンです。これは <code>=ERF(a/SQRT(2))</code> で計算できます（後述）。</p>



<h3 class="wp-block-heading"><span id="toc11">スプレッドシートでの入力手順（スクリーンショット付き）</span></h3>



<p>スプレッドシートでERF関数を入力する手順は、ほかの関数とまったく同じです。</p>



<ol class="wp-block-list"><li>結果を表示したいセルを選択する</li><li>半角イコール（<code>=</code>）を入力する</li><li><code>ERF(</code> まで打つと候補が表示されるので、Tabキーで補完する</li><li>下限値、必要に応じてカンマ区切りで上限値を入力する</li><li><code>)</code> で閉じてEnterで確定</li></ol>



<p>サンプルデータを使って試してみましょう。A列に下限、B列に上限を入れておき、C列に <code>=ERF(A2, B2)</code> を入力する形が応用しやすいです。</p>



<figure class="wp-block-table"><table><thead><tr><th>A列（下限）</th><th>B列（上限）</th><th>C列（数式）</th><th>結果</th></tr></thead><tbody><tr><td>0</td><td>1</td><td>=ERF(A2, B2)</td><td>0.8427007929</td></tr><tr><td>-1</td><td>1</td><td>=ERF(A3, B3)</td><td>1.6854015858</td></tr><tr><td>-2.3</td><td>-0.7</td><td>=ERF(A4, B4)</td><td>0.3210556296</td></tr><tr><td>1</td><td>（空欄）</td><td>=ERF(A5)</td><td>0.8427007929</td></tr></tbody></table></figure>



<p>B列を空欄にした場合は、<code>=ERF(A5)</code> のように1引数で書く必要があります。<code>=ERF(A5, B5)</code> のままB5を空欄にすると、<code>#VALUE!</code> エラーになるので注意してください。</p>



<h2 class="wp-block-heading"><span id="toc12">ERF値と正規分布の関係を数式なしで理解する</span></h2>



<p>ここがこの記事のメインディッシュです。「ERFの値って結局なに？」という疑問を、確率の言葉に翻訳します。</p>



<h3 class="wp-block-heading"><span id="toc13">ERF値→確率換算インライン表</span></h3>



<p>標準正規分布の累積分布関数 Φ(x) と誤差関数の関係は、次の式で表されます。</p>



<pre class="wp-block-code"><code>Φ(x) = (1/2) × [1 + erf(x/√2)]</code></pre>



<p>つまり、<code>=ERF(x/SQRT(2))</code> を計算すれば、「<strong>平均±x×標準偏差の範囲に収まる確率</strong>」がわかります。</p>



<p>代表的な値を表にまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>x（標準偏差の倍数）</th><th>=ERF(x) の値</th><th>=ERF(x/SQRT(2)) の値</th><th>±xσ 範囲に収まる確率</th></tr></thead><tbody><tr><td>0.5</td><td>0.5205</td><td>0.3829</td><td>約 38.3%</td></tr><tr><td>0.8</td><td>0.7421</td><td>0.5763</td><td>約 57.6%</td></tr><tr><td>1.0</td><td>0.8427</td><td>0.6827</td><td>約 68.3%</td></tr><tr><td>1.5</td><td>0.9661</td><td>0.8664</td><td>約 86.6%</td></tr><tr><td>2.0</td><td>0.9953</td><td>0.9545</td><td>約 95.5%</td></tr></tbody></table></figure>



<p>統計の教科書でおなじみの「±1σ で約68%、±2σ で約95%」という数字が、ERFの値からそのまま導けることが確認できます。</p>



<p>「ERF(1) = 0.8427」だけだと意味がピンと来ませんが、「<code>=ERF(1/SQRT(2))</code> ≒ 0.6827 = 約68.3%」と読み替えると、急に身近な数字に見えてきますね。</p>



<h3 class="wp-block-heading"><span id="toc14">NORM.DISTとERFの使い分け</span></h3>



<p>正規分布の確率を出すだけなら、スプレッドシートには <code>NORM.DIST</code> というもっと使いやすい関数があります。両者の関係は次のとおりです。</p>



<pre class="wp-block-code"><code>=NORM.DIST(x, 0, 1, TRUE) = (1/2) × (1 + ERF(x/SQRT(2)))</code></pre>



<p>実務での使い分け基準は次のように整理できます。</p>



<ul class="wp-block-list"><li><strong>平均・標準偏差を直接指定して確率を出したい</strong> → <code>NORM.DIST</code> を使う</li><li><strong>工学系の公式に erf(x) がそのまま登場する</strong> → <code>ERF</code> を使う</li><li><strong>下限と上限の両方を指定して区間積分したい</strong> → <code>ERF</code> を使うのが楽</li><li><strong>片側確率や両側確率を出したい</strong> → <code>NORM.DIST</code> のほうが直感的</li></ul>



<p>迷ったら <code>NORM.DIST</code> を選んでおいて問題ありません。ERFは「工学系の数式をそのまま実装する」ための関数だと割り切ると、使い分けがシンプルになります。</p>



<p>確率分布まわりの関数を体系的に押さえたい方は、<a href="https://mashukabu.com/spreadsheet-gamma-inv-function/">スプレッドシートのGAMMA.INV関数の使い方｜ガンマ分布逆関数</a>もあわせて読んでみてください。</p>



<h2 class="wp-block-heading"><span id="toc15">関連関数｜ERFC・ERF.PRECISE・NORM.DIST</span></h2>



<p>ERF関数を理解したら、ファミリー関数も一緒に押さえておくと業務の幅が広がります。</p>



<h3 class="wp-block-heading"><span id="toc16">ERFC（余誤差関数）との関係</span></h3>



<p>ERFC（相補誤差関数、Complementary Error Function）は、ERFと次の関係にあります。</p>



<pre class="wp-block-code"><code>ERFC(x) = 1 - ERF(x)</code></pre>



<p>つまり「ERFが捉えきれなかった残り」を返す関数です。スプレッドシートでも <code>=ERFC(x)</code> の形で使えます。</p>



<pre class="wp-block-code"><code>=ERF(1)   →  0.8427007929
=ERFC(1)  →  0.1572992071</code></pre>



<p>合計するとピッタリ 1 になることが確認できます。「裾の確率（テール確率）を出したい」場面では、<code>1 - ERF(x)</code> と書くより <code>ERFC(x)</code> のほうがシンプルです。</p>



<h3 class="wp-block-heading"><span id="toc17">ERF.PRECISEとERFの違い</span></h3>



<p><code>ERF.PRECISE</code> は、Excel 2010 で互換性関数として追加された関数で、Googleスプレッドシートでも使えます。</p>



<p>両者の違いは次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>引数の数</th><th>動作</th></tr></thead><tbody><tr><td>ERF</td><td>1個または2個</td><td>1個なら 0〜下限値、2個なら下限値〜上限値で積分</td></tr><tr><td>ERF.PRECISE</td><td>1個のみ</td><td>常に 0〜下限値 で積分</td></tr></tbody></table></figure>



<p>つまり、<strong>引数1個で使うかぎり <code>=ERF(x)</code> と <code>=ERF.PRECISE(x)</code> はまったく同じ結果</strong>になります。</p>



<pre class="wp-block-code"><code>=ERF(1)          →  0.8427007929
=ERF.PRECISE(1)  →  0.8427007929</code></pre>



<p>実務では <code>ERF</code> で統一しておけば困りません。<code>ERF.PRECISE</code> は「Excel 2010で追加された名前」と覚えておけば十分です。</p>



<p>エンジニアリング関数つながりで、<a href="https://mashukabu.com/excel-function-howto-use-imsum/">【Excel】IMSUM関数を使って指定した複素数の合計を求める</a>や<a href="https://mashukabu.com/spreadsheet-delta-function/">スプレッドシートのDELTA関数の使い方｜等値判定</a>も、合わせて押さえておくと工学・数学系の関数群をシリーズで習得できます。</p>



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



<p>ERF関数で発生する代表的なエラーは <code>#VALUE!</code> だけなので、対処は比較的シンプルです。</p>



<h3 class="wp-block-heading"><span id="toc19">#VALUE!エラーの原因と解決策</span></h3>



<p><code>#VALUE!</code> が出る主な原因は次の3つです。</p>



<pre class="wp-block-code"><code>=ERF(&quot;hello&quot;)       →  #VALUE!（文字列を渡した）
=ERF(A1)            →  #VALUE!（A1が文字列の場合）
=ERF(1, B1)         →  #VALUE!（B1が文字列または数値変換不可の場合）</code></pre>



<p>対処の優先順位は次のとおりです。</p>



<ol class="wp-block-list"><li><strong>引数が数値か確認する</strong>：参照セルの中身を <code>=ISNUMBER(A1)</code> で確認</li><li><strong>空白セルの取り扱いを確認する</strong>：B列が空欄の行で <code>=ERF(A2, B2)</code> のように2引数で書いていないか</li><li><strong>小数点の表記揺れを確認する</strong>：CSV取り込み時に「3,14」のようなカンマ区切りになっていないか</li><li><strong>エラーハンドリングを追加する</strong>：<code>=IFERROR(ERF(A2, B2), "")</code> で空白セルを安全に処理</li></ol>



<p>複数行に数式を一気にコピーするときは、<code>IFERROR</code> で包んでおくと安心です。空白行があっても画面が <code>#VALUE!</code> だらけにならず、見た目がすっきりします。</p>



<pre class="wp-block-code"><code>=IFERROR(ERF(A2, B2), &quot;&quot;)</code></pre>



<p>なお、引数に極端に大きな値（例：<code>=ERF(10^10)</code>）を入れても、ERFは 1 に近い値を返すだけでエラーにはなりません。「数値であるかぎりエラーは起きない」と覚えておけば十分です。</p>



<p>スプレッドシートの基本操作に不安が残る方は、<a href="https://mashukabu.com/google-spreadsheet-beginner-guide/">スプレッドシート初心者のための完全ガイド</a>で基礎を押さえてから戻ってくると、関数の理解もスムーズになります。</p>



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



<p>スプレッドシートのERF関数は、誤差関数（ガウス関数の積分）を一発で計算してくれるエンジニアリング関数です。最後にポイントを振り返っておきましょう。</p>



<ul class="wp-block-list"><li>構文は <code>=ERF(下限, [上限])</code>。上限は省略可能で、省略すると「0 〜 下限値」で積分される</li><li><code>=ERF(1)</code> は約 0.8427、<code>=ERF(2)</code> は約 0.9953。xが大きくなるほど 1 に近づくシグモイド形状</li><li>標準正規分布との関係：<code>Φ(x) = (1/2) × [1 + erf(x/√2)]</code>。<code>=ERF(1/SQRT(2))</code> ≒ 0.6827 で「±1σ に約68%」が導ける</li><li>平均・標準偏差を直接指定して確率を出したいなら <code>NORM.DIST</code> のほうが楽。ERFは工学系の公式実装や区間指定で力を発揮する</li><li>関連関数：<code>ERFC(x) = 1 - ERF(x)</code>、<code>ERF.PRECISE(x)</code> は引数1個のERFと同じ結果</li><li>エラーは <code>#VALUE!</code> がほぼすべて。引数が数値かどうかを確認すれば解決する</li></ul>



<p>「正規分布の確率を出したい」「工学系の数式を再現したい」という場面に出くわしたら、まず <code>=ERF(x)</code> を試してみてください。値の意味さえ翻訳できれば、ERF関数は思ったより怖くない関数だと感じてもらえるはずです。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-erf-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
