<?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>IMCOSH &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/imcosh/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 04 Jun 2026 14:22:03 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>IMCOSH &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>スプレッドシートのIMCOSH関数の使い方｜複素数の双曲線余弦を一発で計算</title>
		<link>https://mashukabu.com/spreadsheet-imcosh-function/</link>
					<comments>https://mashukabu.com/spreadsheet-imcosh-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 28 Apr 2026 14:26:20 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[IMCOSH]]></category>
		<category><![CDATA[エンジニアリング関数]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[双曲線余弦]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=6311</guid>

					<description><![CDATA[GoogleスプレッドシートのIMCOSH関数の使い方を解説。複素数（a+bi）の双曲線余弦（ハイパボリックコサイン）を一発で求める基本構文、虚数単位i/jの扱い、COMPLEX関数やIMSINH関数との連携、オイラーの公式に基づく計算式、減衰振動や伝送線路解析での実務活用例、よくあるエラー対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">「スプレッドシートで複素数の双曲線余弦（ハイパボリックコサイン）を計算したいけど、定義式から手で展開するのは骨が折れる&#8230;」</p>



<p class="wp-block-paragraph">スプレッドシートで複素数を扱っていると、双曲線関数を複素数に拡張した計算が必要になる場面がありますよね。実部と虚部に分けて「cosh(a+bi) = cosh(a) × cos(b) + i sinh(a) × sin(b)」という式を毎回組み立てる手順は、ちょっと手間がかかります。</p>



<p class="wp-block-paragraph">そんなときに頼りになるのがGoogleスプレッドシートのIMCOSH関数です。複素数を渡すだけで双曲線余弦の値を一発で返してくれるので、伝送線路解析や減衰振動の数式が一気にすっきりしますよ。</p>



<p class="wp-block-paragraph">ExcelのIMCOSH関数と完全互換なので、Excelファイルとやり取りする現場でも安心ですね。COMPLEX関数で作った複素数や、IMSUM・IMPRODUCTの演算結果からも、そのまま双曲線余弦を計算できます。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのIMCOSH関数の基本構文と実務での活用例を解説します。定義式に基づく内部計算の仕組みや、よくあるエラーと対処法もしっかり紹介していきますよ。</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">スプレッドシートのIMCOSH関数とは？</a></li><li><a href="#toc2" tabindex="0">IMCOSH関数の書き方（構文と引数）</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">IMCOSH関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">文字列で複素数を直接指定する</a></li><li><a href="#toc7" tabindex="0">セル参照で複素数を指定する</a></li><li><a href="#toc8" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc9" tabindex="0">COMPLEX関数と組み合わせる</a></li><li><a href="#toc10" tabindex="0">度数法で角度を渡す（RADIANS関数と組み合わせる）</a></li><li><a href="#toc11" tabindex="0">ARRAYFORMULAで複数行を一括処理する</a></li></ol></li><li><a href="#toc12" tabindex="0">IMCOSH関数の実務活用例</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><li><a href="#toc16" tabindex="0">活用例4: IMSINH関数と組み合わせて双曲線関数恒等式を確認する</a></li><li><a href="#toc17" tabindex="0">活用例5: 減衰振動と双曲線余弦の関係</a></li></ol></li><li><a href="#toc18" tabindex="0">IMCOSH関数とCOMPLEX関数群の関係</a></li><li><a href="#toc19" tabindex="0">IMCOSH関数のよくあるエラーと対処法</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">数値そのものを渡した場合</a></li><li><a href="#toc23" tabindex="0">実部が大きすぎてオーバーフロー</a></li><li><a href="#toc24" tabindex="0">IFERRORでまとめてエラーを吸収する</a></li></ol></li><li><a href="#toc25" tabindex="0">IMCOSH関数とExcelの互換性</a></li><li><a href="#toc26" tabindex="0">複素数関連の関数一覧</a></li><li><a href="#toc27" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMCOSH関数（イマジナリー・ハイパボリックコサイン関数）は、複素数の双曲線余弦を返す関数です。エンジニアリング関数（電気・物理・工学系の計算で使う関数群）のひとつに分類されますよ。</p>



<p class="wp-block-paragraph">読み方は「イマジナリー・コッシュ」または「アイエム・コッシュ」で、英語の「imaginary number（虚数）」の「hyperbolic cosine（双曲線余弦）」に由来します。複素数「a+bi」に対して、複素数版の双曲線余弦を返してくれるのが役割ですね。</p>



<p class="wp-block-paragraph">そもそも複素数の双曲線余弦とは、実数の双曲線関数を複素数全体に拡張したものです。定義式は次のようになります。</p>



<pre class="wp-block-code"><code>cosh(a+bi) = cosh(a) × cos(b) + i × sinh(a) × sin(b)</code></pre>



<p class="wp-block-paragraph">実部は「cosh(a) × cos(b)」、虚部は「sinh(a) × sin(b)」となり、結果も複素数で返るのが特徴ですね。実数のCOSH関数のように1以上の値に収まらず、虚部によって振動成分も加わる点を覚えておきましょう。</p>



<figure class="wp-block-table"><table><thead><tr><th>複素数（z）</th><th>IMCOSH(z)の結果（概算）</th><th>内部計算</th></tr></thead><tbody><tr><td>0+0i</td><td>1</td><td>cosh(0)×cos(0) = 1×1</td></tr><tr><td>1+0i</td><td>1.5430806&#8230;</td><td>cosh(1) ≈ 1.5431</td></tr><tr><td>0+π/2i</td><td>0</td><td>cos(π/2) = 0</td></tr><tr><td>1+1i</td><td>0.8337+0.9889i</td><td>cosh(1)cos(1) + i sinh(1)sin(1)</td></tr><tr><td>0+πi</td><td>-1</td><td>cos(π) = -1</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">複素数の双曲線余弦は、伝送線路の電圧・電流分布、減衰振動の解析、量子力学の散乱問題、制御工学の伝達関数など、複素双曲線関数が必要な場面で活躍する基礎パーツですね。</p>



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



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



<pre class="wp-block-code"><code>=IMCOSH(複素数)</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」が使われる慣習ですね。IMCOSH関数はどちらでも同じように動作してくれます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>戻り値は元の入力と同じ虚数単位で返されます。「1+1i」を渡せば「i」付きで、「1+1j」を渡せば「j」付きで返るので、表記の統一性も保たれますよ。</p></blockquote>



<p class="wp-block-paragraph">引数の虚部はラジアン（弧度法）で扱われる点に注意してください。度数法（°）で角度を渡したい場合は、RADIANS関数（度をラジアンに変換する関数）で事前に変換する必要がありますね。</p>



<h2 class="wp-block-heading"><span id="toc5">IMCOSH関数の基本的な使い方</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>=IMCOSH(&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_imcosh-basic.png" alt="02 formula imcosh basic" /></figure>



<p class="wp-block-paragraph">結果は「0.833730025131149+0.988897705762865i」になります。実部・虚部それぞれが小数で返ってきますね。</p>



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



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



<p class="wp-block-paragraph">最初の式の結果は「1」、2番目は「1.54308063481524」ですね。cosh(0) = 1、cosh(1) ≈ 1.5431 という基本的な値が返ってきます。</p>



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



<p class="wp-block-paragraph">虚部だけの純虚数（実部0）を渡すと、結果は通常のコサインになります。</p>



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



<p class="wp-block-paragraph">結果は「0.54030230586814」になります。これはcos(1)の値ですね。cosh(0+1i) = cosh(0)×cos(1) = 1×cos(1) という計算が裏で動いています。</p>



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



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



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



<p class="wp-block-paragraph">結果は「-0.642148124715491+1.06860742138278i」になります。セル参照を渡すだけで、入っている複素数の双曲線余弦を取り出せますよ。</p>



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



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



<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>で作った複素数の双曲線余弦を、その場で計算することもできます。</p>



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



<p class="wp-block-paragraph">結果は「0.833730025131149+0.988897705762865i」、つまり「IMCOSH(&#8220;1+1i&#8221;)」と同じですね。COMPLEX(1, 1)が内部で「1+1i」を作り、IMCOSH関数がその双曲線余弦を返してくれます。</p>



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



<h3 class="wp-block-heading"><span id="toc10">度数法で角度を渡す（RADIANS関数と組み合わせる）</span></h3>



<p class="wp-block-paragraph">虚部を「30度」のような度数法で渡したい場合は、RADIANS関数で変換します。</p>



<pre class="wp-block-code"><code>=IMCOSH(COMPLEX(0, RADIANS(30)))</code></pre>



<p class="wp-block-paragraph">結果は「0.866025403784439」、つまりcos(30°) = √3/2 ≈ 0.866 ですね。実部0なのでcos(b)の値そのものが返ってきます。</p>



<p class="wp-block-paragraph">実部・虚部の両方に度数法を使いたい場面では、両方をRADIANSで包みます。</p>



<pre class="wp-block-code"><code>=IMCOSH(COMPLEX(RADIANS(30), RADIANS(45)))</code></pre>



<p class="wp-block-paragraph">度数法で角度を扱う実務シートでは、RADIANSとセットで使うのが定番ですよ。</p>



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



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



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



<p class="wp-block-paragraph">A列に並んだ複素数から、対応する双曲線余弦値をB列に一発で展開できますよ。伝送線路の各位置での電圧分布を一括計算するときに重宝しますね。</p>



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



<h3 class="wp-block-heading"><span id="toc13">活用例1: 実部と虚部に分解して可視化する</span></h3>



<p class="wp-block-paragraph">IMCOSH関数の戻り値は複素数なので、グラフにしたいときは実部と虚部に分けて取り出します。IMREAL関数とIMAGINARY関数を組み合わせる流れですよ。</p>



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



<pre class="wp-block-code"><code>B2: =IMCOSH(A2)               ← 複素数の双曲線余弦
C2: =IMREAL(B2)               ← 実部
D2: =IMAGINARY(B2)            ← 虚部</code></pre>



<p class="wp-block-paragraph">C列を実部、D列を虚部としてプロットすれば、複素平面上での挙動が一目で分かりますね。複素関数の振る舞いを学ぶ教材や、解析結果の可視化レポートで使えるパターンです。</p>



<h3 class="wp-block-heading"><span id="toc14">活用例2: 双曲線関数の定義式の検算</span></h3>



<p class="wp-block-paragraph">定義式「cosh(z) = (e^z + e^(-z)) / 2」から、IMCOSHとIMEXP（複素指数関数）を使って検算してみましょう。</p>



<p class="wp-block-paragraph">セルA2に複素数「1+1i」が入っているとします。</p>



<pre class="wp-block-code"><code>=IMCOSH(A2)
=IMDIV(IMSUM(IMEXP(A2), IMEXP(IMPRODUCT(&quot;-1&quot;, A2))), 2)</code></pre>



<p class="wp-block-paragraph">両者は同じ結果「0.833730025131149+0.988897705762865i」になりますよ。複素関数論の基本公式を、スプレッドシート上で確認できる仕組みですね。教育用の教材や、数式処理ソフトの代替として使える場面です。</p>



<h3 class="wp-block-heading"><span id="toc15">活用例3: 伝送線路の電圧分布シミュレーション</span></h3>



<p class="wp-block-paragraph">電気工学の伝送線路理論では、線路上の電圧分布が「V(x) = V0 × cosh(γx)」という形で表されます。ここでγは伝搬定数（複素数 α+jβ）、xは位置ですね。IMCOSH関数を使うと、この式をそのままシートで計算できますよ。</p>



<p class="wp-block-paragraph">位置x=0.5、伝搬定数γ=0.1+2i（減衰0.1、位相2rad/m）、初期電圧V0=100Vの場合を考えましょう。</p>



<pre class="wp-block-code"><code>A2: 0.5             ← 位置 x
B2: =IMCOSH(COMPLEX(0.1*A2, 2*A2))    ← cosh(γx)
C2: =IMPRODUCT(100, B2)               ← V0 × cosh(γx)
D2: =IMABS(C2)                        ← 電圧の大きさ</code></pre>



<p class="wp-block-paragraph">D2の値が、その位置での電圧の絶対値に対応しますね。同軸ケーブルや高周波回路の設計シートで活躍するパターンです。</p>



<h3 class="wp-block-heading"><span id="toc16">活用例4: IMSINH関数と組み合わせて双曲線関数恒等式を確認する</span></h3>



<p class="wp-block-paragraph">複素数の双曲線関数にも「cosh²(z) &#8211; sinh²(z) = 1」という恒等式が成り立ちます。IMCOSHとIMSINH（複素双曲線サイン関数）、IMPRODUCT、IMSUBを組み合わせて確認してみましょう。</p>



<pre class="wp-block-code"><code>A2: 1+1i
B2: =IMCOSH(A2)                              ← cosh(z)
C2: =IMSINH(A2)                              ← sinh(z)
D2: =IMSUB(IMPRODUCT(B2, B2), IMPRODUCT(C2, C2))   ← cosh²z - sinh²z</code></pre>



<p class="wp-block-paragraph">D2の結果は「1」（実部1・虚部ほぼ0）になりますよ。複素数でも実数の双曲線関数と同じ恒等式が成り立つことを、数値で確認できる仕組みですね。</p>



<h3 class="wp-block-heading"><span id="toc17">活用例5: 減衰振動と双曲線余弦の関係</span></h3>



<p class="wp-block-paragraph">過減衰系の応答では、解が「cosh(αt)」の形で現れる場面があります。複素減衰係数を扱うときに、IMCOSH関数が役立ちますよ。</p>



<p class="wp-block-paragraph">時間t=2秒、複素減衰係数α=0.5+0.3iの場合の応答を計算してみましょう。</p>



<pre class="wp-block-code"><code>A2: 2          ← 時間 t
B2: 0.5        ← 減衰係数の実部
C2: 0.3        ← 減衰係数の虚部
D2: =IMCOSH(COMPLEX(B2*A2, C2*A2))
E2: =IMREAL(D2)                ← 実部（観測される応答）</code></pre>



<p class="wp-block-paragraph">E2の値が、その時刻での観測量に対応しますね。RLC回路の過減衰応答や、機械振動の減衰解析シートで使える書き方です。</p>



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



<p class="wp-block-paragraph">複素数を扱う関数群の中で、IMCOSH関数の位置づけを整理しておきましょう。</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>実数 atan2(b,a)</td><td>偏角を取り出す</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imconjugate-function/">IMCONJUGATE</a></td><td>複素数 a+bi</td><td>複素数 a-bi</td><td>共役を作る</td></tr><tr><td><a href="https://mashukabu.com/spreadsheet-imcos-function/">IMCOS</a></td><td>複素数 z</td><td>複素数 cos(z)</td><td>コサインを計算する</td></tr><tr><td>IMCOSH</td><td>複素数 z</td><td>複素数 cosh(z)</td><td>双曲線余弦を計算する</td></tr><tr><td>IMSINH</td><td>複素数 z</td><td>複素数 sinh(z)</td><td>双曲線正弦を計算する</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMREALやIMABSが「複素数から実数を取り出す」のに対して、IMCOSH関数は「複素数から複素数を計算する」役割です。出力もそのまま複素数なので、IMSUMやIMPRODUCTにそのまま渡してさらに計算を続けられますよ。</p>



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



<pre class="wp-block-code"><code>=COMPLEX(COSH(IMREAL(A2))*COS(IMAGINARY(A2)), SINH(IMREAL(A2))*SIN(IMAGINARY(A2)))</code></pre>



<p class="wp-block-paragraph">これはIMCOSHと同じ結果になりますが、4つの関数を組み合わせる必要がありますよね。IMCOSHを使えば1関数で済むので、数式が読みやすくなります。</p>



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



<h3 class="wp-block-heading"><span id="toc20">#NUM! エラー（複素数の形式エラー）</span></h3>



<p class="wp-block-paragraph">複素数として認識できない文字列を渡したときに発生します。虚数単位が大文字になっていたり、i・j以外の文字を使っている場合が典型例ですよ。</p>



<pre class="wp-block-code"><code>=IMCOSH(&quot;1+1I&quot;)   → #NUM!（大文字のIは不可）
=IMCOSH(&quot;1+1k&quot;)   → #NUM!（i・j以外は不可）
=IMCOSH(&quot;１+１i&quot;) → #NUM!（全角文字は不可）</code></pre>



<figure class="wp-block-image"><img decoding="async" src="https://mashukabu.com/wp-content/uploads/2026/06/05_error_num.png" alt="05 error num" /></figure>



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



<p class="wp-block-paragraph">スペースが入っている場合（例: <code>"1 + 1i"</code>）も認識できないことがあるので、余計な空白を除いておくと安心です。</p>



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



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



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



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



<h3 class="wp-block-heading"><span id="toc22">数値そのものを渡した場合</span></h3>



<p class="wp-block-paragraph">数値（虚部0の実数）を渡すと、実数のCOSH関数と同じ値が返ります。</p>



<pre class="wp-block-code"><code>=IMCOSH(0)    → 1
=IMCOSH(1)    → 1.5430806348152...</code></pre>



<p class="wp-block-paragraph">エラーにはなりません。ただし戻り値は複素数文字列として扱われる場合があるので、後続の数値計算で使うときはIMREAL関数で実部を取り出しておくと安心です。</p>



<h3 class="wp-block-heading"><span id="toc23">実部が大きすぎてオーバーフロー</span></h3>



<p class="wp-block-paragraph">実部が極端に大きい複素数を渡すと、cosh(a)が指数関数的に大きくなって、計算結果がオーバーフローすることがあります。</p>



<pre class="wp-block-code"><code>=IMCOSH(&quot;1000+0i&quot;)   → #NUM!（cosh(1000)が大きすぎる）</code></pre>



<p class="wp-block-paragraph">対処法は、実部の値を物理的に意味のある範囲に制限することです。減衰計算なら時定数の数倍程度に抑える、といった調整が必要ですね。</p>



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



<p class="wp-block-paragraph">入力データの信頼性が低い場合は、IFERROR関数（エラー時に代替値を返す関数）で包んでおくとシート全体の集計が止まりません。</p>



<pre class="wp-block-code"><code>=IFERROR(IMCOSH(A2), &quot;形式エラー&quot;)</code></pre>



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



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



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



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



<p class="wp-block-paragraph">ExcelのIMCOSH関数は、Excel 2013以降のバージョンで利用できます。Microsoft 365、Excel for Mac、Excel Online でも同じように使えますよ。Excel 2010以前のバージョンでは利用できないので、古い環境とファイルを共有する場合は注意してくださいね。</p>



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



<p class="wp-block-paragraph">IMCOSH関数と一緒に使うことが多い、複素数関連の関数をまとめました。</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><a href="https://mashukabu.com/spreadsheet-imcos-function/">IMCOS</a></td><td>複素数のコサインを返す</td></tr><tr><td>IMCOSH</td><td>複素数の双曲線余弦を返す</td></tr><tr><td>IMSIN</td><td>複素数のサインを返す</td></tr><tr><td>IMSINH</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>IMEXP</td><td>複素数の指数関数を返す</td></tr><tr><td>IMLN</td><td>複素数の自然対数を返す</td></tr><tr><td>IMSQRT</td><td>複素数の平方根を返す</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">IMCOSH関数は、これら複素数関数群の中で「双曲線余弦を計算する」役割を担います。COMPLEXで作り、IMCOSHで双曲線余弦を取り、IMREAL・IMAGINARYで実部と虚部に分けて可視化するのが基本パターンですね。</p>



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



<p class="wp-block-paragraph">GoogleスプレッドシートのIMCOSH関数は、複素数の双曲線余弦（ハイパボリックコサイン）を返す関数です。伝送線路解析や減衰振動、過減衰系の応答、制御工学の伝達関数など、複素双曲線関数が必要な場面で欠かせない関数ですよ。</p>



<ul class="wp-block-list"><li>構文は <code>=IMCOSH(複素数)</code> で引数は1つだけのシンプルな関数</li><li>「a+bi」を渡すと「cosh(a)cos(b) + i sinh(a)sin(b)」が返る</li><li>「a+bj」のような工学系表記もそのまま受け付ける</li><li>引数の虚部はラジアンで扱う（度数法ならRADIANS関数で変換）</li><li>虚部0の実数を渡すと、実数のCOSH関数と同じ値になる</li><li>実部0の純虚数を渡すと、通常のコサインcos(b)の値が返る</li><li>COMPLEX関数の結果やセル参照、複素数演算の結果から双曲線余弦を計算できる</li><li>IMSINH関数と組み合わせて双曲線関数恒等式を確認できる</li><li>ARRAYFORMULAで複数の複素数を一括処理できる</li><li>大文字の「I」「J」や全角文字、i・j以外の単位は #NUM! エラー</li><li>論理値やエラー値を渡すと #VALUE! エラー</li><li>実部が極端に大きいとオーバーフローで #NUM! エラー</li><li>ExcelのIMCOSH関数と完全互換（Excel 2013以降）</li></ul>



<p class="wp-block-paragraph">複素数の双曲線余弦が必要になったら、IMCOSH関数の出番ですよ。COMPLEX関数で複素数を作り、IMCOSHで双曲線余弦を取り、IMREAL・IMAGINARYで成分を分解する流れで、エンジニアリング系のシートを軽快に組み立ててみてくださいね。</p>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-imcosh-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>ExcelのIMCOSH関数の使い方｜複素数の双曲線余弦 cosh(z) を計算する完全ガイド</title>
		<link>https://mashukabu.com/excel-function-howto-use-imcosh/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-imcosh/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Tue, 29 Nov 2022 09:00:00 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[IMCOSH]]></category>
		<category><![CDATA[双曲線関数]]></category>
		<category><![CDATA[複素数]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=3068</guid>

					<description><![CDATA[ExcelのIMCOSH関数で複素数の双曲線余弦 cosh(z) を計算する方法を解説。実数・複素数・純虚数の入力パターン、IMSINH/IMCOTH との組み合わせ、i/j混在エラー対処、IM系関数の比較表まで完全網羅。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">ExcelやGoogleスプレッドシートで複素数の双曲線余弦 cosh(z) を計算したいときに使うのが、IMCOSH関数です。実数だけならEXP関数とPOWER関数を組み合わせれば求められますが、複素数（例: 1+2i）になると手計算は一気に大変になりますよね。</p>



<p class="wp-block-paragraph">IMCOSH関数を使えば、<code>=IMCOSH("1+2i")</code> のように1行書くだけで複素数の双曲線余弦が返ってきます。電気回路の伝送線路解析、信号処理のフィルタ設計、波動方程式のシミュレーションなど、複素数を扱うあらゆる実務シーンで重宝する関数です。</p>



<p class="wp-block-paragraph">この記事では、IMCOSH関数の基本構文から実数・複素数・純虚数の渡し方まで解説します。IMSINHやIMCOTHとの組み合わせ検算、<code>#VALUE!</code>エラーの対処、IM系関数の違いも丸ごとカバーしています。「i」と「j」の使い分けでハマりやすいポイントも具体例付きで紹介しますので、最後まで読めば実務で迷うことはなくなりますよ。</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">ExcelのIMCOSH関数とは？複素数の双曲線余弦を求める</a><ol><li><a href="#toc2" tabindex="0">IMCOSH関数の主な用途</a></li><li><a href="#toc3" tabindex="0">ExcelとGoogleスプレッドシートの両対応</a></li></ol></li><li><a href="#toc4" tabindex="0">IMCOSH関数の書式と引数の渡し方</a><ol><li><a href="#toc5" tabindex="0">複素数の書き方ルール</a></li><li><a href="#toc6" tabindex="0">セル参照とCOMPLEX関数の組み合わせ</a></li></ol></li><li><a href="#toc7" tabindex="0">IMCOSH関数の使い方①｜実数を渡して cosh(x) を計算する</a><ol><li><a href="#toc8" tabindex="0">実数を渡す3つのパターン</a></li><li><a href="#toc9" tabindex="0">検算用テーブルの例</a></li></ol></li><li><a href="#toc10" tabindex="0">IMCOSH関数の使い方②｜複素数（i形式・j形式）を渡す</a><ol><li><a href="#toc11" tabindex="0">代表的な複素数の計算例</a></li><li><a href="#toc12" tabindex="0">i形式とj形式の使い分け</a></li><li><a href="#toc13" tabindex="0">COMPLEX関数で j形式を生成する</a></li></ol></li><li><a href="#toc14" tabindex="0">IMCOSH関数の使い方③｜純虚数で cos(y) を逆算する</a><ol><li><a href="#toc15" tabindex="0">純虚数を渡した結果</a></li><li><a href="#toc16" tabindex="0">IMREAL関数で実数として取り出す</a></li></ol></li><li><a href="#toc17" tabindex="0">IMCOSH関数の応用｜検算・IMSINH/IMCOTHとの組み合わせ</a><ol><li><a href="#toc18" tabindex="0">応用①｜cosh²(z) − sinh²(z) = 1 の検証</a></li><li><a href="#toc19" tabindex="0">応用②｜IMCOTHを使った coth(z) の検算</a></li><li><a href="#toc20" tabindex="0">応用③｜伝送線路の特性インピーダンス計算</a></li></ol></li><li><a href="#toc21" tabindex="0">IMCOSH関数でよくあるエラーと対処法（#VALUE!・i/j混在）</a><ol><li><a href="#toc22" tabindex="0">#NUM! エラーの代表例</a></li><li><a href="#toc23" tabindex="0">i/j混在エラーの対処</a></li><li><a href="#toc24" tabindex="0">戻り値が文字列になる問題</a></li></ol></li><li><a href="#toc25" tabindex="0">IMCOSH・IMSINH・IMCOS・IMSIN・IMCOTHの違いを整理</a><ol><li><a href="#toc26" tabindex="0">双曲線関数と三角関数の関係</a></li><li><a href="#toc27" tabindex="0">使い分けの目安</a></li></ol></li><li><a href="#toc28" tabindex="0">ExcelのIMCOSH関数 よくある質問（FAQ）</a><ol><li><a href="#toc29" tabindex="0">Q1. IMCOSH関数とCOSH関数の違いは何ですか？</a></li><li><a href="#toc30" tabindex="0">Q2. 虚数単位は「i」と「j」のどちらを使えばよいですか？</a></li><li><a href="#toc31" tabindex="0">Q3. IMCOSH関数の戻り値で四則演算するにはどうすればよいですか？</a></li><li><a href="#toc32" tabindex="0">Q4. Excel 2010以前でもIMCOSH関数は使えますか？</a></li><li><a href="#toc33" tabindex="0">Q5. cosh(1+i) はなぜ約 0.8337+0.9889i になるのですか？</a></li><li><a href="#toc34" tabindex="0">Q6. IMCOSHの結果を表示形式で小数桁数を制御できますか？</a></li></ol></li><li><a href="#toc35" tabindex="0">まとめ</a></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのIMCOSH関数とは？複素数の双曲線余弦を求める</span></h2>



<p class="wp-block-paragraph">IMCOSH関数は、指定した複素数 z の双曲線余弦 cosh(z) を返すエンジニアリング関数です。Excelでの読み方は「イマジナリー・ハイパボリック・コサイン」です。関数名の頭に付く「IM」は虚数（Imaginary）を意味するIM系関数共通の接頭辞です。</p>



<p class="wp-block-paragraph">数学的な定義は次の式のとおりです。</p>



<pre class="wp-block-code"><code>cosh(z) = (e^z + e^(-z)) / 2</code></pre>



<p class="wp-block-paragraph">z が実数 x のときは通常のハイパボリックコサインと同じ値を返します。z が複素数 x+yi のときは、オイラーの公式と組み合わせると次のように展開できます。</p>



<pre class="wp-block-code"><code>cosh(x+yi) = cosh(x)·cos(y) + i·sinh(x)·sin(y)</code></pre>



<p class="wp-block-paragraph">この式は実数の cosh/sinh と通常の cos/sin だけで構成されています。ただし手計算で毎回展開するのは非効率です。IMCOSH関数を使えば、引数に文字列で <code>"1+2i"</code> を渡すだけで答えが返ってきます。</p>



<h3 class="wp-block-heading"><span id="toc2">IMCOSH関数の主な用途</span></h3>



<p class="wp-block-paragraph">複素数の双曲線余弦は、次のような場面で頻繁に登場します。</p>



<ul class="wp-block-list"><li>電気回路の伝送線路方程式（特性インピーダンス・伝搬定数）</li><li>ラプラス変換・フーリエ変換と組み合わせた信号処理</li><li>波動方程式・熱伝導方程式の解析解</li><li>カテナリー曲線（懸垂曲線）の複素拡張</li><li>制御工学における伝達関数の評価</li></ul>



<p class="wp-block-paragraph">「複素関数論を学校で習ったきり触っていない」という方でも大丈夫です。計算自体はIMCOSHが引き受けてくれるので、式の意味だけ理解しておけば十分活用できます。</p>



<h3 class="wp-block-heading"><span id="toc3">ExcelとGoogleスプレッドシートの両対応</span></h3>



<p class="wp-block-paragraph">IMCOSH関数はExcel 2013以降で使えます。対応バージョンはMicrosoft 365、Excel 2016/2019/2021/2024、Excel for the web、Excel for Macです。Googleスプレッドシートにも同名で同仕様の関数が用意されています。両方のツールで同じ数式を書いて同じ結果が得られます。</p>



<p class="wp-block-paragraph">社内で Excel と Google スプレッドシートを併用しているチームでも、複素数計算のロジックを移植する手間がありません。そのまま使えるのは嬉しいポイントですね。</p>



<h2 class="wp-block-heading"><span id="toc4">IMCOSH関数の書式と引数の渡し方</span></h2>



<p class="wp-block-paragraph">IMCOSH関数の書式は非常にシンプルで、引数は1つだけです。</p>



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



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>内容</th><th>必須</th><th>受け付ける形式</th></tr></thead><tbody><tr><td>複素数</td><td>双曲線余弦を求めたい複素数</td><td>必須</td><td>文字列 <code>"x+yi"</code> または <code>"x+yj"</code>、実数値、<code>COMPLEX</code>関数の戻り値</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">戻り値は複素数を表す<strong>文字列</strong>で、<code>"a+bi"</code> の形式で返ります。実数部しか持たない結果でも文字列扱いになる点に注意してください。例えば <code>=IMCOSH(0)</code> の結果は数値の <code>1</code> ではなく文字列の <code>"1"</code> です。</p>



<h3 class="wp-block-heading"><span id="toc5">複素数の書き方ルール</span></h3>



<p class="wp-block-paragraph">複素数をリテラルで渡すときは、ダブルクォーテーションで囲んだ文字列にします。<code>+</code> や <code>-</code> の前後にスペースを入れてはいけません。</p>



<pre class="wp-block-code"><code>=IMCOSH(&quot;1+2i&quot;)      ← OK
=IMCOSH(&quot;1 + 2i&quot;)    ← NG（#NUM!）
=IMCOSH(&quot;1+2I&quot;)      ← NG（大文字Iは不可）</code></pre>



<p class="wp-block-paragraph">虚数単位は <strong>小文字の <code>i</code> または小文字の <code>j</code></strong> のどちらかを使います。電気工学の慣習では電流 i との混同を避けるため <code>j</code> を使うので、扱うデータに合わせて統一しましょう。詳しくは後述の「i/j混在」エラーで解説します。</p>



<h3 class="wp-block-heading"><span id="toc6">セル参照とCOMPLEX関数の組み合わせ</span></h3>



<p class="wp-block-paragraph">複素数を表形式で管理するときは、セル参照で渡すのが基本です。</p>



<pre class="wp-block-code"><code>A1: 1+2i
A2: =IMCOSH(A1)</code></pre>



<p class="wp-block-paragraph">実数部と虚数部を別セルで管理したい場合は、<a href="https://mashukabu.com/excel-function-howto-use-complex/">COMPLEX関数</a> と組み合わせると入力ミスを防げます。</p>



<pre class="wp-block-code"><code>A1: 1   ← 実数部
B1: 2   ← 虚数部
C1: =IMCOSH(COMPLEX(A1, B1))</code></pre>



<p class="wp-block-paragraph"><code>COMPLEX</code>関数は数値2つから複素数文字列を組み立てる関数です。数値のまま管理できるので、シミュレーションのパラメータを書き換えるときも安心ですよ。</p>



<h2 class="wp-block-heading"><span id="toc7">IMCOSH関数の使い方①｜実数を渡して cosh(x) を計算する</span></h2>



<p class="wp-block-paragraph">虚数部が 0、つまり実数だけを渡したときは、通常のハイパボリックコサイン（<code>COSH</code>関数）と同じ値を返します。Excelの <code>COSH(0)</code> は <code>1</code>、<code>COSH(1)</code> は約 <code>1.5431</code> ですが、IMCOSHでも同じ結果が得られます。</p>



<p class="wp-block-paragraph">ただし戻り値は <strong>文字列</strong> になるので、そのまま足し算には使えません。実数として後続計算で使いたい場合は <code>IMREAL</code> 関数で実数部を取り出す必要があります。</p>



<h3 class="wp-block-heading"><span id="toc8">実数を渡す3つのパターン</span></h3>



<p class="wp-block-paragraph">実数の渡し方は次の3つです。どれも結果は同じですが、書き方によって戻り値の型が変わります。</p>



<pre class="wp-block-code"><code>=IMCOSH(1)         → 1.54308063481524（数値そのまま渡す）
=IMCOSH(&quot;1&quot;)       → &quot;1.54308063481524&quot;（文字列で渡す）
=IMCOSH(&quot;1+0i&quot;)    → &quot;1.54308063481524&quot;（複素数形式で渡す）</code></pre>



<p class="wp-block-paragraph">最初の <code>=IMCOSH(1)</code> のように数値リテラルを渡したときも、内部的には文字列として処理されて返ります。Excelの表示では数値に見える場合がありますが、<code>ISNUMBER</code> でチェックすると <code>FALSE</code> になることが多いので注意してください。</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>x</th><th>=IMCOSH(x)</th><th>=COSH(x)</th><th>一致</th></tr></thead><tbody><tr><td>0</td><td>1</td><td>1</td><td>OK</td></tr><tr><td>0.5</td><td>1.12762596520638</td><td>1.12762596520638</td><td>OK</td></tr><tr><td>1</td><td>1.54308063481524</td><td>1.54308063481524</td><td>OK</td></tr><tr><td>2</td><td>3.76219569108363</td><td>3.76219569108363</td><td>OK</td></tr><tr><td>-1</td><td>1.54308063481524</td><td>1.54308063481524</td><td>OK（cosh は偶関数）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">cosh(x) は偶関数なので、<code>x</code> と <code>-x</code> で同じ値になるのが確認できます。IMCOSH を使えば、複素数領域でもこの性質が成立することを式で確かめられますよ。</p>



<h2 class="wp-block-heading"><span id="toc10">IMCOSH関数の使い方②｜複素数（i形式・j形式）を渡す</span></h2>



<p class="wp-block-paragraph">本題の複素数を渡すケースを見ていきます。<code>cosh(x+yi) = cosh(x)·cos(y) + i·sinh(x)·sin(y)</code> という展開式が成り立つので、結果は実数部と虚数部を持つ複素数になります。</p>



<h3 class="wp-block-heading"><span id="toc11">代表的な複素数の計算例</span></h3>



<p class="wp-block-paragraph">よく登場する複素数の値で、IMCOSH の結果を一覧にしました。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力</th><th>=IMCOSH(入力)</th><th>概算</th></tr></thead><tbody><tr><td><code>"1+i"</code></td><td>0.833730025131149+0.988897705762865i</td><td>0.8337+0.9889i</td></tr><tr><td><code>"1+2i"</code></td><td>-0.642148124715425+1.06860742138278i</td><td>-0.6421+1.0686i</td></tr><tr><td><code>"2+3i"</code></td><td>-3.72454550491532+0.511822569987385i</td><td>-3.7245+0.5118i</td></tr><tr><td><code>"0.5+1.5i"</code></td><td>0.0797743429091871+1.04153637132187i</td><td>0.0798+1.0415i</td></tr><tr><td><code>"-1+i"</code></td><td>0.833730025131149-0.988897705762865i</td><td>0.8337-0.9889i（共役対称）</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">「cosh(1+i) ≈ 0.8337+0.9889i」は複素関数論の教科書にもよく登場する例題です。<code>cosh(x+yi)</code> の実数部 <code>cosh(x)·cos(y)</code> と虚数部 <code>sinh(x)·sin(y)</code> をそれぞれ手計算すると、確かにこの値に一致します。</p>



<h3 class="wp-block-heading"><span id="toc12">i形式とj形式の使い分け</span></h3>



<p class="wp-block-paragraph">電気工学・電子回路の業界では、電流の記号 <code>i</code> との混同を避けるために虚数単位として <code>j</code> を使う慣習があります。IMCOSH関数は <code>i</code> と <code>j</code> の両方を受け付けますが、<strong>1つの数式の中で混在させるとエラー</strong>になります。</p>



<pre class="wp-block-code"><code>=IMCOSH(&quot;1+2i&quot;)    → OK
=IMCOSH(&quot;1+2j&quot;)    → OK
=IMCOSH(&quot;1+2I&quot;)    → NG（大文字は不可）</code></pre>



<p class="wp-block-paragraph">社内データソースが <code>j</code> 形式で統一されているなら、Excel上でも <code>j</code> で揃えるのが安全です。後述の「i/j混在エラー」のセクションで詳しく解説します。</p>



<h3 class="wp-block-heading"><span id="toc13">COMPLEX関数で j形式を生成する</span></h3>



<p class="wp-block-paragraph">COMPLEX関数の第3引数で接尾辞を指定すれば、<code>j</code> 形式の複素数を生成できます。</p>



<pre class="wp-block-code"><code>=COMPLEX(1, 2)        → &quot;1+2i&quot;
=COMPLEX(1, 2, &quot;j&quot;)   → &quot;1+2j&quot;
=IMCOSH(COMPLEX(1, 2, &quot;j&quot;))   → -0.642148124715425+1.06860742138278j</code></pre>



<p class="wp-block-paragraph">電気回路の計算で <code>j</code> 形式を使いたいときは、COMPLEX関数の第3引数を <code>"j"</code> に固定しておくと、表全体で表記を統一できます。</p>



<h2 class="wp-block-heading"><span id="toc14">IMCOSH関数の使い方③｜純虚数で cos(y) を逆算する</span></h2>



<p class="wp-block-paragraph">実数部が 0 の純虚数 <code>yi</code> を渡すと、<code>cosh(yi) = cos(y)</code> という有名な関係式が成立します。これは複素関数論の基礎で出てくる重要な恒等式で、IMCOSH関数を使うとExcel上で簡単に確認できます。</p>



<h3 class="wp-block-heading"><span id="toc15">純虚数を渡した結果</span></h3>



<p class="wp-block-paragraph">純虚数を渡した結果と、通常の <code>COS</code> 関数の結果を並べた表が次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>入力（ラジアン）</th><th>=IMCOSH(入力)</th><th>=COS(y)</th><th>一致</th></tr></thead><tbody><tr><td><code>"0i"</code></td><td>1</td><td>1 (y=0)</td><td>OK</td></tr><tr><td><code>"1i"</code></td><td>0.54030230586814</td><td>0.54030230586814 (y=1)</td><td>OK</td></tr><tr><td><code>"1.5708i"</code></td><td>0.000003673205103 (≒0)</td><td>0 (y=π/2)</td><td>OK</td></tr><tr><td><code>"3.14159i"</code></td><td>-0.999999999999732 (≒-1)</td><td>-1 (y=π)</td><td>OK</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">実数部 <code>x=0</code> の純虚数では、展開式の <code>sinh(0)·sin(y)</code> がゼロになるので虚数部は 0 になります。実数部 <code>cosh(0)·cos(y) = cos(y)</code> だけが残ります。これが <code>cosh(yi) = cos(y)</code> の正体です。</p>



<h3 class="wp-block-heading"><span id="toc16">IMREAL関数で実数として取り出す</span></h3>



<p class="wp-block-paragraph">純虚数を渡したときの結果は文字列なので、数値計算に使いたい場合は <code>IMREAL</code> 関数で実数部を取り出します。</p>



<pre class="wp-block-code"><code>A1: =IMCOSH(&quot;3.14159i&quot;)           → &quot;-0.999999999999732&quot;（文字列）
A2: =IMREAL(A1)                   → -0.999999999999732（数値）
A3: =IMREAL(A1) - COS(3.14159)    → 0 に近い値（誤差検証）</code></pre>



<p class="wp-block-paragraph">cos(y) を直接 <code>COS</code> 関数で求めるほうがもちろん簡単ですが、複素関数論の演習や、cosh の周期性を可視化する教材として IMCOSH の純虚数渡しは便利です。</p>



<h2 class="wp-block-heading"><span id="toc17">IMCOSH関数の応用｜検算・IMSINH/IMCOTHとの組み合わせ</span></h2>



<p class="wp-block-paragraph">IMCOSH関数は単独で使うよりも、関連する複素数双曲線関数と組み合わせることで威力を発揮します。代表的な検算パターンを3つ紹介します。</p>



<h3 class="wp-block-heading"><span id="toc18">応用①｜cosh²(z) − sinh²(z) = 1 の検証</span></h3>



<p class="wp-block-paragraph">双曲線関数の基本恒等式 <code>cosh²(z) − sinh²(z) = 1</code> は、複素数領域でも成り立ちます。<a href="https://mashukabu.com/excel-function-howto-use-imsinh/">IMSINH関数</a> と組み合わせて Excel 上で確かめてみましょう。</p>



<pre class="wp-block-code"><code>A1: 1+2i
B1: =IMSUB(IMPOWER(IMCOSH(A1), 2), IMPOWER(IMSINH(A1), 2))
       → &quot;1&quot;（恒等式が成立）</code></pre>



<p class="wp-block-paragraph"><code>IMPOWER</code> で2乗、<code>IMSUB</code> で引き算を行います。シミュレーション結果の妥当性チェックに使えば、複素数計算のバグを早期発見できますよ。</p>



<h3 class="wp-block-heading"><span id="toc19">応用②｜IMCOTHを使った coth(z) の検算</span></h3>



<p class="wp-block-paragraph">複素数の双曲線余接 <code>coth(z) = cosh(z) / sinh(z)</code> は、Excelでは <a href="https://mashukabu.com/excel-function-howto-use-imcoth/">IMCOTH関数</a> で求められます（Excel 2013以降）。IMCOSH と IMSINH を使った手計算結果と一致するか確認できます。</p>



<pre class="wp-block-code"><code>A1: 1+i
B1: =IMDIV(IMCOSH(A1), IMSINH(A1))   ← cosh/sinh の手計算
C1: =IMCOTH(A1)                       ← IMCOTH関数の結果
D1: =IF(B1=C1, &quot;一致&quot;, &quot;不一致&quot;)</code></pre>



<p class="wp-block-paragraph">両者がぴったり一致すれば、IMCOSH/IMSINH/IMCOTH の整合性が取れていることが確認できます。複素関数のライブラリを実装する際のテストケースとしても使えます。</p>



<h3 class="wp-block-heading"><span id="toc20">応用③｜伝送線路の特性インピーダンス計算</span></h3>



<p class="wp-block-paragraph">電気工学の応用例として、損失のある伝送線路の電圧分布を考えます。<code>V(z) = V0·cosh(γ·d) − Z0·I0·sinh(γ·d)</code> という式で表されます。γ（伝搬定数）と d（距離）の積が複素数になるので、IMCOSH と IMSINH が活躍します。</p>



<pre class="wp-block-code"><code>A1: 0.05+1.2i      ← γ·d（伝搬定数 × 距離）
B1: 1+0i           ← V0（入射電圧）
C1: 50+0i          ← Z0（特性インピーダンス）
D1: 0.02+0.01i     ← I0（入射電流）
E1: =IMSUB(IMPRODUCT(B1, IMCOSH(A1)), IMPRODUCT(C1, D1, IMSINH(A1)))</code></pre>



<p class="wp-block-paragraph">このような複合計算でも、IMCOSH を関数として呼び出すだけで複素数演算が完結します。電卓で複素数を1つずつ計算する手間が一気に減りますね。</p>



<h2 class="wp-block-heading"><span id="toc21">IMCOSH関数でよくあるエラーと対処法（#VALUE!・i/j混在）</span></h2>



<p class="wp-block-paragraph">IMCOSH関数で発生しやすいエラーと、その原因・対処法をまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>主な原因</th><th>対処法</th></tr></thead><tbody><tr><td><code>#NUM!</code></td><td>複素数として解釈できない文字列</td><td><code>"x+yi"</code> 形式に修正、<code>i</code>/<code>j</code>/大文字小文字を統一</td></tr><tr><td><code>#VALUE!</code></td><td>日付・論理値・配列を渡した</td><td>文字列または数値に変換してから渡す</td></tr><tr><td>結果が文字列</td><td>IMCOSHの戻り値は常に文字列</td><td><code>IMREAL</code>/<code>IMAGINARY</code>で数値化</td></tr></tbody></table></figure>



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



<p class="wp-block-paragraph">複素数の書式違反でほとんどの <code>#NUM!</code> エラーが発生します。よくあるNGパターンを確認しておきましょう。</p>



<pre class="wp-block-code"><code>=IMCOSH(&quot;1+2I&quot;)     → #NUM!（大文字 I は不可）
=IMCOSH(&quot;1 + 2i&quot;)   → #NUM!（スペースは不可）
=IMCOSH(&quot;1+2k&quot;)     → #NUM!（i/j 以外は不可）
=IMCOSH(&quot;1,2i&quot;)     → #NUM!（カンマ区切りは不可）
=IMCOSH(&quot;(1+2i)&quot;)   → #NUM!（括弧は不要）</code></pre>



<p class="wp-block-paragraph">複素数の文字列は <strong>「数値 + 符号 + 数値 + i/j」</strong> の構造を厳密に守る必要があります。スペースや括弧を入れたい気持ちはわかりますが、Excel のパーサーは受け付けてくれません。</p>



<h3 class="wp-block-heading"><span id="toc23">i/j混在エラーの対処</span></h3>



<p class="wp-block-paragraph">1つの数式の中で <code>i</code> と <code>j</code> を混在させると、<code>#NUM!</code> エラーになります。例えば次のような状況です。</p>



<pre class="wp-block-code"><code>A1: 1+2i
A2: 3+4j
B1: =IMSUM(A1, A2)   → #NUM!（i と j が混在）</code></pre>



<p class="wp-block-paragraph">対処法は、データソースの段階で表記を統一することです。<code>SUBSTITUTE</code> 関数で機械的に置き換えるのが手っ取り早いです。</p>



<pre class="wp-block-code"><code>=IMCOSH(SUBSTITUTE(A1, &quot;j&quot;, &quot;i&quot;))    ← j を i に統一
=IMCOSH(SUBSTITUTE(A1, &quot;i&quot;, &quot;j&quot;))    ← i を j に統一</code></pre>



<p class="wp-block-paragraph">CSVから取り込んだデータが混在しているときは、列ごと一度 <code>SUBSTITUTE</code> で正規化してからIMCOSHに渡す運用がおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc24">戻り値が文字列になる問題</span></h3>



<p class="wp-block-paragraph">IMCOSH の戻り値は常に文字列なので、<code>SUM</code> で合計を取ったり、<code>IF</code> で大小比較したりするとうまく動きません。数値として扱いたいときは、<code>IMREAL</code> で実数部、<code>IMAGINARY</code> で虚数部を取り出してから処理しましょう。</p>



<pre class="wp-block-code"><code>A1: =IMCOSH(&quot;1+2i&quot;)            → &quot;-0.642148124715425+1.06860742138278i&quot;
B1: =IMREAL(A1)                → -0.642148124715425（数値）
C1: =IMAGINARY(A1)             → 1.06860742138278（数値）
D1: =SQRT(B1^2 + C1^2)         → 1.24812... （絶対値 |cosh(1+2i)|）</code></pre>



<p class="wp-block-paragraph"><code>IMABS</code> 関数を使えば、<code>IMREAL</code>/<code>IMAGINARY</code> を経由せずに直接絶対値が取れます（<code>=IMABS(A1)</code>）。用途に応じて使い分けてください。</p>



<h2 class="wp-block-heading"><span id="toc25">IMCOSH・IMSINH・IMCOS・IMSIN・IMCOTHの違いを整理</span></h2>



<p class="wp-block-paragraph">IM系の三角関数・双曲線関数は名前が似ていて混同しがちです。それぞれの定義と用途を表で整理します。</p>



<figure class="wp-block-table"><table><thead><tr><th>関数名</th><th>数学記法</th><th>定義</th><th>主な用途</th></tr></thead><tbody><tr><td>IMCOSH</td><td>cosh(z)</td><td>(e^z + e^-z) / 2</td><td>双曲線余弦（伝送線路、波動方程式）</td></tr><tr><td>IMSINH</td><td>sinh(z)</td><td>(e^z − e^-z) / 2</td><td>双曲線正弦（伝送線路、波動方程式）</td></tr><tr><td>IMTANH</td><td>tanh(z)</td><td>sinh(z) / cosh(z)</td><td>双曲線正接（ニューラルネットの活性化関数）</td></tr><tr><td>IMCOTH</td><td>coth(z)</td><td>cosh(z) / sinh(z)</td><td>双曲線余接（Excel 2013以降で対応）</td></tr><tr><td>IMCOS</td><td>cos(z)</td><td>(e^iz + e^-iz) / 2</td><td>通常の余弦（複素数版）</td></tr><tr><td>IMSIN</td><td>sin(z)</td><td>(e^iz − e^-iz) / (2i)</td><td>通常の正弦（複素数版）</td></tr><tr><td>IMSEC</td><td>sec(z)</td><td>1 / cos(z)</td><td>複素正割</td></tr><tr><td>IMCSC</td><td>csc(z)</td><td>1 / sin(z)</td><td>複素余割</td></tr></tbody></table></figure>



<h3 class="wp-block-heading"><span id="toc26">双曲線関数と三角関数の関係</span></h3>



<p class="wp-block-paragraph">複素数領域では、双曲線関数と三角関数が密接に関係しています。代表的な恒等式は次のとおりです。</p>



<pre class="wp-block-code"><code>cosh(iy) = cos(y)        ← 純虚数を渡すと余弦になる
sinh(iy) = i·sin(y)      ← 純虚数を渡すと虚数倍の正弦になる
cos(iy) = cosh(y)        ← 逆も成立
sin(iy) = i·sinh(y)</code></pre>



<p class="wp-block-paragraph">つまり「<code>IMCOSH("0+1i")</code> と <code>IMCOS("1+0i")</code> は同じ結果」という性質があります。Excel 上で計算するとちゃんと一致するので、複素関数論の学習教材としても活用できますよ。</p>



<h3 class="wp-block-heading"><span id="toc27">使い分けの目安</span></h3>



<ul class="wp-block-list"><li><strong>波の伝搬・減衰・電気回路</strong> → <code>IMCOSH</code> / <code>IMSINH</code> / <code>IMTANH</code></li><li><strong>振動・周波数応答</strong> → <code>IMCOS</code> / <code>IMSIN</code></li><li><strong>比率や逆数が必要な場面</strong> → <code>IMCOTH</code> / <code>IMSEC</code> / <code>IMCSC</code></li><li><strong>絶対値・偏角だけ欲しい</strong> → <code>IMABS</code> / <code>IMARGUMENT</code></li></ul>



<p class="wp-block-paragraph">「双曲線（hyperbolic）= 末尾に H」という命名規則を覚えておくと、関数名で迷うことが減ります。</p>



<p class="wp-block-paragraph">Googleスプレッドシートで同じ計算をしたい場合は、<a href="https://mashukabu.com/spreadsheet-imcosh-function/">GoogleスプレッドシートのIMCOSH関数</a> や <a href="https://mashukabu.com/spreadsheet-imsinh-function/">IMSINH関数</a> もぜひ参考にしてください。</p>



<h2 class="wp-block-heading"><span id="toc28">ExcelのIMCOSH関数 よくある質問（FAQ）</span></h2>



<h3 class="wp-block-heading"><span id="toc29">Q1. IMCOSH関数とCOSH関数の違いは何ですか？</span></h3>



<p class="wp-block-paragraph"><code>COSH</code>関数は <strong>実数</strong> のハイパボリックコサインを返し、戻り値は数値型です。<code>IMCOSH</code>関数は <strong>複素数</strong> のハイパボリックコサインを返し、戻り値は文字列型です。実数しか扱わないなら <code>COSH</code> のほうが結果を直接四則演算に使えるので便利です。複素数を扱う必要があるなら <code>IMCOSH</code> を使い、<code>IMREAL</code> / <code>IMAGINARY</code> で実数部・虚数部を取り出してください。</p>



<h3 class="wp-block-heading"><span id="toc30">Q2. 虚数単位は「i」と「j」のどちらを使えばよいですか？</span></h3>



<p class="wp-block-paragraph">数学・物理学の分野では <code>i</code>、電気工学・電子回路の分野では <code>j</code> を使うのが慣習です。IMCOSH関数はどちらも受け付けますが、<strong>1つの数式・1つの列の中では必ず統一</strong>してください。混在すると <code>#NUM!</code> エラーになります。データソースが混在している場合は、<code>SUBSTITUTE</code> 関数で事前に置換するのがおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc31">Q3. IMCOSH関数の戻り値で四則演算するにはどうすればよいですか？</span></h3>



<p class="wp-block-paragraph">戻り値は文字列なので、そのままでは <code>+</code> <code>-</code> <code>*</code> <code>/</code> で計算できません。複素数同士の演算は <code>IMSUM</code>（加算）・<code>IMSUB</code>（減算）・<code>IMPRODUCT</code>（積算）・<code>IMDIV</code>（除算）の <strong>IM系演算関数</strong> を使ってください。実数として扱いたいときは <code>IMREAL</code> または <code>IMAGINARY</code> で数値化してから通常の演算子を使います。</p>



<h3 class="wp-block-heading"><span id="toc32">Q4. Excel 2010以前でもIMCOSH関数は使えますか？</span></h3>



<p class="wp-block-paragraph">IMCOSH関数は <strong>Excel 2013以降</strong> で標準対応しています。Excel 2010 では「分析ツール」アドインを有効化すれば使える場合もありますが、現在は Microsoft 365 / Excel 2016 以降の利用を強く推奨します。Googleスプレッドシートでは追加設定なしで最初から使えます。古い Excel しかない環境では Google スプレッドシートを併用するのも選択肢の一つです。</p>



<h3 class="wp-block-heading"><span id="toc33">Q5. cosh(1+i) はなぜ約 0.8337+0.9889i になるのですか？</span></h3>



<p class="wp-block-paragraph">展開式 <code>cosh(x+yi) = cosh(x)·cos(y) + i·sinh(x)·sin(y)</code> に <code>x=1, y=1</code> を代入します。<code>cosh(1)·cos(1) = 1.5431 × 0.5403 ≒ 0.8337</code> が実数部です。<code>sinh(1)·sin(1) = 1.1752 × 0.8415 ≒ 0.9889</code> が虚数部です。Excel で <code>=IMCOSH("1+i")</code> を実行すると、まさにこの値が返ってきます。手計算と Excel の結果を照合できる、複素関数論のよい入門例題ですね。</p>



<h3 class="wp-block-heading"><span id="toc34">Q6. IMCOSHの結果を表示形式で小数桁数を制御できますか？</span></h3>



<p class="wp-block-paragraph">戻り値が文字列なので、セルの表示形式では桁数を制御できません。桁数を揃えて表示したい場合は、<code>IMREAL</code> と <code>IMAGINARY</code> で分解して数値化し、<code>ROUND</code> で丸めてから <code>COMPLEX</code> で再結合する方法が確実です。</p>



<pre class="wp-block-code"><code>=COMPLEX(ROUND(IMREAL(IMCOSH(&quot;1+2i&quot;)), 4), ROUND(IMAGINARY(IMCOSH(&quot;1+2i&quot;)), 4))
→ &quot;-0.6421+1.0686i&quot;</code></pre>



<p class="wp-block-paragraph">レポート用の数値整形にはこの方式がおすすめです。</p>



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



<p class="wp-block-paragraph">ExcelのIMCOSH関数について、構文・実数渡し・複素数渡し・純虚数渡しを解説しました。応用・エラー対処・関連関数の違いも網羅しています。要点をおさらいします。</p>



<ul class="wp-block-list"><li>IMCOSH関数は複素数 z の双曲線余弦 cosh(z) を返す関数</li><li>書式は <code>=IMCOSH(複素数)</code> で、引数は1つだけ</li><li>複素数は <code>"x+yi"</code> または <code>"x+yj"</code> の文字列形式で渡す</li><li>実数を渡すと通常の cosh(x) と同じ結果が文字列で返る</li><li>純虚数 yi を渡すと cos(y) が返る（複素関数論の基本恒等式）</li><li><code>IMSINH</code> / <code>IMCOTH</code> と組み合わせれば検算や伝送線路計算が可能</li><li><code>i</code> と <code>j</code> の混在は <code>#NUM!</code> エラーになるので統一が必須</li><li>戻り値は文字列なので四則演算には <code>IMSUM</code>/<code>IMSUB</code> などのIM系演算関数か <code>IMREAL</code>/<code>IMAGINARY</code> で数値化する</li></ul>



<p class="wp-block-paragraph">複素数の双曲線余弦は専門的に見えますが、IMCOSH関数を使えば数式1行で答えが出ます。電気工学・信号処理・物理シミュレーションをExcelで完結させたい方は、ぜひIMSINHやIMCOTHと一緒にレパートリーに加えてくださいね。</p>



<p class="wp-block-paragraph">Excelの関連関数の一覧は次のページからも探せます。</p>



<ul class="wp-block-list"><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><li><a href="https://mashukabu.com/excel-function-alphabetical-order-pronunciation/">Excel関数の読み方一覧</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-imcosh/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
