<?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%AF%BE%E6%95%B0/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:19:36 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.1</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>スプレッドシートのIMLOG10関数の使い方｜複素数の常用対数を一発計算</title>
		<link>https://mashukabu.com/spreadsheet-imlog10-function/</link>
					<comments>https://mashukabu.com/spreadsheet-imlog10-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 14:24:03 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[IMLOG10]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6272</guid>

					<description><![CDATA[GoogleスプレッドシートのIMLOG10関数の使い方を解説。複素数（a+bi）の10を底とする常用対数を一発で求める基本構文、IMLN関数との関係（IMLN(z)/ln(10)）、主値の範囲、COMPLEX関数との連携、デシベル計算やpH解析など実務活用例、よくあるエラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「スプレッドシートで複素数の常用対数を出したいけど、毎回IMLNをln(10)で割る式を書くのが面倒&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで複素数を扱う場面では、log₁₀(a+bi) の値が必要になることがありますよね。デシベル計算やpH解析、地震マグニチュードのように「桁数」を直感的に扱う分野では、自然対数より10を底とする常用対数のほうがしっくりきます。でも、毎回 IMLN とLNを組み合わせて分母にln(10)を入れるのは、数式が読みづらくなりがちです。</p>



<p class="wp-block-paragraph">そんなときに頼りになるのがGoogleスプレッドシートのIMLOG10関数です。複素数を1つ渡すだけで「その複素数の10を底とする対数」を一発で返してくれますよ。デシベルやpHの数式が、ぐっとすっきりしますね。</p>



<p class="wp-block-paragraph">ExcelのIMLOG10関数と完全互換なので、Excelファイルとやり取りする現場でも安心です。COMPLEX関数で作った複素数や、<a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a>・<a href="https://mashukabu.com/spreadsheet-imlog2-function/">IMLOG2関数</a>と組み合わせた式からも、そのまま渡せますよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのIMLOG10関数の基本構文と実務での活用例を解説します。IMLNとの関係や、主値の範囲、よくあるエラーと対処法もしっかり紹介していきますね。</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">スプレッドシートのIMLOG10関数とは？</a></li><li><a href="#toc2" tabindex="0">IMLOG10関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li></ol></li><li><a href="#toc5" tabindex="0">IMLOG10関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列で複素数を直接指定する</a></li><li><a href="#toc7" tabindex="0">負の実数の対数を計算する</a></li><li><a href="#toc8" tabindex="0">セル参照で複素数を指定する</a></li><li><a href="#toc9" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc10" tabindex="0">ARRAYFORMULAで複数行を一括処理する</a></li></ol></li><li><a href="#toc11" tabindex="0">IMLOG10関数の実務活用例</a><ol><li><a href="#toc12" tabindex="0">活用例1: デシベル（dB）計算</a></li><li><a href="#toc13" tabindex="0">活用例2: ボード線図のデータを作る</a></li><li><a href="#toc14" tabindex="0">活用例3: IMLN関数との関係を確認する</a></li><li><a href="#toc15" tabindex="0">活用例4: pH・化学濃度の桁数表示</a></li><li><a href="#toc16" tabindex="0">活用例5: 地震マグニチュードや天文等級の桁スケール</a></li></ol></li><li><a href="#toc17" tabindex="0">IMLOG10関数とCOMPLEX関数群の関係</a></li><li><a href="#toc18" tabindex="0">IMLOG10関数のよくあるエラーと対処法</a><ol><li><a href="#toc19" tabindex="0">#NUM! エラー（複素数の形式エラー、または z=0）</a></li><li><a href="#toc20" tabindex="0">#VALUE! エラー（引数の型エラー）</a></li><li><a href="#toc21" tabindex="0">主値の範囲を超えた角度を期待してしまう問題</a></li><li><a href="#toc22" tabindex="0">IFERRORでまとめてエラーを吸収する</a></li></ol></li><li><a href="#toc23" tabindex="0">IMLOG10関数とExcelの互換性</a></li><li><a href="#toc24" tabindex="0">複素数関連の関数一覧</a></li><li><a href="#toc25" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG10関数は、複素数の10を底とする対数（log₁₀(z)）を返す関数です。エンジニアリング関数（電気・物理・工学系の計算で使う関数群）のひとつに分類されますよ。</p>



<p class="wp-block-paragraph">読み方は「イマジナリー・ログ・テン」または「アイエム・ログ・テン」です。英語の「imaginary（虚数の）」と「logarithm base 10（10を底とする対数）」を組み合わせた名前ですね。複素数「a+bi」の常用対数を、複素数として返してくれるのが役割です。</p>



<p class="wp-block-paragraph">複素数の常用対数は、自然対数を ln(10) で割り算した形で定義できます。具体的な式は次のとおりですよ。</p>



<pre class="wp-block-code"><code>log10(a+bi) = ln(a+bi) / ln(10)
           = log10(|a+bi|) + i × arg(a+bi) / ln(10)
           = log10(√(a²+b²)) + i × atan2(b, a) / ln(10)</code></pre>



<p class="wp-block-paragraph">実部は「絶対値の常用対数」、虚部は「偏角を ln(10) で割った値」となり、結果も複素数で返るのが特徴ですね。ln(10) は約2.3026なので、IMLN の結果に対しておよそ0.4343倍したものに相当します。</p>



<figure class="wp-block-table"><table><thead><tr><th>複素数（z）</th><th>IMLOG10(z)の結果</th><th>内部計算</th></tr></thead><tbody><tr><td>1+0i</td><td>0</td><td>log10(1) = 0</td></tr><tr><td>10+0i</td><td>1+0i</td><td>log10(10) = 1</td></tr><tr><td>100+0i</td><td>2+0i</td><td>log10(100) = 2</td></tr><tr><td>1000+0i</td><td>3+0i</td><td>log10(1000) = 3</td></tr><tr><td>-1+0i</td><td>0+1.3644i</td><td>log10(1) + i×π/ln(10)</td></tr><tr><td>0+1i</td><td>0+0.6822i</td><td>log10(1) + i×π/(2ln(10))</td></tr><tr><td>1+1i</td><td>0.1505+0.6822i</td><td>log10(√2) + i×(π/4)/ln(10)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG10関数を使えば、この表の右側にある「複素数の常用対数」をサクッと取り出せます。Excelとの互換性も完璧で、Excel 2007以降のすべてのバージョンに対応していますよ。</p>



<p class="wp-block-paragraph">複素数の常用対数は、デシベル計算・pH/化学濃度の解析・地震マグニチュード・周波数応答のボード線図・天文学の等級など、「桁数」のスケールが必要な場面で活躍します。「10倍するごとに1ずつ増える」という直感的なスケールが欲しい場面で、欠かせない基礎パーツですね。</p>



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



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



<pre class="wp-block-code"><code>=IMLOG10(複素数)</code></pre>



<p class="wp-block-paragraph">引数は1つで、常用対数を取りたい複素数を渡す形ですよ。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の詳細</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>複素数（inumber）</td><td>必須</td><td>常用対数を計算する複素数。文字列またはセル参照で指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には「&#8221;1+2i&#8221;」や「&#8221;1+2j&#8221;」のような複素数文字列を直接渡せます。COMPLEX関数（実数と虚数から複素数を作成する関数）の結果や、複素数が入ったセルの参照も指定できますよ。</p>



<p class="wp-block-paragraph">虚数単位は小文字の「i」または「j」のどちらでも受け付けます。数学では「i」、電気工学では「j」が使われる慣習ですね。IMLOG10関数はどちらでも同じように動作してくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>IMLOG10が返す虚部の範囲は -π/ln(10) < θ ≤ π/ln(10)、おおよそ -1.3644 < θ ≤ 1.3644 です。これは <a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a> の主値（-π〜π）を ln(10) で割った値に相当しますよ。覚えておきましょう。</p></blockquote>



<p class="wp-block-paragraph">引数に正の実数だけを渡せば、通常のLOG10関数と同じ結果になります。「IMLOG10(&#8220;1000&#8221;)」も「LOG10(1000)」もどちらも3ですね。違いは戻り値が複素数文字列になるか実数になるかだけですよ。</p>



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



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<h3 class="wp-block-heading"><span id="toc6">文字列で複素数を直接指定する</span></h3>



<p class="wp-block-paragraph">複素数文字列をそのまま引数に渡してみましょう。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;1+1i&quot;)</code></pre>



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



<p class="wp-block-paragraph">結果は「0.150514997831991+0.682188176920921i」になります。実部はlog₁₀(√2)≈0.1505、虚部は(π/4)/ln(10)≈0.6822ですね。</p>



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



<p class="wp-block-paragraph">正の実部だけの複素数を渡すと、通常のLOG10関数と同じ結果になります。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;1000&quot;)
=IMLOG10(&quot;1000+0i&quot;)</code></pre>



<p class="wp-block-paragraph">どちらも結果は約「3+0i」、つまり log₁₀(1000) = 3 ですよ。実数の世界の常用対数と一致しますね。</p>



<p class="wp-block-paragraph">純虚数を渡すと、結果は実部0で虚部が±π/(2ln(10))になります。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;0+1i&quot;)
=IMLOG10(&quot;0-1i&quot;)</code></pre>



<p class="wp-block-paragraph">前者は「0+0.6822&#8230;i」、後者は「0-0.6822&#8230;i」になりますよ。複素平面の縦軸に乗っている純虚数の偏角が、±π/(2ln(10))として返ってきますね。</p>



<h3 class="wp-block-heading"><span id="toc7">負の実数の対数を計算する</span></h3>



<p class="wp-block-paragraph">実数の世界では「負の数の対数は計算できない」とされますよね。複素数まで広げると、IMLOG10はちゃんと値を返してくれます。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;-1&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「0+1.36437635384184i」になりますよ。実部は0、虚部はπ/ln(10)となります。これは「-1 = 1 × e^(iπ)」を10底に直したものですね。LOG10(-1) はエラーになりますが、IMLOG10 なら計算できる点が便利なところです。</p>



<h3 class="wp-block-heading"><span id="toc8">セル参照で複素数を指定する</span></h3>



<p class="wp-block-paragraph">実務ではセルに入った複素数を扱う場面が多いですよね。A2に「1+1i」が入っている場合は次のように書きます。</p>



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



<p class="wp-block-paragraph">結果は「0.1505&#8230;+0.6822&#8230;i」になります。セル参照を渡すだけで、入っている複素数の常用対数を取り出せますよ。</p>



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



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



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX関数</a>で作った複素数を、その場でIMLOG10に渡すこともできます。</p>



<pre class="wp-block-code"><code>=IMLOG10(COMPLEX(1, 1))</code></pre>



<p class="wp-block-paragraph">結果は「0.1505&#8230;+0.6822&#8230;i」、つまり「IMLOG10(&#8220;1+1i&#8221;)」と同じですね。COMPLEX(1, 1)が内部で「1+1i」を作り、IMLOG10関数がその常用対数を返してくれます。</p>



<p class="wp-block-paragraph">数値で実部と虚部を渡したいときに便利な書き方ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">ARRAYFORMULAで複数行を一括処理する</span></h3>



<p class="wp-block-paragraph">複素数のリストに対して一気に常用対数の列を作りたい場面もありますよね。そんなときはARRAYFORMULA関数（数式を範囲全体に展開する関数）と組み合わせます。</p>



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



<p class="wp-block-paragraph">A列の複素数を順番に常用対数に変換して、対応する結果をB列に一発で展開できますよ。デシベル計算やpH解析を一括処理するときに重宝しますね。</p>



<h2 class="wp-block-heading"><span id="toc11">IMLOG10関数の実務活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc12">活用例1: デシベル（dB）計算</span></h3>



<p class="wp-block-paragraph">電気・音響工学では、信号の比をデシベルで表しますよね。電圧比なら 20×log₁₀(V₁/V₀)、電力比なら 10×log₁₀(P₁/P₀) という公式です。複素フェーザの比をそのままデシベル化したい場面で IMLOG10 が活躍しますよ。</p>



<p class="wp-block-paragraph">A列に複素電圧の比（V₁/V₀）が並んでいるとしましょう。</p>



<pre class="wp-block-code"><code>B2: =IMLOG10(A2)            ← 複素常用対数
C2: =IMREAL(B2)             ← log10(|V1/V0|)
D2: =20*C2                  ← 電圧ゲイン（dB）</code></pre>



<p class="wp-block-paragraph">D列がデシベルでの利得です。位相情報も保持したまま大きさをデシベル化できるので、ボード線図の数値テーブルを作るときに便利ですね。</p>



<h3 class="wp-block-heading"><span id="toc13">活用例2: ボード線図のデータを作る</span></h3>



<p class="wp-block-paragraph">周波数応答 H(jω) = R + jX を、周波数ごとにゲインと位相に分解する作業もすっきり書けますよ。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(R, X)              ← 周波数 ω での H(jω)
B2: =IMLOG10(A2)                ← 複素常用対数
C2: =20*IMREAL(B2)              ← ゲイン（dB）
D2: =DEGREES(IMARGUMENT(A2))    ← 位相（度）</code></pre>



<p class="wp-block-paragraph">C列がボード線図のゲイン軸、D列が位相軸の値になりますね。IMLOG10 を1つ挟むだけで、周波数応答からボード線図用のデータが整いますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">活用例3: IMLN関数との関係を確認する</span></h3>



<p class="wp-block-paragraph">IMLOG10関数は、内部的に「IMLN(z) ÷ ln(10)」と等価です。実際にスプレッドシートで確認してみましょう。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(1, 1)              ← z = 1+i
B2: =IMLOG10(A2)                ← 直接計算
C2: =IMDIV(IMLN(A2), COMPLEX(LN(10), 0))   ← IMLNから計算</code></pre>



<p class="wp-block-paragraph">B2とC2の値は一致して「0.1505&#8230;+0.6822&#8230;i」になりますよ。IMLOG10は IMLN の結果を ln(10) で割った形と同じだと、数式レベルで確認できますね。底の変換公式を理解する勉強用にも使える書き方です。</p>



<h3 class="wp-block-heading"><span id="toc15">活用例4: pH・化学濃度の桁数表示</span></h3>



<p class="wp-block-paragraph">化学では水素イオン濃度 [H⁺] から pH = -log₁₀([H⁺]) を求めますよね。シミュレーションで濃度を複素数として扱うケース（複素誘電率の解析など）でも、IMLOG10 で一気に処理できますよ。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(1E-7, 0)           ← [H+] = 1.0e-7
B2: =IMLOG10(A2)                ← 複素常用対数
C2: =-IMREAL(B2)                ← pH = -log10(|[H+]|)</code></pre>



<p class="wp-block-paragraph">C2は7になります。中性のpHですね。実数だけならLOG10で十分ですが、複素誘電率や交流インピーダンスを介した解析パイプラインに乗せるときは、IMLOG10 で型を揃えると見通しが良くなりますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">活用例5: 地震マグニチュードや天文等級の桁スケール</span></h3>



<p class="wp-block-paragraph">地震マグニチュード（M = log₁₀(A) + 補正項）や、星の等級（m = -2.5×log₁₀(F)）のように、対数スケールで「桁」を扱う指標は身近にたくさんあります。観測値の補正に複素数振幅が混じる解析でも、IMLOG10 がそのまま使えますよ。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(1.0E5, 0)          ← 観測振幅 A
B2: =IMLOG10(A2)                ← 桁スケール
C2: =IMREAL(B2)                 ← log10(A) の実部</code></pre>



<p class="wp-block-paragraph">A2が10万なら C2 は5になります。データ量が10倍になるごとに1ずつ増えるスケールが、シート上で直感的に確認できますね。複素数を扱わない単純なケースなら <code>=LOG10(A2)</code> でも構いません。複素数を含む解析パイプラインの中では、IMLOG10 で型を揃えるとシートが整いますよ。</p>



<h2 class="wp-block-heading"><span id="toc17">IMLOG10関数とCOMPLEX関数群の関係</span></h2>



<p class="wp-block-paragraph">複素数を扱う関数群の中で、IMLOG10関数の位置づけを整理しておきましょう。</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/spreadsheet-complex-function/">COMPLEX</a></td><td>実数 a, b</td><td>複素数 a+bi</td><td>複素数を作る</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数 a+bi</td><td>実数 a</td><td>実部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数 a+bi</td><td>実数 b</td><td>虚部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数 a+bi</td><td>実数 √(a²+b²)</td><td>大きさを取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数 a+bi</td><td>実数（ラジアン）</td><td>偏角を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imexp-function/">IMEXP</a></td><td>複素数 z</td><td>複素数 e^z</td><td>指数関数</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN</a></td><td>複素数 z</td><td>複素数 ln(z)</td><td>自然対数</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imlog2-function/">IMLOG2</a></td><td>複素数 z</td><td>複素数 log₂(z)</td><td>2を底とする対数</td></tr><tr><td>IMLOG10</td><td>複素数 z</td><td>複素数 log₁₀(z)</td><td>10を底とする対数</td></tr><tr><td>IMPOWER</td><td>複素数 z, 実数 n</td><td>複素数 z^n</td><td>べき乗</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG10関数とIMLN関数は「底の変換公式」でつながっています。「IMLOG10(z) = IMLN(z) / ln(10)」が数学的な関係ですよ。同様に <a href="https://mashukabu.com/spreadsheet-imlog2-function/">IMLOG2</a> は IMLN(z) / ln(2) と等価ですね。</p>



<p class="wp-block-paragraph">たとえば定義式どおりに log₁₀(a+bi) を手動で組み立てると次のようになります。</p>



<pre class="wp-block-code"><code>=COMPLEX(LOG10(SQRT(IMREAL(A2)^2+IMAGINARY(A2)^2)), ATAN2(IMREAL(A2), IMAGINARY(A2))/LN(10))</code></pre>



<p class="wp-block-paragraph">これはIMLOG10と同じ結果になりますが、絶対値と偏角を毎回手書きする必要がありますよね。IMLOG10を使えば1関数で済むので、数式が読みやすくなります。</p>



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



<h3 class="wp-block-heading"><span id="toc19">#NUM! エラー（複素数の形式エラー、または z=0）</span></h3>



<p class="wp-block-paragraph">複素数として認識できない文字列を渡したときや、ゼロを渡したときに発生します。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;1+1I&quot;)     → #NUM!（大文字のIは不可）
=IMLOG10(&quot;1+1k&quot;)     → #NUM!（i・j以外は不可）
=IMLOG10(&quot;1 + 1i&quot;)   → #NUM!（途中の空白は不可）
=IMLOG10(&quot;0&quot;)        → #NUM!（log10(0)は定義されない）
=IMLOG10(&quot;0+0i&quot;)     → #NUM!（同上）</code></pre>



<p class="wp-block-paragraph">対処法は2つあります。1つ目は、複素数文字列を必ず半角の「a+bi」または「a+bj」の形式にすることです。虚数単位は小文字限定なので、CapsLockがオンになっていないか確認してくださいね。</p>



<p class="wp-block-paragraph">2つ目は、ゼロを渡さないことです。実数の世界でlog₁₀(0)が定義されないのと同じく、複素数の世界でも0の対数は計算できません。入力データに0が混じる可能性がある場合は、後述のIFERROR対策を入れておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc20">#VALUE! エラー（引数の型エラー）</span></h3>



<p class="wp-block-paragraph">引数に論理値やエラー値を渡したときに発生します。</p>



