<?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>IMLOG2 &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/imlog2/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Fri, 27 Mar 2026 12:49:52 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>IMLOG2 &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<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>Excelで複素数の対数を求めたいとき、「底が2の場合はどうすればいいんだろう？」と迷うことはありませんか。通常のLOG関数は実数にしか対応していないので、複素数を渡すとエラーになってしまいます。</p>



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



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




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">Excelの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>IMLOG2関数は、複素数 z に対して <strong>2を底とする対数（log2(z)）</strong> を複素数で返すExcelのエンジニアリング関数です。</p>



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



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



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



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



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



<p><strong>log2(z) = ln(z) / ln(2)</strong></p>



<p>ここで 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>結果も複素数で返ってくるのがポイントです。実数の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>引数は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>引数には、次のいずれかの方法で値を渡せます。</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><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>実際にIMLOG2関数を使ってみましょう。</p>



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



<p>セルA1に「3+4i」が入っているとします。</p>



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



<p>結果: <strong>2.32192809488736+1.33780421245098i</strong></p>



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



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



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



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



<p>結果: <strong>3</strong></p>



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



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



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



<p>セルA1に「1」、B1に「1」が入っているとき:</p>



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



<p>結果: <strong>0.5+1.13309003611042i</strong></p>



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



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



<p>純虚数（実部がゼロの複素数）を渡すこともできます。</p>



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



<p>結果: <strong>2+2.26618007222084i</strong></p>



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



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



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



<p>セルA1に「3+4i」が入っているとき:</p>



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



<p>結果: <strong>3+4i</strong>（元の値に戻る）</p>



<p><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>底の変換公式を使うと、IMLOG2関数の結果からIMLN（自然対数）やIMLOG10（常用対数）の値を求められます。</p>



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



<p>つまり、次の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>底が大きいほど値が小さくなるイメージです。用途に応じて使い分けてくださいね。</p>



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



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



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



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



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



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



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



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



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



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



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



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



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



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



<p><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>複素数の底2対数をExcelで効率的に計算したい方は、ぜひ活用してみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-imlog2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