<pre class="wp-block-code"><code>=IMLOG10(TRUE)       → #VALUE!（論理値は不可）
=IMLOG10(#N/A)       → #VALUE!（エラー値は不可）</code></pre>



<p class="wp-block-paragraph">対処法は、正しい複素数文字列または数値・セル参照を渡すことです。入力元のセルがエラーになっている場合は、そのエラーを先に解消する必要がありますよ。</p>



<h3 class="wp-block-heading"><span id="toc21">主値の範囲を超えた角度を期待してしまう問題</span></h3>



<p class="wp-block-paragraph">IMLOG10が返す虚部は -π/ln(10) < θ ≤ π/ln(10)、つまり約 -1.3644 < θ ≤ 1.3644 の主値だけです。これは <a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a> の主値 (-π, π] を ln(10) で割った値ですね。</p>



<pre class="wp-block-code"><code>=IMLOG10(&quot;0-1i&quot;)     → 0-0.6822i（-π/(2ln10)）</code></pre>



<p class="wp-block-paragraph">この複素数 -i は「3π/2 ラジアン回転した点」とも見なせますが、IMLOG10 はそのうち主値（-π/2 を ln(10) で割った値）を返します。連続的に偏角を追跡したい場面では、後段で「アンラップ処理」を実装する必要がある点に注意してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc22">IFERRORでまとめてエラーを吸収する</span></h3>



<p class="wp-block-paragraph">入力データの信頼性が低い場合や、ゼロが混じる可能性がある場合に備えておきたいですよね。そんなときはIFERROR関数（エラー時に代替値を返す関数）で包んでおきましょう。シート全体の集計が止まらず安心です。</p>



<pre class="wp-block-code"><code>=IFERROR(IMLOG10(A2), &quot;計算不可&quot;)</code></pre>



<p class="wp-block-paragraph">エラー時にメッセージを返すようにしておけば、安心して大量データに適用できますよ。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG10関数は、ExcelのIMLOG10関数と仕様が完全に一致しています。構文・引数・戻り値の形式・主値の範囲・エラー条件まで同じですよ。</p>



<p class="wp-block-paragraph">ExcelファイルをGoogleスプレッドシートで開いてもIMLOG10関数はそのまま動作します。逆にスプレッドシートで作った数式をExcelで開いても問題ありませんね。</p>



<p class="wp-block-paragraph">ExcelのIMLOG10関数は、Excel 2007以降のすべてのバージョンで利用できます。Microsoft 365、Excel for Mac、Excel Online でも同じように使えますよ。古いExcelファイルとの互換性も心配いりません。</p>



<h2 class="wp-block-heading"><span id="toc24">複素数関連の関数一覧</span></h2>



<p class="wp-block-paragraph">IMLOG10関数と一緒に使うことが多い、複素数関連の関数をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数と虚数から複素数を作成する</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数の実数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数の虚数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数の絶対値（大きさ）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数の偏角（角度）をラジアンで返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imconjugate-function/">IMCONJUGATE</a></td><td>共役複素数を返す</td></tr><tr><td>IMSUM</td><td>複素数の合計（足し算）を返す</td></tr><tr><td>IMSUB</td><td>複素数の差（引き算）を返す</td></tr><tr><td>IMPRODUCT</td><td>複素数の積（掛け算）を返す</td></tr><tr><td>IMDIV</td><td>複素数の商（割り算）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imexp-function/">IMEXP</a></td><td>複素数の指数関数（eべき乗）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN</a></td><td>複素数の自然対数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imlog2-function/">IMLOG2</a></td><td>複素数の2を底とする対数を返す</td></tr><tr><td>IMLOG10</td><td>複素数の10を底とする対数を返す</td></tr><tr><td>IMPOWER</td><td>複素数のべき乗を返す</td></tr><tr><td>IMSQRT</td><td>複素数の平方根を返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG10関数は、これら複素数関数群の中で「常用対数」を担う基本関数ですね。COMPLEXで複素数を作り、IMLOG10で常用対数値を求めるのが基本の流れです。最後はIMREAL・IMAGINARYで実部と虚部に分けて可視化しましょう。デシベル計算やボード線図、pH解析のシートを軽快に組み立てられますよ。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG10関数は、複素数の10を底とする対数（log₁₀(z)）を返す関数です。デシベル計算・ボード線図・pH解析・地震マグニチュード・天文等級など、「10倍ごとに1増える」直感的な桁スケールが欲しい場面で欠かせない関数ですよ。</p>



<ul class="wp-block-list"><li>構文は <code>=IMLOG10(複素数)</code> で複素数を1つ渡すだけ</li><li>「log10(a+bi) = ln(a+bi) / ln(10)」が内部計算式</li><li>実部は絶対値の常用対数、虚部は偏角を ln(10) で割った値になる</li><li>「a+bi」と「a+bj」のどちらの表記もそのまま受け付ける</li><li>虚部の主値は -π/ln(10) < θ ≤ π/ln(10)（約 -1.3644 〜 1.3644）</li><li>正の実部だけの複素数を渡すと通常のLOG10と同じ結果になる</li><li>「log10(-1)」も計算でき、結果は 0+(π/ln(10))i になる</li><li>COMPLEX関数の結果やセル参照、複素数演算の結果も渡せる</li><li>ARRAYFORMULAで複数の複素数を一括処理できる</li><li>IMLN関数とは「IMLOG10(z) = IMLN(z) / ln(10)」の関係</li><li>z=0 を渡すと #NUM! エラー（log10(0)は定義されない）</li><li>大文字の「I」「J」やi・j以外の単位は #NUM! エラー</li><li>論理値やエラー値を渡すと #VALUE! エラー</li><li>ExcelのIMLOG10関数と完全互換（Excel 2007以降）</li></ul>



<p class="wp-block-paragraph">複素数の常用対数が必要になったら、IMLOG10関数の出番ですよ。COMPLEX関数で複素数を作り、IMLOG10で対数を取りましょう。最後にIMREAL・IMAGINARYで実部と虚部に分解すれば、デシベル計算やボード線図、pH解析のシートを軽快に組み立てられますね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-imlog10-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのIMLOG2関数の使い方｜複素数の2を底とする対数を一発計算</title>
		<link>https://mashukabu.com/spreadsheet-imlog2-function/</link>
					<comments>https://mashukabu.com/spreadsheet-imlog2-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 14:24:00 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[IMLOG2]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6270</guid>

					<description><![CDATA[GoogleスプレッドシートのIMLOG2関数の使い方を解説。複素数（a+bi）の2を底とする対数を一発で求める基本構文、IMLN関数との関係（IMLN(z)/ln(2)）、主値の範囲、COMPLEX関数との連携、情報理論のビット表現やオクターブ計算での実務活用例、よくあるエラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「スプレッドシートで複素数のlog2を出したいけど、毎回IMLNをln(2)で割る式を書くのが面倒&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで複素数を扱う場面では、log₂(a+bi) の値が必要になることがありますよね。情報理論やオクターブ計算では、自然対数より2を底とする対数のほうが直感的です。でも、毎回 IMLN とLNを組み合わせて分母にln(2)を入れるのは、数式が読みづらくなりがちです。</p>



<p class="wp-block-paragraph">そんなときに頼りになるのがGoogleスプレッドシートのIMLOG2関数です。複素数を1つ渡すだけで「その複素数の2を底とする対数」を一発で返してくれますよ。情報量計算やオクターブ分解の数式が、ぐっとすっきりしますね。</p>



<p class="wp-block-paragraph">ExcelのIMLOG2関数と完全互換なので、Excelファイルとやり取りする現場でも安心です。COMPLEX関数で作った複素数や、<a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a>と組み合わせた式からも、そのまま渡せますよ。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのIMLOG2関数の基本構文と実務での活用例を解説します。IMLNとの関係や、主値の範囲、よくあるエラーと対処法もしっかり紹介していきますね。</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">スプレッドシートのIMLOG2関数とは？</a></li><li><a href="#toc2" tabindex="0">IMLOG2関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の詳細</a></li></ol></li><li><a href="#toc5" tabindex="0">IMLOG2関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列で複素数を直接指定する</a></li><li><a href="#toc7" tabindex="0">負の実数の対数を計算する</a></li><li><a href="#toc8" tabindex="0">セル参照で複素数を指定する</a></li><li><a href="#toc9" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc10" tabindex="0">ARRAYFORMULAで複数行を一括処理する</a></li></ol></li><li><a href="#toc11" tabindex="0">IMLOG2関数の実務活用例</a><ol><li><a href="#toc12" tabindex="0">活用例1: 情報量（ビット数）を求める</a></li><li><a href="#toc13" tabindex="0">活用例2: オクターブ数を計算する</a></li><li><a href="#toc14" tabindex="0">活用例3: IMLN関数との関係を確認する</a></li><li><a href="#toc15" tabindex="0">活用例4: ビット深度の計算（量子化レベル）</a></li><li><a href="#toc16" tabindex="0">活用例5: 計算量オーダーの可視化</a></li></ol></li><li><a href="#toc17" tabindex="0">IMLOG2関数とCOMPLEX関数群の関係</a></li><li><a href="#toc18" tabindex="0">IMLOG2関数のよくあるエラーと対処法</a><ol><li><a href="#toc19" tabindex="0">#NUM! エラー（複素数の形式エラー、または z=0）</a></li><li><a href="#toc20" tabindex="0">#VALUE! エラー（引数の型エラー）</a></li><li><a href="#toc21" tabindex="0">主値の範囲を超えた角度を期待してしまう問題</a></li><li><a href="#toc22" tabindex="0">IFERRORでまとめてエラーを吸収する</a></li></ol></li><li><a href="#toc23" tabindex="0">IMLOG2関数とExcelの互換性</a></li><li><a href="#toc24" tabindex="0">複素数関連の関数一覧</a></li><li><a href="#toc25" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG2関数は、複素数の2を底とする対数（log₂(z)）を返す関数です。エンジニアリング関数（電気・物理・工学系の計算で使う関数群）のひとつに分類されますよ。</p>



<p class="wp-block-paragraph">読み方は「イマジナリー・ログ・ツー」または「アイエム・ログ・ツー」です。英語の「imaginary（虚数の）」と「logarithm base 2（2を底とする対数）」を組み合わせた名前ですね。複素数「a+bi」の2底対数を、複素数として返してくれるのが役割です。</p>



<p class="wp-block-paragraph">複素数の2底対数は、自然対数を ln(2) で割り算した形で定義できます。具体的な式は次のとおりですよ。</p>



<pre class="wp-block-code"><code>log2(a+bi) = ln(a+bi) / ln(2)
          = log2(|a+bi|) + i × arg(a+bi) / ln(2)
          = log2(√(a²+b²)) + i × atan2(b, a) / ln(2)</code></pre>



<p class="wp-block-paragraph">実部は「絶対値の2底対数」、虚部は「偏角を ln(2) で割った値」となり、結果も複素数で返るのが特徴ですね。ln(2) は約0.6931なので、IMLN の結果に対しておよそ1.4427倍したものに相当します。</p>



<figure class="wp-block-table"><table><thead><tr><th>複素数（z）</th><th>IMLOG2(z)の結果</th><th>内部計算</th></tr></thead><tbody><tr><td>1+0i</td><td>0</td><td>log2(1) = 0</td></tr><tr><td>2+0i</td><td>1+0i</td><td>log2(2) = 1</td></tr><tr><td>4+0i</td><td>2+0i</td><td>log2(4) = 2</td></tr><tr><td>8+0i</td><td>3+0i</td><td>log2(8) = 3</td></tr><tr><td>-1+0i</td><td>0+4.5324i</td><td>log2(1) + i×π/ln(2)</td></tr><tr><td>0+1i</td><td>0+2.2662i</td><td>log2(1) + i×π/(2ln(2))</td></tr><tr><td>1+1i</td><td>0.5+1.1331i</td><td>log2(√2) + i×(π/4)/ln(2)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG2関数を使えば、この表の右側にある「複素数の2底対数」をサクッと取り出せます。Excelとの互換性も完璧で、Excel 2007以降のすべてのバージョンに対応していますよ。</p>



<p class="wp-block-paragraph">複素数の2底対数は、情報理論のエントロピー計算・オクターブ周波数比の解析・アルゴリズムの計算量解析・画像処理のビット深度計算などで活躍します。「2倍するごとに1ずつ増える」という直感的なスケールが欲しい場面で、欠かせない基礎パーツですね。</p>



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



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



<pre class="wp-block-code"><code>=IMLOG2(複素数)</code></pre>



<p class="wp-block-paragraph">引数は1つで、2底対数を取りたい複素数を渡す形ですよ。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の詳細</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>複素数（inumber）</td><td>必須</td><td>2底対数を計算する複素数。文字列またはセル参照で指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には「&#8221;1+2i&#8221;」や「&#8221;1+2j&#8221;」のような複素数文字列を直接渡せます。COMPLEX関数（実数と虚数から複素数を作成する関数）の結果や、複素数が入ったセルの参照も指定できますよ。</p>



<p class="wp-block-paragraph">虚数単位は小文字の「i」または「j」のどちらでも受け付けます。数学では「i」、電気工学では「j」が使われる慣習ですね。IMLOG2関数はどちらでも同じように動作してくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>IMLOG2が返す虚部の範囲は -π/ln(2) < θ ≤ π/ln(2)、おおよそ -4.5324 < θ ≤ 4.5324 です。これは <a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a> の主値（-π〜π）を ln(2) で割った値に相当しますよ。覚えておきましょう。</p></blockquote>



<p class="wp-block-paragraph">引数に正の実数だけを渡せば、通常のLOG関数（底2指定）と同じ結果になります。「IMLOG2(&#8220;8&#8221;)」も「LOG(8, 2)」もどちらも3ですね。違いは戻り値が複素数文字列になるか実数になるかだけですよ。</p>



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



<h3 class="wp-block-heading"><span id="toc6">文字列で複素数を直接指定する</span></h3>



<p class="wp-block-paragraph">複素数文字列をそのまま引数に渡してみましょう。</p>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/03/spreadsheet-sumif-function_01_data_sample-table.png" alt="01 data sample table" /></figure>



<pre class="wp-block-code"><code>=IMLOG2(&quot;1+1i&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「0.5+1.13309778050294i」になります。実部はlog₂(√2)=0.5、虚部は(π/4)/ln(2)≈1.1331ですね。</p>



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



<p class="wp-block-paragraph">正の実部だけの複素数を渡すと、通常のLOG関数と同じ結果になります。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;8&quot;)
=IMLOG2(&quot;8+0i&quot;)</code></pre>



<p class="wp-block-paragraph">どちらも結果は約「3+0i」、つまり log₂(8) = 3 ですよ。実数の世界の2底対数と一致しますね。</p>



<p class="wp-block-paragraph">純虚数を渡すと、結果は実部0で虚部が±π/(2ln(2))になります。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;0+1i&quot;)
=IMLOG2(&quot;0-1i&quot;)</code></pre>



<p class="wp-block-paragraph">前者は「0+2.2662&#8230;i」、後者は「0-2.2662&#8230;i」になりますよ。複素平面の縦軸に乗っている純虚数の偏角が、±π/(2ln(2))として返ってきますね。</p>



<h3 class="wp-block-heading"><span id="toc7">負の実数の対数を計算する</span></h3>



<p class="wp-block-paragraph">実数の世界では「負の数の対数は計算できない」とされますよね。複素数まで広げると、IMLOG2はちゃんと値を返してくれます。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;-1&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「0+4.5323601418&#8230;i」になりますよ。実部は0、虚部はπ/ln(2)となります。これは「-1 = 1 × e^(iπ)」を2底に直したものですね。LOG(-1, 2) はエラーになりますが、IMLOG2 なら計算できる点が便利なところです。</p>



<h3 class="wp-block-heading"><span id="toc8">セル参照で複素数を指定する</span></h3>



<p class="wp-block-paragraph">実務ではセルに入った複素数を扱う場面が多いですよね。A2に「1+1i」が入っている場合は次のように書きます。</p>



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



<p class="wp-block-paragraph">結果は「0.5+1.1331&#8230;i」になります。セル参照を渡すだけで、入っている複素数の2底対数を取り出せますよ。</p>



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



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



<p class="wp-block-paragraph"><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX関数</a>で作った複素数を、その場でIMLOG2に渡すこともできます。</p>



<pre class="wp-block-code"><code>=IMLOG2(COMPLEX(1, 1))</code></pre>



<p class="wp-block-paragraph">結果は「0.5+1.1331&#8230;i」、つまり「IMLOG2(&#8220;1+1i&#8221;)」と同じですね。COMPLEX(1, 1)が内部で「1+1i」を作り、IMLOG2関数がその2底対数を返してくれます。</p>



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



<p class="wp-block-paragraph">数値で実部と虚部を渡したいときに便利な書き方ですよ。</p>



<h3 class="wp-block-heading"><span id="toc10">ARRAYFORMULAで複数行を一括処理する</span></h3>



<p class="wp-block-paragraph">複素数のリストに対して一気に2底対数の列を作りたい場面もありますよね。そんなときはARRAYFORMULA関数（数式を範囲全体に展開する関数）と組み合わせます。</p>



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



<p class="wp-block-paragraph">A列の複素数を順番に2底対数に変換して、対応する結果をB列に一発で展開できますよ。情報理論のビット表現やオクターブ計算を一括処理するときに重宝しますね。</p>



<h2 class="wp-block-heading"><span id="toc11">IMLOG2関数の実務活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc12">活用例1: 情報量（ビット数）を求める</span></h3>



<p class="wp-block-paragraph">情報理論では「ある事象の情報量」を log₂(1/p) で表しますよね。確率pが複素数振幅の2乗で表される量子情報の文脈では、複素数のままlog₂を取れると便利です。</p>



<p class="wp-block-paragraph">A列に複素数振幅が並んでいるとしましょう。</p>



<pre class="wp-block-code"><code>B2: =IMABS(A2)             ← 振幅 |z|
C2: =B2^2                  ← 確率 |z|^2
D2: =-LOG(C2, 2)           ← 情報量（ビット）</code></pre>



<p class="wp-block-paragraph">複素数の振幅と位相を一緒に解析したい場合は、IMLOG2を直接使う方法もありますよ。</p>



<pre class="wp-block-code"><code>E2: =IMLOG2(A2)            ← 複素2底対数
F2: =IMREAL(E2)            ← log2(|z|)</code></pre>



<p class="wp-block-paragraph">F列が log₂(|z|) です。情報量の符号反転を入れれば「-2×F2」で2乗の情報量が得られますね。エントロピー計算やシャノン情報量の解析シートで使えるパターンですよ。</p>



<h3 class="wp-block-heading"><span id="toc13">活用例2: オクターブ数を計算する</span></h3>



<p class="wp-block-paragraph">音響や周波数解析では、2倍ごとに「1オクターブ」と数えますよね。複素フェーザの周波数比を一発でオクターブ数に変換できますよ。</p>



<p class="wp-block-paragraph">基準周波数 f₀ と任意周波数 f の比 f/f₀ を複素数で扱う場合を考えてみましょう。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(8, 0)              ← 周波数比 8（実数）
B2: =IMLOG2(A2)                 ← オクターブ数
C2: =IMREAL(B2)                 ← 実数のオクターブ</code></pre>



<p class="wp-block-paragraph">C2の値は3になります。「8倍は3オクターブ上」という直感どおりの結果ですね。複素数を渡せば、位相情報も同時に扱える点が IMLOG2 の強みですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>オクターブ数だけが必要なら <code>=LOG(IMABS(A2), 2)</code> でも代用できます。位相情報も保ちたいときに IMLOG2 の出番ですね。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">活用例3: IMLN関数との関係を確認する</span></h3>



<p class="wp-block-paragraph">IMLOG2関数は、内部的に「IMLN(z) ÷ ln(2)」と等価です。実際にスプレッドシートで確認してみましょう。</p>



<pre class="wp-block-code"><code>A2: =COMPLEX(1, 1)              ← z = 1+i
B2: =IMLOG2(A2)                 ← 直接計算
C2: =IMDIV(IMLN(A2), COMPLEX(LN(2), 0))   ← IMLNから計算</code></pre>



<p class="wp-block-paragraph">B2とC2の値は一致して「0.5+1.1331&#8230;i」になりますよ。IMLOG2は IMLN の結果を ln(2) で割った形と同じだと、数式レベルで確認できますね。底の変換公式を理解する勉強用にも使える書き方です。</p>



<h3 class="wp-block-heading"><span id="toc15">活用例4: ビット深度の計算（量子化レベル）</span></h3>



<p class="wp-block-paragraph">画像や音声のデジタル化では、量子化レベル数 N からビット深度 log₂(N) を求めます。複素数で表される量子化フェーザを扱う場合に便利ですよ。</p>



<pre class="wp-block-code"><code>A2: 256                         ← 量子化レベル数
B2: =COMPLEX(A2, 0)             ← 複素数化
C2: =IMLOG2(B2)                 ← ビット深度
D2: =IMREAL(C2)                 ← 実数ビット数</code></pre>



<p class="wp-block-paragraph">D2は8になります。256階調なら8ビットですね。複素数のまま処理を続けたい場合に IMLOG2 を挟んでおくと、後段の数式と型が揃って扱いやすくなりますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">活用例5: 計算量オーダーの可視化</span></h3>



<p class="wp-block-paragraph">アルゴリズムの計算量解析では「O(log₂ N)」のような表記が出てきますよね。データサイズ N の対数を素早く可視化するときに IMLOG2 が使えますよ。</p>



<p class="wp-block-paragraph">A列にデータサイズが並んでいる場面を考えてみましょう。</p>



<pre class="wp-block-code"><code>B2: =IMLOG2(COMPLEX(A2, 0))     ← log2(N)
C2: =IMREAL(B2)                 ← 実数値</code></pre>



<p class="wp-block-paragraph">A2が1024なら C2 は10、A2が1,048,576なら C2 は20になります。データ量が2倍になるごとに1ずつ増えるスケールが、シート上で直感的に確認できますね。複素数を扱わない単純なケースなら <code>=LOG(A2, 2)</code> でも構いません。複素数を含む解析パイプラインの中では、IMLOG2 で型を揃えるとシートが整いますよ。</p>



<h2 class="wp-block-heading"><span id="toc17">IMLOG2関数とCOMPLEX関数群の関係</span></h2>



<p class="wp-block-paragraph">複素数を扱う関数群の中で、IMLOG2関数の位置づけを整理しておきましょう。</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/spreadsheet-complex-function/">COMPLEX</a></td><td>実数 a, b</td><td>複素数 a+bi</td><td>複素数を作る</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数 a+bi</td><td>実数 a</td><td>実部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数 a+bi</td><td>実数 b</td><td>虚部を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数 a+bi</td><td>実数 √(a²+b²)</td><td>大きさを取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数 a+bi</td><td>実数（ラジアン）</td><td>偏角を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imexp-function/">IMEXP</a></td><td>複素数 z</td><td>複素数 e^z</td><td>指数関数</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN</a></td><td>複素数 z</td><td>複素数 ln(z)</td><td>自然対数</td></tr><tr><td>IMLOG2</td><td>複素数 z</td><td>複素数 log₂(z)</td><td>2を底とする対数</td></tr><tr><td>IMLOG10</td><td>複素数 z</td><td>複素数 log₁₀(z)</td><td>10を底とする対数</td></tr><tr><td>IMPOWER</td><td>複素数 z, 実数 n</td><td>複素数 z^n</td><td>べき乗</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG2関数とIMLN関数は「底の変換公式」でつながっています。「IMLOG2(z) = IMLN(z) / ln(2)」が数学的な関係ですよ。同様にIMLOG10は IMLN(z) / ln(10) と等価ですね。</p>



<p class="wp-block-paragraph">たとえば定義式どおりに log₂(a+bi) を手動で組み立てると次のようになります。</p>



<pre class="wp-block-code"><code>=COMPLEX(LOG(SQRT(IMREAL(A2)^2+IMAGINARY(A2)^2), 2), ATAN2(IMREAL(A2), IMAGINARY(A2))/LN(2))</code></pre>



<p class="wp-block-paragraph">これはIMLOG2と同じ結果になりますが、絶対値と偏角を毎回手書きする必要がありますよね。IMLOG2を使えば1関数で済むので、数式が読みやすくなります。</p>



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



<h3 class="wp-block-heading"><span id="toc19">#NUM! エラー（複素数の形式エラー、または z=0）</span></h3>



<p class="wp-block-paragraph">複素数として認識できない文字列を渡したときや、ゼロを渡したときに発生します。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;1+1I&quot;)     → #NUM!（大文字のIは不可）
=IMLOG2(&quot;1+1k&quot;)     → #NUM!（i・j以外は不可）
=IMLOG2(&quot;1 + 1i&quot;)   → #NUM!（途中の空白は不可）
=IMLOG2(&quot;0&quot;)        → #NUM!（log2(0)は定義されない）
=IMLOG2(&quot;0+0i&quot;)     → #NUM!（同上）</code></pre>



<p class="wp-block-paragraph">対処法は2つあります。1つ目は、複素数文字列を必ず半角の「a+bi」または「a+bj」の形式にすることです。虚数単位は小文字限定なので、CapsLockがオンになっていないか確認してくださいね。</p>



<p class="wp-block-paragraph">2つ目は、ゼロを渡さないことです。実数の世界でlog₂(0)が定義されないのと同じく、複素数の世界でも0の対数は計算できません。入力データに0が混じる可能性がある場合は、後述のIFERROR対策を入れておきましょう。</p>



<h3 class="wp-block-heading"><span id="toc20">#VALUE! エラー（引数の型エラー）</span></h3>



<p class="wp-block-paragraph">引数に論理値やエラー値を渡したときに発生します。</p>



<pre class="wp-block-code"><code>=IMLOG2(TRUE)       → #VALUE!（論理値は不可）
=IMLOG2(#N/A)       → #VALUE!（エラー値は不可）</code></pre>



<p class="wp-block-paragraph">対処法は、正しい複素数文字列または数値・セル参照を渡すことです。入力元のセルがエラーになっている場合は、そのエラーを先に解消する必要がありますよ。</p>



<h3 class="wp-block-heading"><span id="toc21">主値の範囲を超えた角度を期待してしまう問題</span></h3>



<p class="wp-block-paragraph">IMLOG2が返す虚部は -π/ln(2) < θ ≤ π/ln(2)、つまり約 -4.5324 < θ ≤ 4.5324 の主値だけです。これは <a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN関数</a> の主値 (-π, π] を ln(2) で割った値ですね。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;0-1i&quot;)     → 0-2.2662i（-π/(2ln2)）</code></pre>



<p class="wp-block-paragraph">この複素数 -i は「3π/2 ラジアン回転した点」とも見なせますが、IMLOG2 はそのうち主値（-π/2 を ln(2) で割った値）を返します。連続的に偏角を追跡したい場面では、後段で「アンラップ処理」を実装する必要がある点に注意してくださいね。</p>



<h3 class="wp-block-heading"><span id="toc22">IFERRORでまとめてエラーを吸収する</span></h3>



<p class="wp-block-paragraph">入力データの信頼性が低い場合や、ゼロが混じる可能性がある場合に備えておきたいですよね。そんなときはIFERROR関数（エラー時に代替値を返す関数）で包んでおきましょう。シート全体の集計が止まらず安心です。</p>



<pre class="wp-block-code"><code>=IFERROR(IMLOG2(A2), &quot;計算不可&quot;)</code></pre>



<p class="wp-block-paragraph">エラー時にメッセージを返すようにしておけば、安心して大量データに適用できますよ。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG2関数は、ExcelのIMLOG2関数と仕様が完全に一致しています。構文・引数・戻り値の形式・主値の範囲・エラー条件まで同じですよ。</p>



<p class="wp-block-paragraph">ExcelファイルをGoogleスプレッドシートで開いてもIMLOG2関数はそのまま動作します。逆にスプレッドシートで作った数式をExcelで開いても問題ありませんね。</p>



<p class="wp-block-paragraph">ExcelのIMLOG2関数は、Excel 2007以降のすべてのバージョンで利用できます。Microsoft 365、Excel for Mac、Excel Online でも同じように使えますよ。古いExcelファイルとの互換性も心配いりません。</p>



<h2 class="wp-block-heading"><span id="toc24">複素数関連の関数一覧</span></h2>



<p class="wp-block-paragraph">IMLOG2関数と一緒に使うことが多い、複素数関連の関数をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/spreadsheet-complex-function/">COMPLEX</a></td><td>実数と虚数から複素数を作成する</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imreal-function/">IMREAL</a></td><td>複素数の実数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imaginary-function/">IMAGINARY</a></td><td>複素数の虚数係数を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imabs-function/">IMABS</a></td><td>複素数の絶対値（大きさ）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imargument-function/">IMARGUMENT</a></td><td>複素数の偏角（角度）をラジアンで返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imconjugate-function/">IMCONJUGATE</a></td><td>共役複素数を返す</td></tr><tr><td>IMSUM</td><td>複素数の合計（足し算）を返す</td></tr><tr><td>IMSUB</td><td>複素数の差（引き算）を返す</td></tr><tr><td>IMPRODUCT</td><td>複素数の積（掛け算）を返す</td></tr><tr><td>IMDIV</td><td>複素数の商（割り算）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imexp-function/">IMEXP</a></td><td>複素数の指数関数（eべき乗）を返す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imln-function/">IMLN</a></td><td>複素数の自然対数を返す</td></tr><tr><td>IMLOG2</td><td>複素数の2を底とする対数を返す</td></tr><tr><td>IMLOG10</td><td>複素数の10を底とする対数を返す</td></tr><tr><td>IMPOWER</td><td>複素数のべき乗を返す</td></tr><tr><td>IMSQRT</td><td>複素数の平方根を返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMLOG2関数は、これら複素数関数群の中で「2底対数」を担う基本関数ですね。COMPLEXで複素数を作り、IMLOG2で2底対数値を求めるのが基本の流れです。最後はIMREAL・IMAGINARYで実部と虚部に分けて可視化しましょう。情報理論やオクターブ解析のシートを軽快に組み立てられますよ。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMLOG2関数は、複素数の2を底とする対数（log₂(z)）を返す関数です。情報理論・オクターブ計算・ビット深度解析・アルゴリズム計算量の可視化など、「2倍ごとに1増える」直感的なスケールが欲しい場面で欠かせない関数ですよ。</p>



<ul class="wp-block-list"><li>構文は <code>=IMLOG2(複素数)</code> で複素数を1つ渡すだけ</li><li>「log2(a+bi) = ln(a+bi) / ln(2)」が内部計算式</li><li>実部は絶対値の2底対数、虚部は偏角を ln(2) で割った値になる</li><li>「a+bi」と「a+bj」のどちらの表記もそのまま受け付ける</li><li>虚部の主値は -π/ln(2) < θ ≤ π/ln(2)（約 -4.5324 〜 4.5324）</li><li>正の実部だけの複素数を渡すと通常のLOG(値, 2)と同じ結果になる</li><li>「log2(-1)」も計算でき、結果は 0+(π/ln(2))i になる</li><li>COMPLEX関数の結果やセル参照、複素数演算の結果も渡せる</li><li>ARRAYFORMULAで複数の複素数を一括処理できる</li><li>IMLN関数とは「IMLOG2(z) = IMLN(z) / ln(2)」の関係</li><li>z=0 を渡すと #NUM! エラー（log2(0)は定義されない）</li><li>大文字の「I」「J」やi・j以外の単位は #NUM! エラー</li><li>論理値やエラー値を渡すと #VALUE! エラー</li><li>ExcelのIMLOG2関数と完全互換（Excel 2007以降）</li></ul>



<p class="wp-block-paragraph">複素数の2底対数が必要になったら、IMLOG2関数の出番ですよ。COMPLEX関数で複素数を作り、IMLOG2で対数を取りましょう。最後にIMREAL・IMAGINARYで実部と虚部に分解すれば、情報理論やオクターブ解析のシートを軽快に組み立てられますね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-imlog2-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのLN関数の使い方｜自然対数</title>
		<link>https://mashukabu.com/spreadsheet-ln-function/</link>
					<comments>https://mashukabu.com/spreadsheet-ln-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:33:09 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[LN]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[ネイピア数]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[数学関数]]></category>
		<category><![CDATA[自然対数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4821</guid>

					<description><![CDATA[GoogleスプレッドシートのLN関数の使い方を初心者向けに解説。自然対数（底e）を返す関数で、成長率の計算や対数変換に使えます。EXP関数との逆関数関係やLOG・LOG10との使い分けも紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで「この値はeの何乗か？」を調べたいとき、どうしていますか？</p>



<p class="wp-block-paragraph">「そもそも自然対数って何？」と思った方もいるかもしれません。自然対数はネイピア数e（約2.718）を底とする対数です。</p>



<p class="wp-block-paragraph">LN関数を使えば、自然対数をかんたんに求められます。引数を1つ指定するだけなので、使い方はとてもシンプルです。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から、成長率の計算での活用まで紹介します。EXP関数との逆関数関係やLOG・LOG10との使い分けも解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">LN関数とは？</a></li><li><a href="#toc2" tabindex="0">LN関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">LN関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">LN(1) = 0 を確かめる</a></li><li><a href="#toc7" tabindex="0">LN(e) = 1 を確かめる</a></li><li><a href="#toc8" tabindex="0">いろいろな値の自然対数</a></li><li><a href="#toc9" tabindex="0">まとめると</a></li><li><a href="#toc10" tabindex="0">セル参照を使う</a></li></ol></li><li><a href="#toc11" tabindex="0">実務でのLN関数活用例</a><ol><li><a href="#toc12" tabindex="0">連続成長率を求める</a></li><li><a href="#toc13" tabindex="0">対数変換でデータの偏りを補正する</a></li><li><a href="#toc14" tabindex="0">年数から複利回数を逆算する</a></li></ol></li><li><a href="#toc15" tabindex="0">LN関数とEXP関数の逆関数関係</a></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">0や負の数を渡したとき</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">LN関数とLOG関数の使い分け</a></li><li><a href="#toc21" tabindex="0">LN関数とLOG10関数の使い分け</a></li><li><a href="#toc22" tabindex="0">LN関数とEXP関数の使い分け</a></li></ol></li><li><a href="#toc23" tabindex="0">Excelとの違い</a></li><li><a href="#toc24" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LN関数（読み方: ナチュラルログ関数）は、<strong>指定した値の自然対数（底eの対数）を返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「Natural Logarithm（自然対数）」の頭文字からきています。</p>



<p class="wp-block-paragraph">自然対数とは「ネイピア数e（約2.71828）を何乗したら、その値になるか」を表す数です。</p>



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



<ul class="wp-block-list"><li>指定した値の自然対数（底eの対数）を計算する</li><li>連続成長率を求める（売上の伸び率の計算など）</li><li>EXP関数の逆演算として、eのべき乗から指数を取り出す</li><li>データの対数変換でばらつきを抑える</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>LN関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。</p></blockquote>



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



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



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



<p class="wp-block-paragraph">カッコの中に「自然対数を求めたい正の数」を1つ入れるだけです。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>値</td><td>必須</td><td>自然対数を求めたい正の数値。セル参照や数式も指定できる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。正の数のみ指定できます。0や負の数を入れるとエラーになります。</p>



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



<h3 class="wp-block-heading"><span id="toc6">LN(1) = 0 を確かめる</span></h3>



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



<p class="wp-block-paragraph">結果は「0」です。eの0乗は1なので、LN(1) = 0 になります。</p>



<h3 class="wp-block-heading"><span id="toc7">LN(e) = 1 を確かめる</span></h3>



<pre class="wp-block-code"><code>=LN(EXP(1))</code></pre>



<p class="wp-block-paragraph">結果は「1」です。EXP(1)はeそのものの値（約2.71828）です。eの1乗はeなので、自然対数は1になります。</p>



<h3 class="wp-block-heading"><span id="toc8">いろいろな値の自然対数</span></h3>



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



<p class="wp-block-paragraph">結果は「0.69315&#8230;」です。eの約0.693乗が2になるという意味です。</p>



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



<p class="wp-block-paragraph">結果は「2.30259&#8230;」です。eの約2.303乗が10になります。</p>



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



<p class="wp-block-paragraph">結果は「4.60517&#8230;」です。値が大きくなると対数もゆっくり増えていきます。</p>



<h3 class="wp-block-heading"><span id="toc9">まとめると</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果（小数第5位まで）</th><th>意味</th></tr></thead><tbody><tr><td>=LN(1)</td><td>0</td><td>eの0乗 = 1</td></tr><tr><td>=LN(2)</td><td>0.69315</td><td>eの約0.693乗 = 2</td></tr><tr><td>=LN(10)</td><td>2.30259</td><td>eの約2.303乗 = 10</td></tr><tr><td>=LN(100)</td><td>4.60517</td><td>eの約4.605乗 = 100</td></tr><tr><td>=LN(EXP(1))</td><td>1</td><td>eの1乗 = e</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc10">セル参照を使う</span></h3>



<p class="wp-block-paragraph">実務ではセル参照を使うケースがほとんどです。A2セルに値が入っているとします。</p>



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



<p class="wp-block-paragraph">セル参照にしておけば、値を変更するだけで結果が自動的に更新されます。</p>



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



<h3 class="wp-block-heading"><span id="toc12">連続成長率を求める</span></h3>



<p class="wp-block-paragraph">LN関数がもっとも活躍するのが成長率の計算です。</p>



<p class="wp-block-paragraph">ある期間の開始値と終了値から「連続成長率」を求められます。</p>



<p class="wp-block-paragraph">開始値がA2、終了値がB2に入っているとします。</p>



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



<p class="wp-block-paragraph">たとえば売上が100万円から150万円に伸びた場合はこうです。</p>



<pre class="wp-block-code"><code>=LN(1500000/1000000)</code></pre>



<p class="wp-block-paragraph">結果は「0.40546&#8230;」、つまり連続成長率は約40.5%です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>通常の成長率は <code>=(B2-A2)/A2</code> で「50%」です。連続成長率のほうが小さい値になります。連続成長率は複利の効果を織り込んだ計算なので、期間をまたぐ比較に適しています。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc13">対数変換でデータの偏りを補正する</span></h3>



<p class="wp-block-paragraph">売上や人口など、桁数が大きく異なるデータをグラフにすると、小さい値がつぶれてしまいます。</p>



<p class="wp-block-paragraph">LN関数で対数変換すれば、ばらつきを抑えて比較しやすくなります。</p>



<p class="wp-block-paragraph">売上データがA2に入っているとします。</p>



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



<p class="wp-block-paragraph">たとえば10万円・100万円・1,000万円のデータがあるとします。</p>



<figure class="wp-block-table"><table><thead><tr><th>元の値</th><th>=LN(元の値)</th></tr></thead><tbody><tr><td>100,000</td><td>11.51</td></tr><tr><td>1,000,000</td><td>13.82</td></tr><tr><td>10,000,000</td><td>16.12</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">100倍の差があったデータが、対数変換すると1.15倍の差に収まります。</p>



<h3 class="wp-block-heading"><span id="toc14">年数から複利回数を逆算する</span></h3>



<p class="wp-block-paragraph">「元本が2倍になるまで何年かかるか」を求めるパターンです。</p>



<p class="wp-block-paragraph">年利率がA2に入っているとします。</p>



<pre class="wp-block-code"><code>=LN(2)/LN(1+A2)</code></pre>



<p class="wp-block-paragraph">たとえば年利5%の場合はこうです。</p>



<pre class="wp-block-code"><code>=LN(2)/LN(1+0.05)</code></pre>



<p class="wp-block-paragraph">結果は「14.21」、つまり約14年で元本が2倍になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>これは「72の法則」（72 / 利率 = 倍になる年数）の正確な計算版です。72/5 = 14.4年と近い値になりますね。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc15">LN関数とEXP関数の逆関数関係</span></h2>



<p class="wp-block-paragraph">LN関数と<a href="https://mashukabu.com/spreadsheet-exp-function/">EXP関数</a>は逆関数の関係にあります。</p>



<p class="wp-block-paragraph">一方の結果をもう一方に渡すと、元の値に戻ります。</p>



<ul class="wp-block-list"><li><strong>LN関数</strong>: 値 → eの何乗かを返す（「7.389&#8230;」を渡すと「2」）</li><li><strong>EXP関数</strong>: 指数 → eのべき乗を返す（「2」を渡すと「7.389&#8230;」）</li></ul>



<p class="wp-block-paragraph">実際に確かめてみましょう。</p>



<pre class="wp-block-code"><code>=LN(10)         → 2.30259...
=EXP(LN(10))    → 10</code></pre>



<p class="wp-block-paragraph">LN(10)の結果をEXP関数に渡すと、元の「10」に戻ります。</p>



<pre class="wp-block-code"><code>=EXP(2)        → 7.38906...
=LN(EXP(2))    → 2</code></pre>



<p class="wp-block-paragraph">EXP(2)の結果をLN関数に渡すと、元の「2」に戻ります。</p>



<p class="wp-block-paragraph">この関係は「対数変換したデータを元に戻す」場面で役立ちます。</p>



<p class="wp-block-paragraph">LN関数で対数変換したデータを、EXP関数で元のスケールに復元できます。</p>



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



<p class="wp-block-paragraph">LN関数は引数1つのシンプルな関数ですが、エラーが出ることもあります。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#NUM!</td><td>引数に0や負の数を指定した</td><td>正の数のみ指定する</td></tr><tr><td>#VALUE!</td><td>引数に文字列が入っている</td><td>セル参照先が数値かどうか確認する</td></tr><tr><td>#ERROR!</td><td>構文ミス（カッコ忘れ等）</td><td>数式の入力内容を見直す</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc17">0や負の数を渡したとき</span></h3>



<p class="wp-block-paragraph">LN関数に0や負の数を渡すと#NUM!エラーです。</p>



<pre class="wp-block-code"><code>=LN(0)    → #NUM!
=LN(-1)   → #NUM!</code></pre>



<p class="wp-block-paragraph">対数は正の数に対してのみ定義されるため、0以下の値は計算できません。</p>



<p class="wp-block-paragraph">セル参照先にゼロが入る可能性があるときは、IF関数で事前にチェックしましょう。</p>



<pre class="wp-block-code"><code>=IF(A1&gt;0, LN(A1), &quot;正の数を入力してください&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc18">文字列を渡したとき</span></h3>



<p class="wp-block-paragraph">LN関数に文字列を渡すと#VALUE!エラーです。</p>



<pre class="wp-block-code"><code>=LN(&quot;abc&quot;)</code></pre>



<p class="wp-block-paragraph">セル参照先が数値かどうか不安なときは、ISNUMBER関数で確認できます。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(A1), LN(A1), &quot;数値を入力してください&quot;)</code></pre>



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



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>動作</th><th>底</th><th>引数</th></tr></thead><tbody><tr><td><strong>LN</strong></td><td><strong>自然対数を返す</strong></td><td><strong>e（約2.718）</strong></td><td><strong>1つ</strong></td></tr><tr><td>LOG</td><td>指定した底の対数を返す</td><td>自由に指定</td><td>1〜2つ</td></tr><tr><td>LOG10</td><td>常用対数を返す</td><td>10</td><td>1つ</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-exp-function/">EXP</a></td><td>eのべき乗を返す</td><td>e（約2.718）</td><td>1つ</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc20">LN関数とLOG関数の使い分け</span></h3>



<p class="wp-block-paragraph">LN関数は底がeに固定された対数です。LOG関数は底を自由に指定できます。</p>



<pre class="wp-block-code"><code>=LN(100)       → 4.60517...（底eの対数）
=LOG(100, 10)  → 2（底10の対数）
=LOG(100, 2)   → 6.64386...（底2の対数）</code></pre>



<p class="wp-block-paragraph">底がeなら迷わずLN関数を使いましょう。底を変えたいときはLOG関数です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>LOG関数で底を省略すると底が10になります。つまり <code>=LOG(100)</code> と <code>=LOG10(100)</code> は同じ結果です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc21">LN関数とLOG10関数の使い分け</span></h3>



<p class="wp-block-paragraph">LN関数は底がe（自然対数）、LOG10関数は底が10（常用対数）です。</p>



<pre class="wp-block-code"><code>=LN(1000)     → 6.90776...（底eの対数）
=LOG10(1000)  → 3（底10の対数）</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>LN関数</th><th>LOG10関数</th></tr></thead><tbody><tr><td>底</td><td>e（約2.718）</td><td>10</td></tr><tr><td>主な用途</td><td>連続成長率・統計分析・微積分</td><td>桁数の計算・pH計算・デシベル</td></tr><tr><td>逆関数</td><td>EXP関数</td><td>POWER(10, x)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">使い分けのポイントは「何の底が必要か」です。</p>



<ul class="wp-block-list"><li>成長率や統計の計算 → LN関数（底e）</li><li>桁数やスケール変換 → LOG10関数（底10）</li></ul>



<h3 class="wp-block-heading"><span id="toc22">LN関数とEXP関数の使い分け</span></h3>



<p class="wp-block-paragraph">LN関数とEXP関数は逆の操作です。</p>



<pre class="wp-block-code"><code>=LN(10)    → 2.303...（10はeの何乗か）
=EXP(2.303) → 10（eの2.303乗はいくつか）</code></pre>



<p class="wp-block-paragraph">「値から指数を求める」ならLN関数、「指数から値を求める」なら<a href="https://mashukabu.com/spreadsheet-exp-function/">EXP関数</a>です。</p>



<h2 class="wp-block-heading"><span id="toc23">Excelとの違い</span></h2>



<p class="wp-block-paragraph">LN関数はExcelとGoogleスプレッドシートで完全に同じ動作です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Excel</th><th>Googleスプレッドシート</th></tr></thead><tbody><tr><td>構文</td><td>=LN(数値)</td><td>=LN(値)</td></tr><tr><td>動作</td><td>自然対数を返す</td><td>自然対数を返す</td></tr><tr><td>精度</td><td>15桁</td><td>15桁</td></tr><tr><td>0以下の引数</td><td>#NUM!</td><td>#NUM!</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数名の表記が若干異なるだけで、機能は完全に同じです。ファイルを共有しても計算結果はずれません。</p>



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



<p class="wp-block-paragraph">LN関数は、指定した値の自然対数（底eの対数）を返す関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=LN(値)</code> の1引数。正の数のみ指定できる</li><li>LN(1) = 0、LN(e) = 1 が基本の関係</li><li>連続成長率の計算では <code>=LN(終了値/開始値)</code> で求められる</li><li><a href="https://mashukabu.com/spreadsheet-exp-function/">EXP関数</a>とは逆関数の関係。LN(EXP(x)) = x、EXP(LN(x)) = x</li><li>LOG関数との違いは「底がeに固定されているかどうか」</li><li>LOG10関数は底が10の常用対数。用途が異なる</li></ul>



<p class="wp-block-paragraph">まずは <code>=LN(10)</code> で10の自然対数を表示するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-ln-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのLOG関数の使い方｜指定底の対数</title>
		<link>https://mashukabu.com/spreadsheet-log-function/</link>
					<comments>https://mashukabu.com/spreadsheet-log-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:33:03 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[LOG]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[底指定]]></category>
		<category><![CDATA[数学関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4819</guid>

					<description><![CDATA[GoogleスプレッドシートのLOG関数の使い方を初心者向けに解説。指定した底の対数を返す関数で、底を省略すると常用対数（底10）になります。LN関数・LOG10関数との使い分けも比較表で紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで「この値は○の何乗か？」を調べたいとき、どうしていますか？</p>



<p class="wp-block-paragraph">対数計算は一見むずかしそうですが、LOG関数を使えば底を自由に指定して対数を求められます。</p>



<p class="wp-block-paragraph">底を省略すれば常用対数（底10）になるので、手軽に使えるのもポイントです。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から実務での活用例まで紹介します。LN関数・LOG10関数との違いも比較表で整理しています。</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">LOG関数とは？</a></li><li><a href="#toc2" tabindex="0">LOG関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">LOG関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">底10の対数（常用対数）</a></li><li><a href="#toc7" tabindex="0">底2の対数</a></li><li><a href="#toc8" tabindex="0">いろいろな底と値の組み合わせ</a></li><li><a href="#toc9" tabindex="0">セル参照を使う</a></li></ol></li><li><a href="#toc10" tabindex="0">実務でのLOG関数活用例</a><ol><li><a href="#toc11" tabindex="0">データの桁数を求める</a></li><li><a href="#toc12" tabindex="0">情報量（ビット数）を計算する</a></li><li><a href="#toc13" tabindex="0">対数スケールでデータを比較する</a></li></ol></li><li><a href="#toc14" tabindex="0">LN関数・LOG10関数との違い・使い分け</a><ol><li><a href="#toc15" tabindex="0">LOG関数とLN関数の使い分け</a></li><li><a href="#toc16" tabindex="0">LOG関数とLOG10関数の使い分け</a></li><li><a href="#toc17" tabindex="0">底の選び方ガイド</a></li></ol></li><li><a href="#toc18" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc19" tabindex="0">値が0や負の数のとき</a></li><li><a href="#toc20" tabindex="0">底に1を指定したとき</a></li><li><a href="#toc21" tabindex="0">文字列を渡したとき</a></li></ol></li><li><a href="#toc22" tabindex="0">Excelとの違い</a></li><li><a href="#toc23" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LOG関数（読み方: ログ関数）は、<strong>指定した底の対数を返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「Logarithm（対数）」の略称からきています。</p>



<p class="wp-block-paragraph">対数とは「底を何乗したら、その値になるか」を表す数です。たとえばLOG(100, 10)は「10を何乗したら100になるか」を計算します。答えは2です。</p>



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



<ul class="wp-block-list"><li>指定した底の対数を計算する</li><li>底を省略すると常用対数（底10）を返す</li><li>データの桁数やスケールの比較に使える</li><li>情報量（ビット数）の計算に活用できる（底2）</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>LOG関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。</p></blockquote>



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



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



<pre class="wp-block-code"><code>=LOG(値, [底])</code></pre>



<p class="wp-block-paragraph">カッコの中に「対数を求めたい正の数」と「底」を指定します。底は省略できます。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>値</td><td>必須</td><td>対数を求めたい正の数値。セル参照や数式も指定できる</td></tr><tr><td>底</td><td>任意</td><td>対数の底。省略すると10になる。1以外の正の数を指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">底を省略した場合は10（常用対数）として計算されます。底に1を指定すると#NUM!エラーになります。</p>



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



<h3 class="wp-block-heading"><span id="toc6">底10の対数（常用対数）</span></h3>



<pre class="wp-block-code"><code>=LOG(100, 10)</code></pre>



<p class="wp-block-paragraph">結果は「2」です。10の2乗が100なので、LOG(100, 10) = 2になります。</p>



<p class="wp-block-paragraph">底を省略しても同じ結果です。</p>



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



<p class="wp-block-paragraph">こちらも結果は「2」です。底を省略するとデフォルトで10が使われます。</p>



<h3 class="wp-block-heading"><span id="toc7">底2の対数</span></h3>



<pre class="wp-block-code"><code>=LOG(8, 2)</code></pre>



<p class="wp-block-paragraph">結果は「3」です。2の3乗が8なので、LOG(8, 2) = 3になります。</p>



<pre class="wp-block-code"><code>=LOG(16, 2)</code></pre>



<p class="wp-block-paragraph">結果は「4」です。2の4乗が16です。</p>



<h3 class="wp-block-heading"><span id="toc8">いろいろな底と値の組み合わせ</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td>=LOG(1000, 10)</td><td>3</td><td>10の3乗 = 1000</td></tr><tr><td>=LOG(8, 2)</td><td>3</td><td>2の3乗 = 8</td></tr><tr><td>=LOG(81, 3)</td><td>4</td><td>3の4乗 = 81</td></tr><tr><td>=LOG(1, 10)</td><td>0</td><td>10の0乗 = 1</td></tr><tr><td>=LOG(10)</td><td>1</td><td>10の1乗 = 10（底省略）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">どの底でも「底の0乗 = 1」なので、LOG(1, 底) = 0です。</p>



<h3 class="wp-block-heading"><span id="toc9">セル参照を使う</span></h3>



<p class="wp-block-paragraph">実務ではセル参照を使うケースがほとんどです。A2セルに値が入っているとします。</p>



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



<p class="wp-block-paragraph">セル参照にしておけば、値を変更するだけで結果が自動的に更新されます。</p>



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



<h3 class="wp-block-heading"><span id="toc11">データの桁数を求める</span></h3>



<p class="wp-block-paragraph">「この数値は何桁か？」を調べるパターンです。</p>



<p class="wp-block-paragraph">A2セルに数値が入っているとします。</p>



<pre class="wp-block-code"><code>=INT(LOG(A2, 10)) + 1</code></pre>



<p class="wp-block-paragraph">たとえばA2に「12345」が入っているとします。</p>



<pre class="wp-block-code"><code>=INT(LOG(12345, 10)) + 1</code></pre>



<p class="wp-block-paragraph">結果は「5」です。LOG(12345, 10) = 4.0915&#8230;なので、INT関数で4に切り捨て、1を足して5桁になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>この方法はLEN関数でも代用できます。ただしLEN関数は文字列の長さを数えるので、小数点やマイナス記号も含まれます。純粋な桁数ならLOG関数のほうが正確です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc12">情報量（ビット数）を計算する</span></h3>



<p class="wp-block-paragraph">データ分析で「何ビットの情報量か」を求めるパターンです。</p>



<p class="wp-block-paragraph">パターン数がA2に入っているとします。</p>



<pre class="wp-block-code"><code>=LOG(A2, 2)</code></pre>



<p class="wp-block-paragraph">たとえば8パターンの選択肢があるとします。</p>



<pre class="wp-block-code"><code>=LOG(8, 2)</code></pre>



<p class="wp-block-paragraph">結果は「3」です。8パターンを表現するには3ビット必要です。</p>



<h3 class="wp-block-heading"><span id="toc13">対数スケールでデータを比較する</span></h3>



<p class="wp-block-paragraph">桁数がバラバラなデータを比較するとき、LOG関数で対数スケールに変換します。</p>



<p class="wp-block-paragraph">売上データがA2に入っているとします。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>元の値</th><th>=LOG(元の値, 10)</th></tr></thead><tbody><tr><td>100</td><td>2</td></tr><tr><td>10,000</td><td>4</td></tr><tr><td>1,000,000</td><td>6</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">100倍ずつ差があったデータが、対数変換すると2ずつ増える均等な間隔になります。グラフの軸を対数スケールにするときの考え方と同じです。</p>



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



<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><strong>LOG</strong></td><td><strong>指定した底の対数を返す</strong></td><td><strong>自由に指定（省略時10）</strong></td><td><strong>1〜2つ</strong></td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-ln-function/">LN</a></td><td>自然対数を返す</td><td>e（約2.718）</td><td>1つ</td></tr><tr><td>LOG10</td><td>常用対数を返す</td><td>10</td><td>1つ</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc15">LOG関数とLN関数の使い分け</span></h3>



<p class="wp-block-paragraph">LOG関数は底を自由に指定できます。<a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a>は底がe（ネイピア数）に固定されています。</p>



<pre class="wp-block-code"><code>=LOG(100, EXP(1))  → 4.60517...（底eの対数）
=LN(100)           → 4.60517...（同じ結果）</code></pre>



<p class="wp-block-paragraph">底をeにしたいときは、LOG関数よりもLN関数を使いましょう。数式がシンプルになります。</p>



<figure class="wp-block-table"><table><thead><tr><th>用途</th><th>おすすめ関数</th></tr></thead><tbody><tr><td>連続成長率・統計分析</td><td><a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a>（底e固定）</td></tr><tr><td>底を自由に指定したい</td><td>LOG関数</td></tr><tr><td>常用対数（底10）</td><td>LOG10関数 or LOG関数（底省略）</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc16">LOG関数とLOG10関数の使い分け</span></h3>



<p class="wp-block-paragraph">LOG関数で底を省略すると、LOG10関数と同じ結果になります。</p>



<pre class="wp-block-code"><code>=LOG(1000)     → 3（底10の対数）
=LOG10(1000)   → 3（同じ結果）</code></pre>



<p class="wp-block-paragraph">どちらを使っても構いませんが、「常用対数を使う」と明示したいときはLOG10関数を使うと意図が伝わりやすくなります。</p>



<h3 class="wp-block-heading"><span id="toc17">底の選び方ガイド</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>底</th><th>使う場面</th><th>使う関数</th></tr></thead><tbody><tr><td>10</td><td>桁数の計算、pH、デシベル</td><td>LOG10関数 or LOG関数</td></tr><tr><td>e（約2.718）</td><td>連続成長率、統計分析、微積分</td><td><a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a></td></tr><tr><td>2</td><td>情報量（ビット数）、コンピュータ関連</td><td>LOG関数</td></tr><tr><td>その他</td><td>特定の底が必要な計算</td><td>LOG関数</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">LOG関数は引数の指定を間違えるとエラーが出ます。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#NUM!</td><td>値に0や負の数を指定した</td><td>正の数のみ指定する</td></tr><tr><td>#NUM!</td><td>底に0・負の数・1を指定した</td><td>底は1以外の正の数にする</td></tr><tr><td>#VALUE!</td><td>引数に文字列が入っている</td><td>セル参照先が数値かどうか確認する</td></tr><tr><td>#ERROR!</td><td>構文ミス（カッコ忘れ等）</td><td>数式の入力内容を見直す</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc19">値が0や負の数のとき</span></h3>



<p class="wp-block-paragraph">LOG関数に0や負の数を渡すと#NUM!エラーです。</p>



<pre class="wp-block-code"><code>=LOG(0, 10)   → #NUM!
=LOG(-5, 10)  → #NUM!</code></pre>



<p class="wp-block-paragraph">対数は正の数に対してのみ定義されるため、0以下の値は計算できません。</p>



<p class="wp-block-paragraph">セル参照先にゼロが入る可能性があるときは、IF関数で事前にチェックしましょう。</p>



<pre class="wp-block-code"><code>=IF(A1&gt;0, LOG(A1, 10), &quot;正の数を入力してください&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc20">底に1を指定したとき</span></h3>



<p class="wp-block-paragraph">底に1を指定すると#NUM!エラーです。</p>



<pre class="wp-block-code"><code>=LOG(100, 1)  → #NUM!</code></pre>



<p class="wp-block-paragraph">1を何乗しても1のままなので、底1の対数は定義できません。</p>



<h3 class="wp-block-heading"><span id="toc21">文字列を渡したとき</span></h3>



<p class="wp-block-paragraph">LOG関数に文字列を渡すと#VALUE!エラーです。</p>



<pre class="wp-block-code"><code>=LOG(&quot;abc&quot;, 10)</code></pre>



<p class="wp-block-paragraph">セル参照先が数値かどうか不安なときは、ISNUMBER関数で確認できます。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(A1), LOG(A1, 10), &quot;数値を入力してください&quot;)</code></pre>



<h2 class="wp-block-heading"><span id="toc22">Excelとの違い</span></h2>



<p class="wp-block-paragraph">LOG関数はExcelとGoogleスプレッドシートで完全に同じ動作です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Excel</th><th>Googleスプレッドシート</th></tr></thead><tbody><tr><td>構文</td><td>=LOG(数値, [底])</td><td>=LOG(値, [底])</td></tr><tr><td>動作</td><td>指定した底の対数を返す</td><td>指定した底の対数を返す</td></tr><tr><td>底の省略時</td><td>10（常用対数）</td><td>10（常用対数）</td></tr><tr><td>精度</td><td>15桁</td><td>15桁</td></tr><tr><td>0以下の引数</td><td>#NUM!</td><td>#NUM!</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数名の表記が若干異なるだけで、機能は完全に同じです。ファイルを共有しても計算結果はずれません。</p>



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



<p class="wp-block-paragraph">LOG関数は、指定した底の対数を返す関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=LOG(値, [底])</code> の1〜2引数。底を省略すると10（常用対数）</li><li>LOG(100, 10) = 2、LOG(8, 2) = 3のように「底を何乗したらその値になるか」を返す</li><li>データの桁数を求めるには <code>=INT(LOG(値, 10)) + 1</code></li><li><a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a>は底がe固定、LOG10関数は底が10固定</li><li>底2の対数は情報量（ビット数）の計算に便利</li><li>値は正の数のみ。底は1以外の正の数を指定する</li></ul>



<p class="wp-block-paragraph">まずは <code>=LOG(100, 10)</code> で100の常用対数を表示するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-log-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのLOG10関数の使い方｜常用対数をかんたんに計算</title>
		<link>https://mashukabu.com/spreadsheet-log10-function/</link>
					<comments>https://mashukabu.com/spreadsheet-log10-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 21 Mar 2026 11:32:57 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[LOG10]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[常用対数]]></category>
		<category><![CDATA[底10]]></category>
		<category><![CDATA[数学関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4817</guid>

					<description><![CDATA[GoogleスプレッドシートのLOG10関数の使い方を初心者向けに解説。常用対数（底10）を返す関数で、データの桁数計算やスケール比較に使えます。LOG関数・LN関数との違いも比較表で整理します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで「この数値は何桁か？」を調べたいとき、どうしていますか？</p>



<p class="wp-block-paragraph">LEN関数で文字数を数える方法もありますが、小数点やマイナス記号も含まれてしまいます。LOG10関数を使えば、純粋な桁数をかんたんに計算できます。</p>



<p class="wp-block-paragraph">この記事では基本の書き方から実務での活用例まで紹介します。LOG関数・LN関数との違いも比較表で整理しています。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-5" checked><label class="toc-title" for="toc-checkbox-5">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">LOG10関数とは？</a></li><li><a href="#toc2" tabindex="0">LOG10関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">LOG10関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">きりのよい数の常用対数</a></li><li><a href="#toc7" tabindex="0">いろいろな値の常用対数</a></li><li><a href="#toc8" tabindex="0">セル参照を使う</a></li></ol></li><li><a href="#toc9" tabindex="0">実務でのLOG10関数活用例</a><ol><li><a href="#toc10" tabindex="0">データの桁数を求める</a></li><li><a href="#toc11" tabindex="0">対数スケールでデータを比較する</a></li><li><a href="#toc12" tabindex="0">数値の大きさで条件分岐する</a></li></ol></li><li><a href="#toc13" tabindex="0">LOG関数・LN関数との違い・使い分け</a><ol><li><a href="#toc14" tabindex="0">LOG10関数とLOG関数の同値関係</a></li><li><a href="#toc15" tabindex="0">底の選び方ガイド</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">値が0や負の数のとき</a></li><li><a href="#toc18" tabindex="0">文字列を渡したとき</a></li></ol></li><li><a href="#toc19" tabindex="0">Excelとの違い</a></li><li><a href="#toc20" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LOG10関数（読み方: ログテン関数）は、<strong>指定した値の常用対数（底10の対数）を返す関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「Logarithm base 10（底10の対数）」の略称からきています。</p>



<p class="wp-block-paragraph">常用対数とは「10を何乗したら、その値になるか」を表す数です。たとえばLOG10(100)は「10を何乗したら100になるか」を計算します。答えは2です。</p>



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



<ul class="wp-block-list"><li>常用対数（底10の対数）を計算する</li><li>データの桁数を求める</li><li>桁数がバラバラなデータを対数スケールで比較する</li><li>デシベルやpHなどの常用対数を使う計算に利用できる</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>LOG10関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心です。</p></blockquote>



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



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



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



<p class="wp-block-paragraph">カッコの中に「対数を求めたい正の数」を指定します。引数は1つだけです。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>値</td><td>必須</td><td>常用対数を求めたい正の数値。セル参照や数式も指定できる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">底は常に10で固定されています。底を変更したい場合は<a href="https://mashukabu.com/spreadsheet-log-function/">LOG関数</a>を使いましょう。</p>



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



<h3 class="wp-block-heading"><span id="toc6">きりのよい数の常用対数</span></h3>



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



<p class="wp-block-paragraph">結果は「2」です。10の2乗が100なので、LOG10(100) = 2になります。</p>



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



<p class="wp-block-paragraph">結果は「3」です。10の3乗が1000です。</p>



<h3 class="wp-block-heading"><span id="toc7">いろいろな値の常用対数</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td>=LOG10(1)</td><td>0</td><td>10の0乗 = 1</td></tr><tr><td>=LOG10(10)</td><td>1</td><td>10の1乗 = 10</td></tr><tr><td>=LOG10(100)</td><td>2</td><td>10の2乗 = 100</td></tr><tr><td>=LOG10(1000)</td><td>3</td><td>10の3乗 = 1000</td></tr><tr><td>=LOG10(50)</td><td>1.698&#8230;</td><td>10の約1.7乗 = 50</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">10のべき乗でない数も計算できます。結果は小数になります。</p>



<h3 class="wp-block-heading"><span id="toc8">セル参照を使う</span></h3>



<p class="wp-block-paragraph">実務ではセル参照を使うケースがほとんどです。A2セルに値が入っているとします。</p>



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



<p class="wp-block-paragraph">セル参照にしておけば、値を変更するだけで結果が自動的に更新されます。</p>



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



<h3 class="wp-block-heading"><span id="toc10">データの桁数を求める</span></h3>



<p class="wp-block-paragraph">「この数値は何桁か？」を調べるパターンです。</p>



<p class="wp-block-paragraph">A2セルに数値が入っているとします。</p>



<pre class="wp-block-code"><code>=INT(LOG10(A2)) + 1</code></pre>



<p class="wp-block-paragraph">たとえばA2に「12345」が入っているとします。</p>



<pre class="wp-block-code"><code>=INT(LOG10(12345)) + 1</code></pre>



<p class="wp-block-paragraph">結果は「5」です。LOG10(12345) = 4.0915&#8230;なので、INT関数で4に切り捨て、1を足して5桁になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>LEN関数でも桁数は数えられます。ただしLEN関数は文字列の長さを数えるため、小数点やマイナス記号も含まれます。純粋な桁数ならLOG10関数のほうが正確です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc11">対数スケールでデータを比較する</span></h3>



<p class="wp-block-paragraph">桁数がバラバラなデータを比較するとき、LOG10関数で対数スケールに変換します。</p>



<p class="wp-block-paragraph">売上データがA2に入っているとします。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>元の値</th><th>=LOG10(元の値)</th></tr></thead><tbody><tr><td>100</td><td>2</td></tr><tr><td>10,000</td><td>4</td></tr><tr><td>1,000,000</td><td>6</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">100倍ずつ差があったデータが、対数変換すると2ずつ増える均等な間隔になります。グラフの軸を対数スケールにするときの考え方と同じです。</p>



<h3 class="wp-block-heading"><span id="toc12">数値の大きさで条件分岐する</span></h3>



<p class="wp-block-paragraph">数値の桁数に応じて処理を分けるパターンです。</p>



<pre class="wp-block-code"><code>=IF(LOG10(A2)&gt;=6, &quot;大口&quot;, IF(LOG10(A2)&gt;=3, &quot;中口&quot;, &quot;小口&quot;))</code></pre>



<p class="wp-block-paragraph">100万以上（6桁以上）を「大口」、1000以上（3桁以上）を「中口」、それ未満を「小口」に分類します。</p>



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



<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><strong>LOG10</strong></td><td><strong>常用対数を返す</strong></td><td><strong>10（固定）</strong></td><td><strong>1つ</strong></td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-log-function/">LOG</a></td><td>指定した底の対数を返す</td><td>自由に指定（省略時10）</td><td>1〜2つ</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-ln-function/">LN</a></td><td>自然対数を返す</td><td>e（約2.718）</td><td>1つ</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc14">LOG10関数とLOG関数の同値関係</span></h3>



<p class="wp-block-paragraph">LOG10(x)とLOG(x, 10)は同じ結果になります。</p>



<pre class="wp-block-code"><code>=LOG10(1000)     → 3（常用対数）
=LOG(1000, 10)   → 3（同じ結果）
=LOG(1000)       → 3（底省略でも同じ）</code></pre>



<p class="wp-block-paragraph">3つとも結果は同じです。LOG関数は底を省略すると10になるため、LOG10関数と同じ計算になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>備考</th></tr></thead><tbody><tr><td>=LOG10(100)</td><td>2</td><td>常用対数の専用関数</td></tr><tr><td>=LOG(100, 10)</td><td>2</td><td>底10を明示的に指定</td></tr><tr><td>=LOG(100)</td><td>2</td><td>底を省略（デフォルト10）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">どれを使っても計算結果は同じです。「常用対数を使う」と明示したいときはLOG10関数を使いましょう。数式の意図が伝わりやすくなります。</p>



<h3 class="wp-block-heading"><span id="toc15">底の選び方ガイド</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>底</th><th>使う場面</th><th>使う関数</th></tr></thead><tbody><tr><td>10</td><td>桁数の計算、pH、デシベル</td><td>LOG10関数 or <a href="https://mashukabu.com/spreadsheet-log-function/">LOG関数</a></td></tr><tr><td>e（約2.718）</td><td>連続成長率、統計分析、微積分</td><td><a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a></td></tr><tr><td>2</td><td>情報量（ビット数）、コンピュータ関連</td><td><a href="https://mashukabu.com/spreadsheet-log-function/">LOG関数</a></td></tr><tr><td>その他</td><td>特定の底が必要な計算</td><td><a href="https://mashukabu.com/spreadsheet-log-function/">LOG関数</a></td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">LOG10関数は引数の指定を間違えるとエラーが出ます。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#NUM!</td><td>値に0や負の数を指定した</td><td>正の数のみ指定する</td></tr><tr><td>#VALUE!</td><td>引数に文字列が入っている</td><td>セル参照先が数値かどうか確認する</td></tr><tr><td>#ERROR!</td><td>構文ミス（カッコ忘れ等）</td><td>数式の入力内容を見直す</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc17">値が0や負の数のとき</span></h3>



<p class="wp-block-paragraph">LOG10関数に0や負の数を渡すと#NUM!エラーです。</p>



<pre class="wp-block-code"><code>=LOG10(0)   → #NUM!
=LOG10(-5)  → #NUM!</code></pre>



<p class="wp-block-paragraph">対数は正の数に対してのみ定義されるため、0以下の値は計算できません。</p>



<p class="wp-block-paragraph">セル参照先にゼロが入る可能性があるときは、IF関数で事前にチェックしましょう。</p>



<pre class="wp-block-code"><code>=IF(A1&gt;0, LOG10(A1), &quot;正の数を入力してください&quot;)</code></pre>



<h3 class="wp-block-heading"><span id="toc18">文字列を渡したとき</span></h3>



<p class="wp-block-paragraph">LOG10関数に文字列を渡すと#VALUE!エラーです。</p>



<pre class="wp-block-code"><code>=LOG10(&quot;abc&quot;)  → #VALUE!</code></pre>



<p class="wp-block-paragraph">セル参照先が数値かどうか不安なときは、ISNUMBER関数で確認できます。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(A1), LOG10(A1), &quot;数値を入力してください&quot;)</code></pre>



<h2 class="wp-block-heading"><span id="toc19">Excelとの違い</span></h2>



<p class="wp-block-paragraph">LOG10関数はExcelとGoogleスプレッドシートで完全に同じ動作です。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Excel</th><th>Googleスプレッドシート</th></tr></thead><tbody><tr><td>構文</td><td>=LOG10(数値)</td><td>=LOG10(値)</td></tr><tr><td>動作</td><td>常用対数を返す</td><td>常用対数を返す</td></tr><tr><td>精度</td><td>15桁</td><td>15桁</td></tr><tr><td>0以下の引数</td><td>#NUM!</td><td>#NUM!</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数名の表記が若干異なるだけで、機能は完全に同じです。ファイルを共有しても計算結果はずれません。</p>



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



<p class="wp-block-paragraph">LOG10関数は、常用対数（底10の対数）を返す関数です。</p>



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



<ul class="wp-block-list"><li>構文は <code>=LOG10(値)</code> の1引数。底は10で固定</li><li>LOG10(100) = 2、LOG10(1000) = 3のように「10を何乗したらその値になるか」を返す</li><li>データの桁数を求めるには <code>=INT(LOG10(値)) + 1</code></li><li>LOG10(x) = LOG(x, 10) = LOG(x) で、3つとも同じ結果</li><li><a href="https://mashukabu.com/spreadsheet-ln-function/">LN関数</a>は底がe固定、<a href="https://mashukabu.com/spreadsheet-log-function/">LOG関数</a>は底を自由に指定できる</li><li>値は正の数のみ。0や負の数は#NUM!エラーになる</li></ul>



<p class="wp-block-paragraph">まずは <code>=LOG10(100)</code> で100の常用対数を表示するところから試してみてください。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-log10-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのIMLOG2関数の使い方｜複素数の2を底とする対数を求める方法</title>
		<link>https://mashukabu.com/excel-function-howto-use-imlog2/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-imlog2/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 11 Dec 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[IMLOG2]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[底2対数]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3109</guid>

					<description><![CDATA[ExcelのIMLOG2関数の使い方を初心者向けに解説。複素数の2を底とする対数（log2(z)）を返す構文・引数・計算例・エラー対処法を、具体的なサンプルデータ付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで複素数の対数を求めたいとき、「底が2の場合はどうすればいいんだろう？」と迷うことはありませんか。通常のLOG関数は実数にしか対応していないので、複素数を渡すとエラーになってしまいます。</p>



<p class="wp-block-paragraph">そんなときに使えるのが <strong>IMLOG2関数</strong> です。複素数を渡すだけで、2を底とする対数（log2(z)）の結果を複素数で返してくれますよ。</p>



<p class="wp-block-paragraph">この記事では、IMLOG2関数の基本的な書き方から実践的な活用例、よくあるエラーの対処法まで、サンプルデータ付きでわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-6" checked><label class="toc-title" for="toc-checkbox-6">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのIMLOG2関数とは？</a><ol><li><a href="#toc2" tabindex="0">底2対数とは？</a></li><li><a href="#toc3" tabindex="0">入力と出力のイメージ</a></li></ol></li><li><a href="#toc4" tabindex="0">IMLOG2関数の書き方（構文と引数）</a><ol><li><a href="#toc5" tabindex="0">基本構文</a></li><li><a href="#toc6" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc7" tabindex="0">ExcelでのIMLOG2関数の基本的な使い方</a><ol><li><a href="#toc8" tabindex="0">例1: セルの複素数から底2対数を求める</a></li><li><a href="#toc9" tabindex="0">例2: 関数内に直接値を指定する</a></li><li><a href="#toc10" tabindex="0">例3: COMPLEX関数と組み合わせる</a></li><li><a href="#toc11" tabindex="0">例4: 純虚数を渡した場合</a></li></ol></li><li><a href="#toc12" tabindex="0">IMLOG2関数の実践的な活用例</a><ol><li><a href="#toc13" tabindex="0">複数の複素数の底2対数を一括計算する</a></li><li><a href="#toc14" tabindex="0">IMEXP関数と組み合わせて検算する</a></li><li><a href="#toc15" tabindex="0">IMLN関数・IMLOG10関数と底を変換する</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">#NUM! エラー</a></li><li><a href="#toc18" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc19" tabindex="0">#NAME? エラー</a></li></ol></li><li><a href="#toc20" tabindex="0">似た関数との違い・使い分け</a></li><li><a href="#toc21" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">IMLOG2関数は、複素数 z に対して <strong>2を底とする対数（log2(z)）</strong> を複素数で返すExcelのエンジニアリング関数です。</p>



<p class="wp-block-paragraph">読み方は <strong>「イマジナリー・ログ・ツー」</strong> です。「IM」は Imaginary（虚数・複素数）、「LOG2」は base-2 Logarithm（2を底とする対数）を意味しています。</p>



<h3 class="wp-block-heading"><span id="toc2">底2対数とは？</span></h3>



<p class="wp-block-paragraph">対数（ログ）は「ある数を何乗したらその値になるか」を求める演算です。底2対数の場合は「2を何乗したらその値になるか」を計算します。</p>



<p class="wp-block-paragraph">たとえば log2(8) = 3 は、「2を3乗すると8になる」ということです。情報理論やコンピュータサイエンスではビット数の計算に底2対数が使われるため、なじみのある方も多いかもしれませんね。</p>



<p class="wp-block-paragraph">IMLOG2関数はこの底2対数を複素数の世界に拡張したものです。数学的には、複素数 z の底2対数は次の式で定義されます。</p>



<p class="wp-block-paragraph"><strong>log2(z) = ln(z) / ln(2)</strong></p>



<p class="wp-block-paragraph">ここで ln は自然対数です。手計算だと面倒ですが、IMLOG2関数を使えば一発で求められますよ。</p>



<h3 class="wp-block-heading"><span id="toc3">入力と出力のイメージ</span></h3>



<ul class="wp-block-list"><li><strong>入力</strong>: 複素数（例: &#8220;1+2i&#8221;）</li><li><strong>出力</strong>: log2(z) の結果を複素数で（例: &#8220;1.16096404744368+1.59727796468811i&#8221;）</li></ul>



<p class="wp-block-paragraph">結果も複素数で返ってくるのがポイントです。実数のLOG関数は正の値にしか使えませんが、IMLOG2関数は負の数や虚数を含む複素数にも対応しています。</p>



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



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



<pre class="wp-block-code"><code>=IMLOG2(複素数)</code></pre>



<p class="wp-block-paragraph">引数は1つだけなので、とてもシンプルです。</p>



<h3 class="wp-block-heading"><span id="toc6">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>複素数</td><td>必須</td><td>2を底とする対数を求めたい複素数。&#8221;x+yi&#8221; または &#8220;x+yj&#8221; のテキスト形式で指定します</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には、次のいずれかの方法で値を渡せます。</p>



<ul class="wp-block-list"><li><strong>文字列で直接指定</strong>: <code>=IMLOG2("3+4i")</code></li><li><strong>セル参照</strong>: <code>=IMLOG2(A1)</code>（A1セルに複素数が入っている場合）</li><li><strong>COMPLEX関数の結果</strong>: <code>=IMLOG2(COMPLEX(3,4))</code></li></ul>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-complex/">COMPLEX関数</a>を使えば、実部と虚部を別々に指定して複素数を作れます。セルの値を組み合わせたいときに便利ですよ。</p>



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



<p class="wp-block-paragraph">実際にIMLOG2関数を使ってみましょう。</p>



<h3 class="wp-block-heading"><span id="toc8">例1: セルの複素数から底2対数を求める</span></h3>



<p class="wp-block-paragraph">セルA1に「3+4i」が入っているとします。</p>



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



<p class="wp-block-paragraph">結果: <strong>2.32192809488736+1.33780421245098i</strong></p>



<p class="wp-block-paragraph">log2(5) は約2.32ですが、虚部の影響で結果は複素数になります。実部は複素数の絶対値の底2対数に近い値になっていますよ。</p>



<h3 class="wp-block-heading"><span id="toc9">例2: 関数内に直接値を指定する</span></h3>



<p class="wp-block-paragraph">セル参照を使わず、テキストで複素数を直接指定することもできます。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;8&quot;)</code></pre>



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



<p class="wp-block-paragraph">8は実数なので、結果はシンプルに3です。2^3 = 8 ですから、底2対数は3になるわけですね。</p>



<h3 class="wp-block-heading"><span id="toc10">例3: COMPLEX関数と組み合わせる</span></h3>



<p class="wp-block-paragraph">実部と虚部を別々のセルで管理している場合は、<a href="https://mashukabu.com/excel-function-howto-use-complex/">COMPLEX関数</a>と組み合わせると便利です。</p>



<p class="wp-block-paragraph">セルA1に「1」、B1に「1」が入っているとき:</p>



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



<p class="wp-block-paragraph">結果: <strong>0.5+1.13309003611042i</strong></p>



<p class="wp-block-paragraph">COMPLEX関数が「1+i」を作成し、IMLOG2関数が底2対数に変換する流れです。</p>



<h3 class="wp-block-heading"><span id="toc11">例4: 純虚数を渡した場合</span></h3>



<p class="wp-block-paragraph">純虚数（実部がゼロの複素数）を渡すこともできます。</p>



<pre class="wp-block-code"><code>=IMLOG2(&quot;4i&quot;)</code></pre>



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



<p class="wp-block-paragraph">実部の2は「4の底2対数 = 2」に対応し、虚部は i の偏角（pi/2）を ln(2) で割った値です。ちょっとむずかしく見えますが、IMLOG2関数に渡すだけで自動計算してくれるので安心してくださいね。</p>



<h2 class="wp-block-heading"><span id="toc12">IMLOG2関数の実践的な活用例</span></h2>



<h3 class="wp-block-heading"><span id="toc13">複数の複素数の底2対数を一括計算する</span></h3>



<p class="wp-block-paragraph">複素数がA1:A5に並んでいる場合、B1にIMLOG2関数を入力してB5までコピーすれば、まとめて底2対数を求められます。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>セル</th><th>複素数（A列）</th><th>log2(z) の結果（B列）</th></tr></thead><tbody><tr><td>1行目</td><td>2</td><td>1</td></tr><tr><td>2行目</td><td>4+3i</td><td>2.32192809488736+0.89853614163399i</td></tr><tr><td>3行目</td><td>1+i</td><td>0.5+1.13309003611042i</td></tr><tr><td>4行目</td><td>-1</td><td>0+4.53236014444168i</td></tr><tr><td>5行目</td><td>8i</td><td>3+2.26618007222084i</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">4行目の log2(-1) は実部が0、虚部が pi/ln(2) になる点に注目してください。負の実数の対数も複素数として計算できるのがIMLOG2関数の強みですよ。</p>



<h3 class="wp-block-heading"><span id="toc14">IMEXP関数と組み合わせて検算する</span></h3>



<p class="wp-block-paragraph">IMLOG2関数で求めた対数を使って、元の複素数に戻してみましょう。底2対数の逆演算は「2のz乗」です。</p>



<p class="wp-block-paragraph">セルA1に「3+4i」が入っているとき:</p>



<pre class="wp-block-code"><code>=IMPOWER(&quot;2&quot;, IMLOG2(A1))</code></pre>



<p class="wp-block-paragraph">結果: <strong>3+4i</strong>（元の値に戻る）</p>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-impower/">IMPOWER関数</a>で2をIMLOG2の結果乗すると、もとの複素数に戻ります。計算結果の検算に使えるので覚えておくと便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc15">IMLN関数・IMLOG10関数と底を変換する</span></h3>



<p class="wp-block-paragraph">底の変換公式を使うと、IMLOG2関数の結果からIMLN（自然対数）やIMLOG10（常用対数）の値を求められます。</p>



<pre class="wp-block-code"><code>log2(z) = ln(z) / ln(2) = log10(z) / log10(2)</code></pre>



<p class="wp-block-paragraph">つまり、次の3つの関数は底が違うだけで同じ対数を異なるスケールで表しています。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>底</th><th>=IMLOG系(&#8220;3+4i&#8221;) の結果（実部の近似値）</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imln/">IMLN</a></td><td>e（自然対数の底）</td><td>約 1.609</td></tr><tr><td>IMLOG2</td><td>2</td><td>約 2.322</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imlog10/">IMLOG10</a></td><td>10</td><td>約 0.699</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">底が大きいほど値が小さくなるイメージです。用途に応じて使い分けてくださいね。</p>



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



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



<p class="wp-block-paragraph">引数に有効な複素数として認識できない値を渡すと、#NUM! エラーが表示されます。</p>



<p class="wp-block-paragraph"><strong>よくある原因と対処法:</strong></p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>例</th><th>対処法</th></tr></thead><tbody><tr><td>複素数のテキスト形式が正しくない</td><td>=IMLOG2(&#8220;3+4&#8221;)</td><td>虚数単位の「i」または「j」を末尾に付ける</td></tr><tr><td>数値の間にスペースが入っている</td><td>=IMLOG2(&#8220;3 + 4i&#8221;)</td><td>スペースをすべて削除する</td></tr><tr><td>全角文字が混在している</td><td>=IMLOG2(&#8220;3+4i&#8221;)</td><td>半角英数字で入力し直す</td></tr><tr><td>ゼロ（0）を渡した</td><td>=IMLOG2(&#8220;0&#8221;)</td><td>log2(0) は数学的に定義されない。0以外の値を指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">虚数単位の「i」を付け忘れるケースが一番多いので、気を付けてくださいね。また、ゼロの対数は定義されないため、引数に0を渡してもエラーになります。</p>



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



<p class="wp-block-paragraph">引数が数値でもテキストでもない場合（論理値や空のセルなど）に、#VALUE! エラーが発生します。</p>



<pre class="wp-block-code"><code>=IMLOG2(TRUE)   → #VALUE!エラー
=IMLOG2(&quot;&quot;)     → #VALUE!エラー</code></pre>



<p class="wp-block-paragraph">セル参照を使う場合は、参照先に正しい複素数テキストが入っているか確認してみてください。</p>



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



<p class="wp-block-paragraph">関数名のスペルミスで発生します。「IMLOG2」を「IMLOG」などと書いていないか確認しましょう。また、Excel 2007より前のバージョンではIMLOG2関数が使えない場合があります。お使いのバージョンが対応しているか、確認しておきましょう。</p>



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



<p class="wp-block-paragraph">IMLOG2関数と一緒に使うことが多い関連関数を整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>機能</th><th>使用例</th></tr></thead><tbody><tr><td><a href="https://mashukabu.com/excel-function-howto-use-log/">LOG</a></td><td>実数の対数を指定した底で求める</td><td>=LOG(8,2) → 3</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imln/">IMLN</a></td><td>複素数の自然対数を求める</td><td>=IMLN(&#8220;3+4i&#8221;) → 1.609&#8230;+0.927&#8230;i</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imlog10/">IMLOG10</a></td><td>複素数の常用対数を求める</td><td>=IMLOG10(&#8220;3+4i&#8221;) → 0.698&#8230;+0.402&#8230;i</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imexp/">IMEXP</a></td><td>複素数の指数関数（e^z）を求める</td><td>=IMEXP(&#8220;1+2i&#8221;)</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-impower/">IMPOWER</a></td><td>複素数のべき乗を求める</td><td>=IMPOWER(&#8220;2+3i&#8221;,2)</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-complex/">COMPLEX</a></td><td>実部と虚部から複素数を作成</td><td>=COMPLEX(3,4) → &#8220;3+4i&#8221;</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imabs/">IMABS</a></td><td>複素数の絶対値を求める</td><td>=IMABS(&#8220;3+4i&#8221;) → 5</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-imargument/">IMARGUMENT</a></td><td>複素数の偏角を求める</td><td>=IMARGUMENT(&#8220;3+4i&#8221;) → 0.927&#8230;</td></tr></tbody></table></figure>



<p class="wp-block-paragraph"><strong>LOG関数との違い</strong>: LOG関数は正の実数にしか使えませんが、IMLOG2関数は複素数にも対応しています。実数だけを扱う場面ではLOG関数で十分です。複素数のデータを含む場面ではIMLOG2関数を使い分けてくださいね。</p>



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



<p class="wp-block-paragraph">IMLOG2関数は、複素数の2を底とする対数（log2(z)）を返すExcelのエンジニアリング関数です。</p>



<p class="wp-block-paragraph"><strong>この記事のポイントをおさらいしましょう。</strong></p>



<ul class="wp-block-list"><li>IMLOG2関数は複素数を渡すだけで底2対数を複素数で返してくれる</li><li>引数は1つだけ。&#8221;x+yi&#8221; 形式のテキストで複素数を渡す</li><li>数学的には ln(z) / ln(2) を計算している</li><li>IMPOWER(&#8220;2&#8221;, IMLOG2(z)) で元の値に戻せるので検算に使える</li><li>IMLN（自然対数）やIMLOG10（常用対数）とは底が違うだけ</li><li>エラーが出たら、虚数単位（i / j）の付け忘れやゼロ入力をチェック</li></ul>



<p class="wp-block-paragraph">複素数の底2対数をExcelで効率的に計算したい方は、ぜひ活用してみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-imlog2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのLN関数の使い方｜自然対数の基本とEXP関数との関係</title>
		<link>https://mashukabu.com/excel-function-howto-use-ln/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-ln/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 24 Sep 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[EXP関数]]></category>
		<category><![CDATA[LN関数]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[数学関数]]></category>
		<category><![CDATA[自然対数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2752</guid>

					<description><![CDATA[ExcelのLN関数は自然対数（底がe）を求める関数です。書式・引数・エラー対処から、EXP関数との逆関数関係、連続複利・対数リターン・回帰分析の実務活用まで、図解と事例で丁寧に解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「自然対数って何だっけ…」と聞かれて、すぐに答えられますか。学生時代に習ったはずなのに、いざExcelで使おうとすると手が止まりますよね。</p>



<p class="wp-block-paragraph">でも心配いりません。ExcelのLN関数は引数が1つだけのシンプルな関数です。仕組みを理解すれば、連続複利の試算、成長率の比較、回帰分析の前処理にも使いこなせます。</p>



<p class="wp-block-paragraph">この記事では、LN関数の基本から<a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>との逆関数関係、実務での使いどころ、エラー対処までわかりやすく解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-7" checked><label class="toc-title" for="toc-checkbox-7">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのLN関数とは？</a><ol><li><a href="#toc2" tabindex="0">LN・LOG・LOG10の使い分け早見表</a></li></ol></li><li><a href="#toc3" tabindex="0">LN関数の書式と引数</a><ol><li><a href="#toc4" tabindex="0">対応バージョン</a></li></ol></li><li><a href="#toc5" tabindex="0">LN関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">数値を直接指定する</a></li><li><a href="#toc7" tabindex="0">セル参照で指定する</a></li><li><a href="#toc8" tabindex="0">数式の中で組み合わせる</a></li><li><a href="#toc9" tabindex="0">主な入力値と結果の一覧</a></li></ol></li><li><a href="#toc10" tabindex="0">EXP関数との逆関数関係</a><ol><li><a href="#toc11" tabindex="0">数学的に見た逆関数の意味</a></li></ol></li><li><a href="#toc12" tabindex="0">LN関数の実務活用パターン</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">よくあるエラーと対処法</a><ol><li><a href="#toc17" tabindex="0">#NUM!エラー</a></li><li><a href="#toc18" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc19" tabindex="0">IFERRORでエラーを一括回避する</a></li></ol></li><li><a href="#toc20" tabindex="0">LN関数とSUMPRODUCT・配列関数の組み合わせ</a></li><li><a href="#toc21" tabindex="0">まとめ</a><ol><li><a href="#toc22" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LN関数は、<strong>自然対数（しぜんたいすう）</strong> を求める関数です。読み方は「ログ ナチュラル」です。関数名は <strong>L</strong>ogarithm <strong>N</strong>atural（自然対数）の頭文字に由来します。</p>



<p class="wp-block-paragraph">自然対数とは、<strong>e（ネイピア数）</strong> を底とする対数のことです。eは約2.71828で、円周率と同じく数学の世界で頻繁に登場する定数です。</p>



<p class="wp-block-paragraph">たとえば <code>=LN(7.389)</code> と入力すると、結果は約 <strong>2</strong> になります。これは「eを2乗すると約7.389になる」ことを意味しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>e^2 ≒ 7.389　⟺　LN(7.389) ≒ 2</p></blockquote>



<p class="wp-block-paragraph">「eって何に使うの？」と感じるかもしれません。eは自然界の成長や減衰を表す数式に登場します。人口の増加率や放射性物質の半減期など、連続的に変化する現象はeで記述されます。Excelでは、そうした計算を手軽に行えるのがLN関数です。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>自然対数は数学では <code>ln(x)</code>、工学では <code>log_e(x)</code> とも書きます。Excelでは「LN関数」が国際標準で、英語版・日本語版を問わず同じ名称です。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc2">LN・LOG・LOG10の使い分け早見表</span></h3>



<p class="wp-block-paragraph">Excelには対数を求める関数が3つあります。違いは「底が何か」だけです。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>底</th><th>書式例</th><th>主な用途</th></tr></thead><tbody><tr><td>LN</td><td>e≒2.718（固定）</td><td>=LN(10)</td><td>自然対数（連続複利・成長率）</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-log/">LOG</a></td><td>任意に指定可能（省略時は10）</td><td>=LOG(8,2)</td><td>底を自由に選びたいとき</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-log10/">LOG10</a></td><td>10（固定）</td><td>=LOG10(100)</td><td>常用対数（桁数計算・デシベル）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">自然対数を使いたいならLN関数を選びましょう。LOG関数でも <code>=LOG(10, EXP(1))</code> と書けば同じ結果になります。ただし、LN関数のほうがはるかに簡潔ですよ。</p>



<h2 class="wp-block-heading"><span id="toc3">LN関数の書式と引数</span></h2>



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



<pre class="wp-block-code"><code>=LN(数値)</code></pre>



<p class="wp-block-paragraph">引数は <strong>1つだけ</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>自然対数を求めたい正の実数を指定します</td></tr></tbody></table></figure>



<ul class="wp-block-list"><li>セル参照・数値・数式のいずれも指定できます</li><li>0以下の値を指定すると <strong>#NUM!エラー</strong> になります</li><li>テキストを指定すると <strong>#VALUE!エラー</strong> になります</li><li>戻り値はdouble型の浮動小数点数です。15桁精度で計算されます</li></ul>



<h3 class="wp-block-heading"><span id="toc4">対応バージョン</span></h3>



<p class="wp-block-paragraph">LN関数はExcelの初期バージョンから搭載されている標準関数です。Excel 2007以降の全バージョンに加え、Excel for Mac、Excel for Web、Microsoft 365でも利用できます。互換性を気にせず使えるので安心ですよ。</p>



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



<p class="wp-block-paragraph">実際にLN関数を使ってみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">数値を直接指定する</span></h3>



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



<p class="wp-block-paragraph">結果は <strong>0</strong> です。eの0乗は1だからです。どんな底でも、1の対数は必ず0になります。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で指定する</span></h3>



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



<p class="wp-block-paragraph">A1セルの値の自然対数を返します。データが変われば結果も自動で更新されるので便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc8">数式の中で組み合わせる</span></h3>



<pre class="wp-block-code"><code>=LN(SUM(B2:B10))</code></pre>



<p class="wp-block-paragraph">合計値の自然対数を一発で求められます。中間セルを用意する必要はありません。</p>



<h3 class="wp-block-heading"><span id="toc9">主な入力値と結果の一覧</span></h3>



<p class="wp-block-paragraph">覚えておくと便利な値をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力値</th><th>LN の結果</th><th>意味</th></tr></thead><tbody><tr><td>1</td><td>0</td><td>eの0乗 = 1</td></tr><tr><td>e（≒2.718）</td><td>1</td><td>eの1乗 = e</td></tr><tr><td>7.389</td><td>約2</td><td>eの2乗 ≒ 7.389</td></tr><tr><td>10</td><td>約2.303</td><td>eの約2.303乗 = 10</td></tr><tr><td>0.5</td><td>約-0.693</td><td>eの約-0.693乗 ≒ 0.5</td></tr><tr><td>100</td><td>約4.605</td><td>eの約4.605乗 ≒ 100</td></tr><tr><td>1000</td><td>約6.908</td><td>eの約6.908乗 ≒ 1000</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">eのちょうどの累乗なら整数が返ります。それ以外の値では小数になりますよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>Excelで「e」そのものを入力したいときは <code>=EXP(1)</code> と書きます。<code>=LN(EXP(1))</code> を試すと、結果が <strong>1</strong> になることを確認できます。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc10">EXP関数との逆関数関係</span></h2>



<p class="wp-block-paragraph">LN関数を使ううえで最も大切なのが、<strong><a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>との逆関数関係</strong> です。</p>



<p class="wp-block-paragraph">EXP関数は「eのべき乗」を求める関数です。つまり次の関係が成り立ちます。</p>



<figure class="wp-block-table"><table><thead><tr><th>式</th><th>結果</th><th>説明</th></tr></thead><tbody><tr><td>=LN(EXP(3))</td><td>3</td><td>eの3乗を自然対数に戻すと3</td></tr><tr><td>=EXP(LN(10))</td><td>10</td><td>10の自然対数をeで累乗すると10</td></tr><tr><td>=LN(EXP(0))</td><td>0</td><td>eの0乗は1。LN(1)は0</td></tr><tr><td>=EXP(LN(0.5))</td><td>0.5</td><td>1未満の値でも逆関数関係は成立</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">この関係を一言でまとめると、<strong>LNで対数にした値はEXPで元に戻せる</strong> ということです。逆も同じです。</p>



<p class="wp-block-paragraph">「LNで変換 → 計算 → EXPで元に戻す」という流れは、連続複利や成長率の計算で頻繁に登場します。セットで覚えておくと便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc11">数学的に見た逆関数の意味</span></h3>



<p class="wp-block-paragraph">数学では <code>y = e^x</code> のグラフと <code>y = ln(x)</code> のグラフが、<code>y = x</code> の直線に対して対称になります。Excel上でも <code>=EXP(A1)</code> と <code>=LN(A1)</code> を別々の列に並べると、互いに値を打ち消し合うことが確認できます。</p>



<pre class="wp-block-code"><code>A1セルに 5 を入力した場合
=LN(EXP(A1)) → 5
=EXP(LN(A1)) → 5</code></pre>



<p class="wp-block-paragraph">入力値そのものが返るのが、逆関数の証拠です。</p>



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



<p class="wp-block-paragraph">LN関数は理論的な関数に見えますが、実務でも活躍する場面があります。3つの代表例を紹介します。</p>



<h3 class="wp-block-heading"><span id="toc13">パターン1: 連続複利で目標到達年数を計算する</span></h3>



<p class="wp-block-paragraph">通常の複利は「年1回」や「月1回」など決まったタイミングで利息がつきます。一方、連続複利は「瞬間ごとに利息が発生する」という理論上の計算方法です。金融理論や年金計算で使われる考え方ですよ。</p>



<p class="wp-block-paragraph">連続複利の公式は次のとおりです。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>将来額 = 元本 × EXP(年利 × 年数)</p></blockquote>



<p class="wp-block-paragraph">逆に「目標額に達するまで何年かかるか」を求めるには、LN関数を使います。</p>



<pre class="wp-block-code"><code>=LN(目標額/元本) / 年利</code></pre>



<p class="wp-block-paragraph">たとえば元本100万円、年利3%で200万円に到達する年数は次のように計算します。</p>



<pre class="wp-block-code"><code>=LN(2000000/1000000) / 0.03</code></pre>



<p class="wp-block-paragraph">LN(2) ÷ 0.03 ≒ 0.693 ÷ 0.03 ≒ <strong>23.1年</strong> です。</p>



<p class="wp-block-paragraph">通常複利の場合は <code>=LOG(2,1.03)</code> で約23.4年。連続複利のほうがわずかに短くなります。この差が連続複利の特徴ですよ。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>「資産が2倍になる年数」を概算する <strong>72の法則</strong> をご存じですか。72÷年利%でおおよその倍増年数が求まります。年利3%なら72÷3=24年。LN関数で計算した23.1年とほぼ一致します。72の法則は <code>LN(2)≒0.693</code> に100を掛けて約69としたものを、計算しやすく72に丸めた近似式なんです。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc14">パターン2: 対数リターンで成長率を比較する</span></h3>



<p class="wp-block-paragraph">売上が「100万→150万→200万」と推移した場合、前年比は50%→33%と変動します。伸び幅は同じ50万円なのに、比率が変わるので比較しにくいですよね。</p>



<p class="wp-block-paragraph">こうしたケースでは、対数変換（対数リターン）を使うと扱いやすくなります。</p>



<pre class="wp-block-code"><code>=LN(今期の売上 / 前期の売上)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>期間</th><th>売上</th><th>前年比</th><th>LN(今期/前期)</th></tr></thead><tbody><tr><td>1年目</td><td>100万</td><td>—</td><td>—</td></tr><tr><td>2年目</td><td>150万</td><td>50%</td><td>0.405</td></tr><tr><td>3年目</td><td>200万</td><td>33%</td><td>0.288</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">対数リターンの利点は「加法性」です。2年分の対数リターンを足すと、全期間の対数リターンになります。0.405 + 0.288 = 0.693で、これはLN(200/100)と一致します。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>対数リターンは金融分野で「ログ収益率」とも呼ばれます。短期間（1日や1週間）の収益率では、通常リターンと対数リターンの差はわずか1%以下です。一方、年率換算や複数年の合算では対数リターンのほうが計算しやすく、株式分析やリスク評価でよく使われます。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc15">パターン3: 散布図に対数軸を当てて分析する</span></h3>



<p class="wp-block-paragraph">売上と広告費、人口と都市数など、桁の幅が大きいデータをそのまま散布図にすると、小さい値が見えなくなります。</p>



<p class="wp-block-paragraph">そこで、片方または両方の軸をLN関数で変換してからグラフを描くと、傾向が明確になります。</p>



<pre class="wp-block-code"><code>B列: 元データ（広告費）
C列: =LN(B2)  ← 対数変換した値</code></pre>



<p class="wp-block-paragraph">C列を散布図のX軸に使うと、データのばらつきが圧縮されて、回帰直線が引きやすくなりますよ。</p>



<p class="wp-block-paragraph">統計分析では、<code>y = a <em> x^b</code> という冪乗（べきじょう）関係を <code>LN(y) = LN(a) + b </em> LN(x)</code> という直線関係に変換するのに使います。Excel上では<a href="https://mashukabu.com/excel-function-howto-use-slope/">SLOPE関数</a>と組み合わせると、傾きbを直接求められます。</p>



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



<p class="wp-block-paragraph">LN関数で発生しやすいエラーは主に2種類です。</p>



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



<p class="wp-block-paragraph">数値に0または負の値を指定すると発生します。自然対数は正の数に対してのみ定義されるためです。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>数式例</th><th>対処法</th></tr></thead><tbody><tr><td>数値が0</td><td>=LN(0)</td><td>0の対数は定義されない</td></tr><tr><td>数値が負</td><td>=LN(-5)</td><td>正の数を指定する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">データが未入力のセルを参照してしまうケースが多いです。IF関数で事前チェックすると安全ですよ。</p>



<pre class="wp-block-code"><code>=IF(A1&gt;0, LN(A1), &quot;入力エラー&quot;)</code></pre>



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



<p class="wp-block-paragraph">数値にテキストが入っている場合に発生します。</p>



<pre class="wp-block-code"><code>=LN(&quot;abc&quot;)  → #VALUE!エラー</code></pre>



<p class="wp-block-paragraph">セル参照先に全角数字や単位付きの文字列（「100個」など）がないか確認してください。文字列形式の数値はVALUE関数で変換できます。</p>



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



<h3 class="wp-block-heading"><span id="toc19">IFERRORでエラーを一括回避する</span></h3>



<p class="wp-block-paragraph">データの一括処理では、IFERROR関数（エラー時に代替値を返す関数）で囲むと安全です。</p>



<pre class="wp-block-code"><code>=IFERROR(LN(A1), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">エラーが出たセルは空欄になるので、集計に影響しません。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>WARNING</strong></p><p>売上やアクセス数の対数を取るとき、月によって0が入る可能性があります。<code>=LN(売上)</code> がエラーになると<a href="https://mashukabu.com/excel-function-howto-use-average/">AVERAGE関数</a>の結果も巻き込まれて崩れます。<code>=LN(売上+1)</code> のように1を足してから対数を取る「<strong>log(x+1)変換</strong>」が、データ分析の現場ではよく使われますよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc20">LN関数とSUMPRODUCT・配列関数の組み合わせ</span></h2>



<p class="wp-block-paragraph">複数のセルにまとめてLN関数を適用したい場合、Microsoft 365では配列を直接渡せます。</p>



<pre class="wp-block-code"><code>=LN(A2:A10)</code></pre>



<p class="wp-block-paragraph">スピル機能で結果が10セルに展開されます。Excel 2019以前を使っている場合は、配列数式として <code>Ctrl+Shift+Enter</code> で確定するか、各セルに個別に入力してください。</p>



<p class="wp-block-paragraph">幾何平均（複数の値を掛け合わせた平方根）を対数で求めるテクニックもあります。</p>



<pre class="wp-block-code"><code>=EXP(AVERAGE(LN(A2:A10)))</code></pre>



<p class="wp-block-paragraph">各値を対数化 → 平均 → 元に戻す、という3段階で幾何平均が求まります。Excel標準の<a href="https://mashukabu.com/excel-function-howto-use-geomean/">GEOMEAN関数</a>と同じ結果になりますよ。</p>



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



<p class="wp-block-paragraph">LN関数のポイントを振り返ります。</p>



<ul class="wp-block-list"><li>LN関数はe（≒2.718）を底とする<strong>自然対数</strong>を返す関数</li><li>構文は <code>=LN(数値)</code> で、引数は1つだけ</li><li><a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>と逆関数の関係。LNで対数にした値はEXPで元に戻せる</li><li>連続複利の年数計算、対数リターンによる成長率比較、回帰分析の前処理など実務でも活躍</li><li>0以下の値を指定すると#NUM!エラー。IF関数やIFERRORで事前チェックがおすすめ</li><li>底が10の対数なら<a href="https://mashukabu.com/excel-function-howto-use-log10/">LOG10関数</a>、底を自由に指定したいなら<a href="https://mashukabu.com/excel-function-howto-use-log/">LOG関数</a>を使う</li></ul>



<p class="wp-block-paragraph">まずは <code>=LN(1)</code> が0を返すことを確認するところから試してみてください。EXP関数とセットで覚えておくと、対数の計算がぐっと楽になりますよ。</p>



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-log/">LOG関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-log10/">LOG10関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-sqrt/">SQRT関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-alphabetical-order/">Excel関数一覧（アルファベット順）</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-ln/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのLOG10関数の使い方｜常用対数を求める基本と実務活用</title>
		<link>https://mashukabu.com/excel-function-howto-use-log10/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-log10/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 28 Aug 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[LOG10関数]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[常用対数]]></category>
		<category><![CDATA[数学関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2589</guid>

					<description><![CDATA[ExcelのLOG10関数の使い方を基本から解説。常用対数（10を底とする対数）の求め方、桁数の計算やデシベル計算など実務での活用例、LOG・LN関数との違い、よくあるエラーの対処法もわかりやすく紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Excelで「10を底とする対数（常用対数）」を求めたいとき、どうすればいいか迷ったことはありませんか。</p>



<p class="wp-block-paragraph">科学計算やデータ分析をしていると「対数スケール」や「桁数の計算」が必要になる場面がありますよね。手で計算するのは大変ですし、間違いやすいものです。</p>



<p class="wp-block-paragraph">そんなときに使えるのがExcelの <strong>LOG10関数</strong> です。引数は1つだけ、書き方もシンプルなのに、桁数算出からデシベル計算まで幅広く使えます。</p>



<p class="wp-block-paragraph">この記事では、LOG10関数の基本的な書き方から実務で役立つ7つの活用パターンまで解説します。よくあるエラーと対処法、似た関数（LOG・LN）との使い分けもあわせて紹介していきますね。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-8" checked><label class="toc-title" for="toc-checkbox-8">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのLOG10関数とは？</a><ol><li><a href="#toc2" tabindex="0">LOG10関数で何ができる？</a></li></ol></li><li><a href="#toc3" tabindex="0">ExcelのLOG10関数の書き方（構文と引数）</a><ol><li><a href="#toc4" tabindex="0">基本構文</a></li><li><a href="#toc5" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc6" tabindex="0">LOG10関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">数値を直接指定する</a></li><li><a href="#toc8" tabindex="0">セル参照で指定する</a></li><li><a href="#toc9" tabindex="0">数式の結果を引数にする</a></li><li><a href="#toc10" tabindex="0">主な入力値と結果の早見表</a></li></ol></li><li><a href="#toc11" tabindex="0">LOG10関数の実務活用パターン</a><ol><li><a href="#toc12" tabindex="0">1. 数値の桁数を求める</a></li><li><a href="#toc13" tabindex="0">2. デシベル計算（音圧比・電力比）</a></li><li><a href="#toc14" tabindex="0">3. pH（水素イオン濃度指数）の計算</a></li><li><a href="#toc15" tabindex="0">4. 桁の違うデータをグラフで比較する</a></li><li><a href="#toc16" tabindex="0">5. 目標達成に必要な年数の計算</a></li><li><a href="#toc17" tabindex="0">6. 地震のマグニチュード差からエネルギー比を逆算する</a></li><li><a href="#toc18" tabindex="0">7. 大きな数値の対数スケール表示用ラベル</a></li></ol></li><li><a href="#toc19" tabindex="0">LOG10関数でよくあるエラーと対処法</a><ol><li><a href="#toc20" tabindex="0">#NUM!エラー</a></li><li><a href="#toc21" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc22" tabindex="0">IFERRORで一括ガードする方法</a></li></ol></li><li><a href="#toc23" tabindex="0">LOG10関数と似た関数との違い・使い分け</a><ol><li><a href="#toc24" tabindex="0">使い分けのポイント</a></li><li><a href="#toc25" tabindex="0">LOG10の逆演算は「10のべき乗」</a></li></ol></li><li><a href="#toc26" tabindex="0">LOG10関数を使うときの注意点</a><ol><li><a href="#toc27" tabindex="0">引数は必ず正の数にする</a></li><li><a href="#toc28" tabindex="0">表示桁数と実際の値のズレ</a></li><li><a href="#toc29" tabindex="0">単位の入った数値はあらかじめ数値化する</a></li><li><a href="#toc30" tabindex="0">LOG10と数式の組み合わせは括弧で明示する</a></li></ol></li><li><a href="#toc31" tabindex="0">まとめ</a><ol><li><a href="#toc32" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LOG10関数は、<strong>10を底とする対数（常用対数）</strong> を返す関数です。</p>



<p class="wp-block-paragraph">読み方は「ログテン」です。関数名は「LOG（対数を意味する Logarithm の略）」に底の「10」を付けた形になっています。</p>



<p class="wp-block-paragraph">たとえば <code>=LOG10(1000)</code> と入力すると、結果は <strong>3</strong> になります。これは「10を3回かけると1000になる（10 × 10 × 10 = 1000）」ことを意味します。</p>



<p class="wp-block-paragraph">常用対数は、実は日常生活でもなじみ深いものです。デシベル（音の大きさ）、pH（水溶液の酸性度）、地震のマグニチュードなどは、すべて常用対数がベースになっていますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">LOG10関数で何ができる？</span></h3>



<p class="wp-block-paragraph">LOG10関数を使うと、次のようなことが可能になります。</p>



<ul class="wp-block-list"><li>数値の <strong>桁数</strong> をすばやく求める</li><li>音圧比や電力比を <strong>デシベル（dB）</strong> に変換する</li><li>売上データのように <strong>桁が大きく違う値</strong> を比較しやすく整える</li><li>複利計算で <strong>目標到達までの年数</strong> を逆算する</li><li>化学・科学データの <strong>pH や水素イオン濃度</strong> を計算する</li></ul>



<p class="wp-block-paragraph">「対数」と聞くと身構えてしまいますが、実は実務でも結構使い道がある関数なんです。</p>



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



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



<pre class="wp-block-code"><code>=LOG10(数値)</code></pre>



<p class="wp-block-paragraph">引数は <strong>1つだけ</strong> です。底を指定する引数はありません。常用対数に特化したシンプルな関数になっています。</p>



<h3 class="wp-block-heading"><span id="toc5">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>数値</td><td>必須</td><td>対数を求めたい正の実数を指定します</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数には、次のいずれも指定できます。</p>



<ul class="wp-block-list"><li>セル参照（例: <code>A1</code>）</li><li>数値リテラル（例: <code>1000</code>）</li><li>数式の結果（例: <code>B2/B1</code>）</li></ul>



<p class="wp-block-paragraph">注意点もまとめておきます。</p>



<ul class="wp-block-list"><li>0以下の値を指定すると <strong>#NUM!エラー</strong> になります</li><li>数値以外のテキストを指定すると <strong>#VALUE!エラー</strong> になります</li><li>空白セルを指定した場合は <strong>0</strong> として扱われ、結果は #NUM! エラーになります</li></ul>



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



<p class="wp-block-paragraph">実際にLOG10関数を使ってみましょう。よく使うパターンを3つ紹介します。</p>



<h3 class="wp-block-heading"><span id="toc7">数値を直接指定する</span></h3>



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



<p class="wp-block-paragraph">結果は <strong>3</strong> です。10の3乗が1000だからですね。</p>



<h3 class="wp-block-heading"><span id="toc8">セル参照で指定する</span></h3>



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



<p class="wp-block-paragraph">A1セルの値の常用対数を返します。データが変わると結果も自動で更新されるので便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc9">数式の結果を引数にする</span></h3>



<pre class="wp-block-code"><code>=LOG10(B2/B1)</code></pre>



<p class="wp-block-paragraph">B2 と B1 の比率の常用対数を求めます。後ほど紹介するデシベル計算で使うパターンです。</p>



<h3 class="wp-block-heading"><span id="toc10">主な入力値と結果の早見表</span></h3>



<p class="wp-block-paragraph">覚えておくと便利な値をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力値</th><th>LOG10の結果</th><th>意味</th></tr></thead><tbody><tr><td>1</td><td>0</td><td>10の0乗 = 1</td></tr><tr><td>10</td><td>1</td><td>10の1乗 = 10</td></tr><tr><td>100</td><td>2</td><td>10の2乗 = 100</td></tr><tr><td>1000</td><td>3</td><td>10の3乗 = 1000</td></tr><tr><td>1000000</td><td>6</td><td>10の6乗 = 100万</td></tr><tr><td>0.1</td><td>-1</td><td>10の-1乗 = 0.1</td></tr><tr><td>0.01</td><td>-2</td><td>10の-2乗 = 0.01</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">10のきれいなべき乗なら整数が返ります。それ以外の値では小数が返りますよ。</p>



<p class="wp-block-paragraph">たとえば <code>=LOG10(2)</code> は約 0.30103、<code>=LOG10(5)</code> は約 0.69897 です。「LOG10(2) + LOG10(5) = LOG10(10) = 1」のように、対数の和は積の対数になる関係も成り立ちます。</p>



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



<p class="wp-block-paragraph">LOG10関数は「教科書の中だけの関数」ではありません。実務で役立つ場面を7つ紹介します。</p>



<h3 class="wp-block-heading"><span id="toc12">1. 数値の桁数を求める</span></h3>



<p class="wp-block-paragraph">データの桁数を調べたいときに使えるテクニックです。</p>



<pre class="wp-block-code"><code>=INT(LOG10(A1)) + 1</code></pre>



<p class="wp-block-paragraph">たとえば A1 に <strong>12345</strong> が入っている場合、LOG10(12345) は約 4.09 になります。INT関数（小数点以下を切り捨てる関数）で 4 にしてから 1 を足すと <strong>5桁</strong> と求まります。</p>



<p class="wp-block-paragraph">仕組みはシンプルです。「10の何乗か」が桁数 &#8211; 1 と一致するため、対数を取って切り捨て、1 を足すだけで桁数になります。大量の数値データの桁数をまとめてチェックしたいときに重宝しますよ。</p>



<p class="wp-block-paragraph">ただし、この式は <strong>正の整数</strong> を前提にしています。0や負の数、小数を含む場合は IFERROR を組み合わせて防御するのがおすすめです。</p>



<pre class="wp-block-code"><code>=IFERROR(INT(LOG10(ABS(A1))) + 1, 0)</code></pre>



<p class="wp-block-paragraph">ABS関数で絶対値に変換しておくと、負の数の桁数も求められます。</p>



<h3 class="wp-block-heading"><span id="toc13">2. デシベル計算（音圧比・電力比）</span></h3>



<p class="wp-block-paragraph">音の強さや電力比をデシベル（dB）で表す計算にもLOG10関数を使います。</p>



<p class="wp-block-paragraph">電力比のデシベルは次の式で求めます。</p>



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



<p class="wp-block-paragraph">A1 を基準値、A2 を測定値とすると、dB（デシベル）単位での比率が求まります。たとえば A1 が 1、A2 が 100 のとき、結果は <strong>20dB</strong> です。</p>



<p class="wp-block-paragraph">音圧や電圧のデシベルは係数が 20 になります。</p>



<pre class="wp-block-code"><code>=20 * LOG10(A2/A1)</code></pre>



<p class="wp-block-paragraph">「電力は 10 倍、音圧・電圧は 20 倍」と覚えておくとミスを防げます。</p>



<h3 class="wp-block-heading"><span id="toc14">3. pH（水素イオン濃度指数）の計算</span></h3>



<p class="wp-block-paragraph">化学のデータを扱う場面では、水素イオン濃度（mol/L）から pH を求めることがあります。</p>



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



<p class="wp-block-paragraph">A1 に水素イオン濃度（モル濃度）を入れると、その液体の pH が返ります。たとえば 1×10^-7 mol/L なら pH は <strong>7（中性）</strong> です。</p>



<p class="wp-block-paragraph">pH の定義そのものが「水素イオン濃度の常用対数の符号反転」なので、LOG10 関数だけでそのまま計算できます。</p>



<h3 class="wp-block-heading"><span id="toc15">4. 桁の違うデータをグラフで比較する</span></h3>



<p class="wp-block-paragraph">売上データのように 1 万円から 1 億円まで幅があるデータは、そのままグラフにすると小さい値がつぶれてしまいますよね。</p>



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



<p class="wp-block-paragraph">対数に変換してからグラフを作ると、桁の違うデータでもバランスよく可視化できます。Excel のグラフで「軸の書式設定 → 対数目盛を表示する」を使うのと同じ考え方です。</p>



<p class="wp-block-paragraph">データそのものを対数変換しておくと、線形目盛のグラフでもそのまま使えます。そのため、PowerPoint に貼り付けたときの見た目を整えやすくなりますよ。</p>



<h3 class="wp-block-heading"><span id="toc16">5. 目標達成に必要な年数の計算</span></h3>



<p class="wp-block-paragraph">複利計算で「元本が目標額に届くまで何年かかるか」を求める式にも LOG10 が登場します。</p>



<pre class="wp-block-code"><code>=LOG10(目標額/元本) / LOG10(1+年利)</code></pre>



<p class="wp-block-paragraph">たとえば元本 100 万円、年利 5% で 200 万円に到達する年数は次の式になります。</p>



<pre class="wp-block-code"><code>=LOG10(2) / LOG10(1.05)</code></pre>



<p class="wp-block-paragraph">結果は約 <strong>14.2 年</strong> です。「72 の法則」（72 ÷ 年利% で倍増年数を概算する）と近い値が出ますね。</p>



<h3 class="wp-block-heading"><span id="toc17">6. 地震のマグニチュード差からエネルギー比を逆算する</span></h3>



<p class="wp-block-paragraph">マグニチュード（M）が 1 大きくなると、地震のエネルギーは約 32 倍になると言われています。</p>



<p class="wp-block-paragraph">逆に「エネルギー比からマグニチュード差を求める」場面では、LOG10 が使えます。</p>



<pre class="wp-block-code"><code>=LOG10(エネルギー比) / 1.5</code></pre>



<p class="wp-block-paragraph">たとえばエネルギー比が 1000 倍のとき、マグニチュード差は LOG10(1000)/1.5 = 3/1.5 = <strong>2</strong> と算出されます。防災資料の整理でたまに登場する計算です。</p>



<h3 class="wp-block-heading"><span id="toc18">7. 大きな数値の対数スケール表示用ラベル</span></h3>



<p class="wp-block-paragraph">縦軸を「1, 10, 100, 1,000, 10,000」のように対数スケールで表示するラベルを作るときも便利です。</p>



<pre class="wp-block-code"><code>=10^A1</code></pre>



<p class="wp-block-paragraph">A1 に 0, 1, 2, 3 と入力した列を用意すれば、隣の列に 1, 10, 100, 1000 が並ぶラベルが作れます。逆に「数値からスケール上の位置」を出すときは LOG10 を使います。</p>



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



<p class="wp-block-paragraph">ダッシュボード作成時に重宝するパターンです。</p>



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



<p class="wp-block-paragraph">LOG10関数で発生しやすいエラーは大きく分けて2種類です。原因と対処法を整理しました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>主な原因</th><th>対処法</th></tr></thead><tbody><tr><td>#NUM!</td><td>0または負の数を指定した</td><td>IF関数で事前チェック / ABS関数で絶対値化</td></tr><tr><td>#VALUE!</td><td>数値以外のテキストを指定した</td><td>ISNUMBER関数で事前チェック / 入力値を見直す</td></tr><tr><td>#NAME?</td><td>関数名のスペルミス（LOG10の0を抜かす等）</td><td>LOG10と正しく入力する</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph"><strong>原因</strong>: 数値に 0 または負の値を指定した場合に発生します。</p>



<p class="wp-block-paragraph">対数は正の数に対してのみ定義されるため、0以下は計算できません。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: IF関数で事前チェックしましょう。</p>



<pre class="wp-block-code"><code>=IF(A1&gt;0, LOG10(A1), &quot;入力エラー&quot;)</code></pre>



<p class="wp-block-paragraph">A1 が 0 より大きいときだけ計算し、それ以外は「入力エラー」と表示します。</p>



<p class="wp-block-paragraph">絶対値で対数を取りたい場合は ABS関数を組み合わせます。</p>



<pre class="wp-block-code"><code>=IF(A1&lt;&gt;0, LOG10(ABS(A1)), &quot;入力エラー&quot;)</code></pre>



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



<p class="wp-block-paragraph"><strong>原因</strong>: 数値にテキストが入っている場合に発生します。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: ISNUMBER関数（値が数値かどうかを判定する関数）で事前にチェックします。</p>



<pre class="wp-block-code"><code>=IF(ISNUMBER(A1), LOG10(A1), &quot;数値を入力&quot;)</code></pre>



<p class="wp-block-paragraph">数値が文字列として入っているケースも多いです（例: 列のセル書式が「文字列」になっている）。データの取り込み元も合わせて確認するとミスを減らせます。</p>



<h3 class="wp-block-heading"><span id="toc22">IFERRORで一括ガードする方法</span></h3>



<p class="wp-block-paragraph">複数のエラー要因をまとめて吸収したい場合は、IFERROR を使うのが一番簡単です。</p>



<pre class="wp-block-code"><code>=IFERROR(LOG10(A1), &quot;入力値を確認&quot;)</code></pre>



<p class="wp-block-paragraph">#NUM! でも #VALUE! でも、まとめて「入力値を確認」と表示できます。レポート資料など、エラーをそのまま見せたくない場面で便利ですよ。</p>



<h2 class="wp-block-heading"><span id="toc23">LOG10関数と似た関数との違い・使い分け</span></h2>



<p class="wp-block-paragraph">Excelには対数を求める関数が複数あります。違いを整理しておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>底</th><th>用途</th><th>使用例</th></tr></thead><tbody><tr><td>LOG10</td><td>10（固定）</td><td>常用対数</td><td>桁数計算、デシベル、pH</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-log/">LOG</a></td><td>任意（省略時は10）</td><td>汎用対数</td><td>底を変えたい場合</td></tr><tr><td><a href="https://mashukabu.com/excel-function-howto-use-ln/">LN</a></td><td>e（自然対数の底）</td><td>自然対数</td><td>連続複利、成長率</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc24">使い分けのポイント</span></h3>



<p class="wp-block-paragraph">選び方は次の3つで判断できます。</p>



<ul class="wp-block-list"><li>底が 10 なら <strong>LOG10</strong> が一番シンプルです</li><li>底を自由に変えたいなら <strong>LOG関数</strong> を使います（例: 底2の対数を求めたい）</li><li>自然対数が必要なら <strong>LN関数</strong> の出番です（例: e を底にした連続複利）</li></ul>



<p class="wp-block-paragraph"><code>=LOG10(x)</code> と <code>=LOG(x, 10)</code> は同じ結果を返しますが、LOG10 のほうが短く書けるのでおすすめですよ。底を引数に書く必要がなく、入力ミスも減らせます。</p>



<h3 class="wp-block-heading"><span id="toc25">LOG10の逆演算は「10のべき乗」</span></h3>



<p class="wp-block-paragraph">LOG10 で対数にした値を元に戻すには、<strong>10 のべき乗</strong> を使います。</p>



<pre class="wp-block-code"><code>=10^LOG10(A1)</code></pre>



<p class="wp-block-paragraph">または POWER 関数を使う方法もあります。</p>



<pre class="wp-block-code"><code>=POWER(10, LOG10(A1))</code></pre>



<p class="wp-block-paragraph">どちらも結果は A1 の値そのものに戻ります。「対数 → 元の値」の変換は、データ可視化のあとに元の単位に戻したいときに役立ちますよ。</p>



<p class="wp-block-paragraph">なお、自然対数 LN の逆演算は EXP 関数です。LOG10 の逆演算には <a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>は使えないので注意してください。底が違うので結果が変わってしまいます。</p>



<h2 class="wp-block-heading"><span id="toc26">LOG10関数を使うときの注意点</span></h2>



<p class="wp-block-paragraph">ここまでの内容を踏まえて、実務で気をつけたいポイントをまとめておきます。</p>



<h3 class="wp-block-heading"><span id="toc27">引数は必ず正の数にする</span></h3>



<p class="wp-block-paragraph">繰り返しになりますが、LOG10 関数は正の数しか扱えません。0 や負の数が混ざる可能性のあるデータは、必ず IF または IFERROR でガードしましょう。</p>



<h3 class="wp-block-heading"><span id="toc28">表示桁数と実際の値のズレ</span></h3>



<p class="wp-block-paragraph">LOG10(2) などの結果は無理数なので、Excel の表示桁数によっては丸められます。「合計が合わない」と感じたときは、セルの書式を「数値・小数点以下15桁」に変えて実際の値を確認すると原因がわかります。</p>



<h3 class="wp-block-heading"><span id="toc29">単位の入った数値はあらかじめ数値化する</span></h3>



<p class="wp-block-paragraph">「123 個」のように単位付きで入力された数値は、文字列扱いになっていて #VALUE! エラーになります。VALUE関数や置換機能で数値だけを取り出してから LOG10 に渡してください。</p>



<h3 class="wp-block-heading"><span id="toc30">LOG10と数式の組み合わせは括弧で明示する</span></h3>



<p class="wp-block-paragraph"><code>=10 <em> LOG10(A2/A1)</code> のような式では、LOG10 の優先順位が高いため意図通りに動きます。とはいえ、可読性のために <code>=10 </em> (LOG10(A2/A1))</code> のように括弧で明示しておくと、後から見直したときに迷いません。</p>



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



<p class="wp-block-paragraph">LOG10関数は、Excelで常用対数（10を底とする対数）を求めるための関数です。</p>



<p class="wp-block-paragraph"><strong>この記事のポイント</strong> を振り返ってみましょう。</p>



<ul class="wp-block-list"><li>構文は <code>=LOG10(数値)</code> で、引数は1つだけ。底を指定する必要はない</li><li>桁数の計算、デシベル計算、pH 計算、対数スケールでのデータ比較など、実務でも活用できる場面は多い</li><li>0以下の値を指定すると #NUM! エラー、テキストを指定すると #VALUE! エラーになるので、IF関数や IFERROR関数での事前チェックがおすすめ</li><li>LOG関数・LN関数との違いは「底」の値。底が10なら迷わずLOG10を選ぶのが一番シンプル</li><li>逆演算は「10のべき乗」。<code>=10^LOG10(A1)</code> で元の値に戻せる</li></ul>



<p class="wp-block-paragraph">対数はとっつきにくいイメージがありますが、LOG10関数を使えば計算自体はとてもシンプルです。まずは桁数の計算など身近な場面から試してみてくださいね。</p>



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



<ul class="wp-block-list"><li><a href="https://mashukabu.com/excel-function-howto-use-log/">LOG関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-ln/">LN関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-alphabetical-order">Excel関数一覧（アルファベット順）</a></li><li><a href="https://mashukabu.com/excel-function-list-by-function/">Excel関数一覧（機能別）</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-log10/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Excel LOG関数の使い方｜LOG10・LNとの違いも解説</title>
		<link>https://mashukabu.com/excel-function-howto-use-log/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-log/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 27 Aug 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[LOG10関数]]></category>
		<category><![CDATA[LOG関数]]></category>
		<category><![CDATA[対数]]></category>
		<category><![CDATA[常用対数]]></category>
		<category><![CDATA[数学関数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=2587</guid>

					<description><![CDATA[ExcelのLOG関数は底を自由に指定できる対数関数です。書式・引数の意味・エラー対処から、LOG10・LNとの違い、複利で目標達成年数を求める実務活用例まで図解で詳しく解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「対数って何だっけ…」と手が止まった経験はありませんか。数学の記憶があいまいだと、ExcelのLOG関数も敬遠しがちです。でも安心してください。LOG関数は仕組みさえつかめば、複利計算や桁数カウントなど実務でも役立つ便利な関数です。この記事では、Microsoft 365 の Excel を例に、LOG関数の基本から LOG10・LN との違い、エラー対処法まで丁寧に解説します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-9" checked><label class="toc-title" for="toc-checkbox-9">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのLOG関数とは？</a><ol><li><a href="#toc2" tabindex="0">LOG・LOG10・LNの使い分け早見表</a></li></ol></li><li><a href="#toc3" tabindex="0">LOG関数の書式と引数</a><ol><li><a href="#toc4" tabindex="0">底を省略すると常用対数になる</a></li><li><a href="#toc5" tabindex="0">底に指定できる値・できない値</a></li></ol></li><li><a href="#toc6" tabindex="0">LOG関数の基本的な使い方</a><ol><li><a href="#toc7" tabindex="0">底を指定して対数を求める</a></li><li><a href="#toc8" tabindex="0">底を省略して常用対数を求める</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">#NUM!エラー</a></li><li><a href="#toc12" tabindex="0">#VALUE!エラー</a></li><li><a href="#toc13" tabindex="0">IFERRORでエラーを回避する</a></li></ol></li><li><a href="#toc14" tabindex="0">実務での活用例</a><ol><li><a href="#toc15" tabindex="0">複利で元本が2倍になる年数を求める</a></li><li><a href="#toc16" tabindex="0">データの桁数をLOG関数で数える</a></li><li><a href="#toc17" tabindex="0">商品数から必要な階層数を見積もる</a></li></ol></li><li><a href="#toc18" tabindex="0">よくある質問</a><ol><li><a href="#toc19" tabindex="0">LOG関数とLOG10関数はどちらを使うべきですか？</a></li><li><a href="#toc20" tabindex="0">LOG関数に0や負の数を入力したらどうなりますか？</a></li><li><a href="#toc21" tabindex="0">底をネイピア数e（自然対数）にしたいときはどうすればいいですか？</a></li><li><a href="#toc22" tabindex="0">LOG関数の結果が小数になるのはおかしいですか？</a></li><li><a href="#toc23" tabindex="0">LOG関数は古いExcel（2016や2019）でも使えますか？</a></li><li><a href="#toc24" tabindex="0">LOG関数とPOWER関数はどう違いますか？</a></li></ol></li><li><a href="#toc25" tabindex="0">LOG関数まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">LOG関数は「対数（たいすう）」を求める関数です。対数とは、ある数を何乗したら目的の数になるかを表す値のことです。</p>



<p class="wp-block-paragraph">たとえば「2を何乗したら8になるか」を考えてみましょう。2×2×2＝8なので、答えは3です。これを数式で書くと次のようになります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>2^3 = 8　⟺　log₂(8) = 3</p></blockquote>



<p class="wp-block-paragraph">左の式は「2の3乗は8」、右の式は「底2の対数で8は3」と読みます。ここで「底（てい）」とは、何乗するかの基準となる数のことです。</p>



<p class="wp-block-paragraph">つまりLOG関数は「底を何乗したら指定した数値になるか」を返してくれる関数です。Excelでは <code>=LOG(8,2)</code> と入力すれば、結果は「3」になります。</p>



<p class="wp-block-paragraph">LOG関数は Microsoft 365・Excel 2021・Excel for Web を含む現行のすべてのバージョンで利用できます。古いバージョン（Excel 2016・2019）でも同じ書式で動作するため、互換性を気にせず使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc2">LOG・LOG10・LNの使い分け早見表</span></h3>



<p class="wp-block-paragraph">Excelには対数を求める関数が3つあります。違いは「底が何か」だけです。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数</th><th>底</th><th>書式例</th><th>結果</th><th>用途</th></tr></thead><tbody><tr><td>LOG</td><td>任意に指定可能（省略時は10）</td><td>=LOG(8,2)</td><td>3</td><td>底を自由に選びたいとき</td></tr><tr><td>LOG10</td><td>10（固定）</td><td>=LOG10(100)</td><td>2</td><td>常用対数（桁数計算など）</td></tr><tr><td>LN</td><td>e≒2.718（固定）</td><td>=LN(10)</td><td>約2.303</td><td>自然対数（指数関数の逆算など）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">底が10のときは<a href="https://mashukabu.com/excel-function-howto-use-log10/">LOG10関数</a>が使えます。底がe（ネイピア数≒2.718）のときは<a href="https://mashukabu.com/excel-function-howto-use-ln/">LN関数</a>を使うと、引数が1つで簡潔に書けます。底を自由に指定したい場合は、LOG関数を使いましょう。</p>



<p class="wp-block-paragraph">底を指定しないシンプルな対数なら LOG10 や LN のほうが読みやすく、底を変えてシミュレーションしたいなら LOG が最適です。指数の逆算をしたい場合は<a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>、累乗計算は<a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数</a>を組み合わせるとさらに応用が広がります。</p>



<h2 class="wp-block-heading"><span id="toc3">LOG関数の書式と引数</span></h2>



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



<pre class="wp-block-code"><code>=LOG(数値, [底])</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/省略可</th><th>説明</th></tr></thead><tbody><tr><td>数値</td><td>必須</td><td>対数を求めたい正の実数</td></tr><tr><td>底</td><td>省略可</td><td>対数の底。省略すると10</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc4">底を省略すると常用対数になる</span></h3>



<p class="wp-block-paragraph">第2引数の「底」を省略した場合、底は自動的に10になります。つまり <code>=LOG(100)</code> は <code>=LOG10(100)</code> と同じ結果を返します。</p>



<p class="wp-block-paragraph">常用対数（底が10の対数）を使う場面では、底の指定を省略するだけでOKです。ただし、意図を明確にしたい場合は <code>=LOG10(100)</code> と書くほうが読み手に伝わりやすいですよ。</p>



<h3 class="wp-block-heading"><span id="toc5">底に指定できる値・できない値</span></h3>



<p class="wp-block-paragraph">底にはいくつかの制約があります。以下の条件を満たす数値だけが指定できます。</p>



<figure class="wp-block-table"><table><thead><tr><th>条件</th><th>指定可否</th><th>理由</th></tr></thead><tbody><tr><td>正の数（0.5, 2, 10など）</td><td>指定可</td><td>通常の対数計算が可能</td></tr><tr><td>1</td><td>指定不可</td><td>1を何乗しても1のため、対数が定義できない</td></tr><tr><td>0以下（0, -2など）</td><td>指定不可</td><td>対数の底は正の数に限られる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">底に1や0以下の値を指定すると <code>#NUM!</code> エラーになります。セルの参照先が意図しない値になっていないか確認してみてください。</p>



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



<p class="wp-block-paragraph">ここでは具体的な数式と結果を見ていきましょう。</p>



<h3 class="wp-block-heading"><span id="toc7">底を指定して対数を求める</span></h3>



<p class="wp-block-paragraph">底を明示的に指定するパターンです。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td>=LOG(8,2)</td><td>3</td><td>2を3乗すると8</td></tr><tr><td>=LOG(81,3)</td><td>4</td><td>3を4乗すると81</td></tr><tr><td>=LOG(10000,10)</td><td>4</td><td>10を4乗すると10000</td></tr><tr><td>=LOG(0.01,10)</td><td>-2</td><td>10の-2乗は0.01</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">このように「底を何乗すれば数値になるか」を返してくれます。検算したいときは、底を結果で累乗してみましょう。たとえば <code>=2^3</code> は8になるので、<code>=LOG(8,2)</code> の結果「3」が正しいとわかります。累乗は <code>^</code> 演算子の代わりに<a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数</a>（例 <code>=POWER(2,3)</code>）でも書けます。</p>



<h3 class="wp-block-heading"><span id="toc8">底を省略して常用対数を求める</span></h3>



<p class="wp-block-paragraph">底を省略すると、底は10として計算されます。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td>=LOG(100)</td><td>2</td><td>10を2乗すると100</td></tr><tr><td>=LOG(1000)</td><td>3</td><td>10を3乗すると1000</td></tr><tr><td>=LOG(50)</td><td>約1.699</td><td>10の約1.699乗で50</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">10のきれいな累乗でない数値を指定すると、結果は小数になります。これは正常な動作なので心配いりません。</p>



<h3 class="wp-block-heading"><span id="toc9">小数を四捨五入してきれいな桁にする</span></h3>



<p class="wp-block-paragraph">LOG関数の結果は小数になることが多いので、表示を整えたい場合は<a href="https://mashukabu.com/excel-function-howto-use-round/">ROUND関数</a>と組み合わせるとスッキリします。</p>



<pre class="wp-block-code"><code>=ROUND(LOG(50), 3)      → 1.699
=ROUND(LOG(2,1.05), 1)  → 14.2</code></pre>



<p class="wp-block-paragraph">小数第2位までで切り上げたい場合は<a href="https://mashukabu.com/excel-function-howto-use-roundup/">ROUNDUP関数</a>、切り捨てなら<a href="https://mashukabu.com/excel-function-howto-use-rounddown/">ROUNDDOWN関数</a>を使いましょう。</p>



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



<p class="wp-block-paragraph">LOG関数で発生しやすいエラーは主に2種類です。原因と対処法をそれぞれ確認しましょう。</p>



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



<p class="wp-block-paragraph"><code>#NUM!</code> エラーは、数学的に対数が計算できない値を指定したときに発生します。</p>



<figure class="wp-block-table"><table><thead><tr><th>原因</th><th>数式例</th><th>対処法</th></tr></thead><tbody><tr><td>数値が0以下</td><td>=LOG(-5,2)</td><td>数値に正の数を指定する</td></tr><tr><td>数値が0</td><td>=LOG(0,10)</td><td>0の対数は定義されない</td></tr><tr><td>底が0以下</td><td>=LOG(8,-2)</td><td>底に正の数（1以外）を指定する</td></tr><tr><td>底が1</td><td>=LOG(8,1)</td><td>底を1以外に変更する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">特に多いのは、セル参照先が空欄や0になっているケースです。データが未入力のセルを参照していないか確認しましょう。</p>



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



<p class="wp-block-paragraph"><code>#VALUE!</code> エラーは、引数に数値以外の文字列を指定したときに発生します。</p>



<pre class="wp-block-code"><code>=LOG(&quot;abc&quot;,2)  → #VALUE!エラー</code></pre>



<p class="wp-block-paragraph">セル参照を使っている場合、参照先に全角数字や単位付きの文字列（「100円」など）が入っていないか確認してください。VALUE関数で数値に変換するか、元データを修正すると解決します。</p>



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



<p class="wp-block-paragraph">入力データにエラーの原因が含まれる可能性がある場合は、IFERROR関数で囲むと安全です。</p>



<pre class="wp-block-code"><code>=IFERROR(LOG(A1,2), &quot;計算不可&quot;)</code></pre>



<p class="wp-block-paragraph">この数式では、LOG関数がエラーを返したときに「計算不可」と表示します。空文字 <code>""</code> を指定すれば、エラー時にセルを空欄にすることもできます。データの一括処理などで活用してみてください。</p>



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



<p class="wp-block-paragraph">LOG関数は理論的な関数に見えますが、実務でも活躍する場面があります。</p>



<h3 class="wp-block-heading"><span id="toc15">複利で元本が2倍になる年数を求める</span></h3>



<p class="wp-block-paragraph">「年利5%の複利で運用すると、元本が2倍になるのは何年後か」を計算してみましょう。</p>



<p class="wp-block-paragraph">複利の計算式は「元本 × (1+利率)^年数 = 目標額」です。元本を1、目標額を2とすると、次の式になります。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p>(1.05)^年数 = 2</p></blockquote>



<p class="wp-block-paragraph">これを対数で解くと「年数 = log₁.₀₅(2)」です。Excelでは次のように書きます。</p>



<pre class="wp-block-code"><code>=LOG(2,1.05)</code></pre>



<p class="wp-block-paragraph">結果は約14.21です。つまり年利5%の複利なら、約14.2年で元本が2倍になるとわかります。</p>



<p class="wp-block-paragraph">利率をセルに入れておけば、さまざまな条件でシミュレーションできます。たとえばA1に利率を入力して <code>=LOG(2,1+A1)</code> とすれば、利率を変えるだけで結果が自動更新されますよ。</p>



<figure class="wp-block-table"><table><thead><tr><th>年利（A1）</th><th>数式</th><th>元本が2倍になる年数</th></tr></thead><tbody><tr><td>3%</td><td>=LOG(2,1+A1)</td><td>約23.4年</td></tr><tr><td>5%</td><td>=LOG(2,1+A1)</td><td>約14.2年</td></tr><tr><td>7%</td><td>=LOG(2,1+A1)</td><td>約10.2年</td></tr><tr><td>10%</td><td>=LOG(2,1+A1)</td><td>約7.3年</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「72の法則」（72÷年利＝倍になる年数）でも近い値が得られますが、LOG関数を使えば正確な値が一発で出せます。</p>



<h3 class="wp-block-heading"><span id="toc16">データの桁数をLOG関数で数える</span></h3>



<p class="wp-block-paragraph">正の整数の桁数は、常用対数を使って求められます。考え方はシンプルです。</p>



<ul class="wp-block-list"><li>1桁の数（1〜9）：LOG10の値は0以上1未満</li><li>2桁の数（10〜99）：LOG10の値は1以上2未満</li><li>3桁の数（100〜999）：LOG10の値は2以上3未満</li></ul>



<p class="wp-block-paragraph">つまり「常用対数の整数部分＋1」が桁数になります。数式にすると次のとおりです。</p>



<pre class="wp-block-code"><code>=INT(LOG(A1,10))+1</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>A1の値</th><th>LOG(A1,10)</th><th>INT+1</th><th>桁数</th></tr></thead><tbody><tr><td>5</td><td>約0.699</td><td>1</td><td>1桁</td></tr><tr><td>100</td><td>2</td><td>3</td><td>3桁</td></tr><tr><td>99999</td><td>約4.999</td><td>5</td><td>5桁</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">LEN関数でも桁数は数えられますが、LEN関数は文字列として数えます。そのため数値の書式に影響されることがあります。LOG関数を使う方法なら、純粋に数値の大きさから桁数を判定できますよ。</p>



<h3 class="wp-block-heading"><span id="toc17">商品数から必要な階層数を見積もる</span></h3>



<p class="wp-block-paragraph">「1段に10種類並べられる棚で、1000種類の商品を分類するには何段必要か？」のような階層設計でもLOG関数が活躍します。</p>



<pre class="wp-block-code"><code>=CEILING(LOG(1000,10), 1)</code></pre>



<p class="wp-block-paragraph">この場合、<code>LOG(1000,10)=3</code> なので3段必要とわかります。商品数を可変にしたい場合はA1に商品数を入れて <code>=CEILING(LOG(A1,10),1)</code> とすればOKです。情報量計算（ビット数の見積もり）にも応用できます。<code>=LOG(候補数,2)</code> でビット数が求められますよ。</p>



<h2 class="wp-block-heading"><span id="toc18">よくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc19">LOG関数とLOG10関数はどちらを使うべきですか？</span></h3>



<p class="wp-block-paragraph">底が10の常用対数を求めるなら、どちらを使っても結果は同じです。<code>=LOG(100)</code> と <code>=LOG10(100)</code> はどちらも2を返します。ただし「底が10であることを明示したい場合」はLOG10関数のほうが意図が伝わりやすいです。一方、底を自由に変えたい場合はLOG関数のみ対応できます。用途に応じて使い分けましょう。</p>



<h3 class="wp-block-heading"><span id="toc20">LOG関数に0や負の数を入力したらどうなりますか？</span></h3>



<p class="wp-block-paragraph"><code>#NUM!</code> エラーになります。対数の定義上、0以下の数値には対数が存在しないため計算できません。セル参照でデータを渡す場合は、空白や0が入り込んでいないかを確認してください。エラーを回避したい場合は <code>=IFERROR(LOG(A1,2), "")</code> のようにIFERROR関数でラップすると安全です。</p>



<h3 class="wp-block-heading"><span id="toc21">底をネイピア数e（自然対数）にしたいときはどうすればいいですか？</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-ln/">LN関数</a>を使うのが最もシンプルです。<code>=LOG(数値, EXP(1))</code> でも同じ結果になりますが、LN関数のほうが意図が明確で読みやすいです。自然対数の逆算（eの累乗を求める）には<a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>を使います。</p>



<h3 class="wp-block-heading"><span id="toc22">LOG関数の結果が小数になるのはおかしいですか？</span></h3>



<p class="wp-block-paragraph">正常な動作です。たとえば <code>=LOG(50)</code> の結果は約1.699になります。これは「10の約1.699乗が50」を意味しており、計算として正しい値です。きれいな整数になるのは、底の正確なべき乗（10→100→1000など）を数値に指定したときだけです。</p>



<h3 class="wp-block-heading"><span id="toc23">LOG関数は古いExcel（2016や2019）でも使えますか？</span></h3>



<p class="wp-block-paragraph">はい、LOG関数はExcelの初期バージョンから搭載されている標準関数なので、Microsoft 365・Excel 2021・Excel 2019・Excel 2016・Excel for Web のいずれでも同じ書式で使えます。書式や挙動はバージョンによる差がないため、互換性を気にせず利用できます。古いExcelファイルを開いて編集する場合でも問題ありません。</p>



<h3 class="wp-block-heading"><span id="toc24">LOG関数とPOWER関数はどう違いますか？</span></h3>



<p class="wp-block-paragraph"><a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数</a>は「底^指数」の累乗（指数計算）を求める関数で、LOG関数とはちょうど逆の関係です。たとえば <code>=POWER(2,3)</code> は8（2の3乗）を返し、<code>=LOG(8,2)</code> は3（2を何乗で8になるか）を返します。複利計算で「○年後の元本」を求めたいときはPOWER関数、「目標額になる年数」を求めたいときはLOG関数を使うと使い分けやすいですよ。</p>



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



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



<ul class="wp-block-list"><li>LOG関数は「底を何乗すれば指定した数値になるか」を返す対数関数</li><li>構文は <code>=LOG(数値, [底])</code>。底を省略すると10（常用対数）</li><li>底が10なら<a href="https://mashukabu.com/excel-function-howto-use-log10/">LOG10関数</a>、底がeなら<a href="https://mashukabu.com/excel-function-howto-use-ln/">LN関数</a>でも同じ計算ができる</li><li>数値は正の数のみ、底は正の数かつ1以外を指定する</li><li><code>#NUM!</code> エラーは数値や底の範囲外指定、<code>#VALUE!</code> エラーは文字列指定が原因</li><li>複利計算や桁数カウント、階層設計など、実務にも応用できる</li></ul>



<p class="wp-block-paragraph">対数の逆、つまり「eの累乗」を求めたい場合は<a href="https://mashukabu.com/excel-function-howto-use-exp/">EXP関数</a>、一般の累乗計算は<a href="https://mashukabu.com/excel-function-howto-use-power/">POWER関数</a>を確認してみてください。そのほかのExcel関数については<a href="https://mashukabu.com/excel-function-alphabetical-order/">Excel関数一覧</a>からお探しいただけます。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-log/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
