Excelで複素数を扱いたいけど、どう入力すればいいかわからない。そんな場面はありませんか?
「3+4i」のような複素数を手入力するとテキスト扱いになり、計算に使えません。地味に困りますよね。
そこで活躍するのがExcelのCOMPLEX関数です。実数と虚数を指定するだけで、計算可能な複素数を作成できますよ。
この記事では、COMPLEX関数の基本的な書き方から実践的な活用例、よくあるエラーの対処法までわかりやすく解説します。
ExcelのCOMPLEX関数とは?
読み方と語源
COMPLEX関数の読み方は「コンプレックス関数」です。
英語の「complex number(複素数)」が語源になっています。Excelのエンジニアリング関数のひとつで、複素数の作成に使います。
COMPLEX関数でできること
COMPLEX関数は、実数係数と虚数係数を指定して複素数を作成する関数です。
たとえば、実数部が3、虚数部が4の場合、「3+4i」という複素数を返します。作成した複素数は、IMSUMやIMABSなど他の複素数関数でそのまま計算に使えますよ。
複素数とは「a+bi」の形で表される数のことです。aが実数部、bが虚数部、iは虚数単位(i二乗が-1になる数)を意味します。電気工学のインピーダンス計算や信号処理などで使われています。
COMPLEX関数の書き方(構文と引数)
基本構文
=COMPLEX(実数, 虚数, [虚数単位])
COMPLEX関数の引数は3つあります。必須の引数は2つ、省略できる引数が1つです。
引数の一覧
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 実数(real_num) | 必須 | 複素数の実数係数を数値で指定します |
| 虚数(i_num) | 必須 | 複素数の虚数係数を数値で指定します |
| 虚数単位(suffix) | 省略可 | 虚数部分の単位を「i」または「j」で指定します。省略すると「i」になります |
引数のポイント
実数と虚数には数値を指定します。セル参照でも直接入力でもOKです。文字列を指定すると #VALUE! エラーになるので注意してください。
虚数単位は「i」か「j」のどちらかを指定できます。数学では「i」、電気工学では「j」がよく使われますよね。省略した場合は「i」が自動で設定されます。「i」「j」以外の文字を指定すると #VALUE! エラーになります。
COMPLEX関数の基本的な使い方
値を直接指定して複素数を作成する
実数部が3、虚数部が4の複素数を作成してみましょう。
=COMPLEX(3, 4)
結果は「3+4i」になります。
虚数単位を「j」にしたい場合は、第3引数で指定します。
=COMPLEX(3, 4, "j")
結果は「3+4j」になります。
セル参照を使って複素数を作成する
A1セルに実数部(例: 5)、B1セルに虚数部(例: -2)が入っている場合は、次のように書きます。
=COMPLEX(A1, B1)
結果は「5-2i」になります。虚数部がマイナスの場合は、自動的に「-」が付きますよ。
特殊なケースの動作
COMPLEX関数の動作をいくつか確認しておきましょう。
| 数式 | 結果 | 説明 |
|---|---|---|
=COMPLEX(0, 0) | 0 | 実数部・虚数部ともに0 |
=COMPLEX(5, 0) | 5 | 虚数部が0なら実数だけが返る |
=COMPLEX(0, 3) | 3i | 実数部が0なら虚数部だけが返る |
=COMPLEX(-2, -7) | -2-7i | マイナスの値もそのまま使える |
虚数部が0の場合は、虚数部分が省略されて実数だけが返ります。このあたりの動作を覚えておくと便利ですよ。
COMPLEX関数の実践例|他の複素数関数と組み合わせる
COMPLEX関数の本領は、他の複素数関数と組み合わせるときに発揮されます。ここでは代表的な使い方を紹介しますね。
複素数の絶対値を求める(IMABS関数)
作成した複素数の絶対値を求めるには、IMABS関数を使います。
=IMABS(COMPLEX(3, 4))
結果は「5」になります。3+4iの絶対値は sqrt(3^2 + 4^2) = 5 ですね。
実数部・虚数部を取り出す(IMREAL関数・IMAGINARY関数)
複素数から実数部だけ、または虚数部だけを取り出したいときに使います。
- IMREAL関数: 複素数の実数係数を返す
- IMAGINARY関数: 複素数の虚数係数を返す
=IMREAL(COMPLEX(3, 4)) → 結果: 3
=IMAGINARY(COMPLEX(3, 4)) → 結果: 4
COMPLEX関数で作成した複素数をそのまま渡せるので、数式がスッキリしますよ。
複素数の四則演算(IMSUM・IMSUB・IMPRODUCT・IMDIV)
2つの複素数で四則演算を行うには、次の関数を使います。
| 演算 | 関数 | 数式例 | 結果 |
|---|---|---|---|
| 足し算 | IMSUM | =IMSUM(COMPLEX(3,4), COMPLEX(1,2)) | 4+6i |
| 引き算 | IMSUB | =IMSUB(COMPLEX(3,4), COMPLEX(1,2)) | 2+2i |
| 掛け算 | IMPRODUCT | =IMPRODUCT(COMPLEX(3,4), COMPLEX(1,2)) | -5+10i |
| 割り算 | IMDIV | =IMDIV(COMPLEX(3,4), COMPLEX(1,2)) | 2.2-0.4i |
複素数の計算を手作業でやるのは大変ですが、関数を組み合わせればあっという間ですよね。
COMPLEX関数のよくあるエラーと対処法
COMPLEX関数を使っていて「あれ、エラーが出た」というときは、以下の原因を確認してみてください。
#VALUE! エラー
#VALUE! エラーは、次の2つのケースで発生します。
| 原因 | 対処法 |
|---|---|
| 実数または虚数に数値以外を指定した | セルの値が数値かどうか確認する。文字列が入っていたら数値に修正する |
| 虚数単位に「i」「j」以外の文字を指定した | 第3引数は「”i”」または「”j”」のみ。大文字の「I」「J」も不可 |
特に虚数単位で大文字の「I」を指定してエラーになるケースは、見落としがちです。必ず小文字で指定してくださいね。
数式がテキストとして表示される
COMPLEX関数の結果は文字列(テキスト)として返されます。そのため、通常の四則演算(+や-)では計算できません。
=COMPLEX(3,4) + COMPLEX(1,2) ← これはエラーになる
=IMSUM(COMPLEX(3,4), COMPLEX(1,2)) ← こちらが正しい
複素数の計算には、必ずIM系の専用関数を使いましょう。
複素数関連のExcel関数一覧
COMPLEX関数と一緒に使うことが多い、複素数関連の関数をまとめました。
| 関数名 | 機能 |
|---|---|
| IMABS | 複素数の絶対値を返す |
| IMREAL | 複素数の実数係数を返す |
| IMAGINARY | 複素数の虚数係数を返す |
| IMSUM | 複素数の合計を返す |
| IMSUB | 複素数の差を返す |
| IMPRODUCT | 複素数の積を返す |
| IMDIV | 複素数の商を返す |
| IMCONJUGATE | 共役複素数を返す |
| IMARGUMENT | 複素数の偏角を返す |
COMPLEX関数はこれらの関数の「入力」を作る役割を持っています。まずCOMPLEXで複素数を作り、目的に応じた関数で計算する、という流れで使ってみてくださいね。
まとめ
ExcelのCOMPLEX関数は、実数と虚数から複素数を作成する関数です。
ポイントをおさらいしておきましょう。
- 構文は
=COMPLEX(実数, 虚数, [虚数単位])で、虚数単位は省略可能 - 虚数単位は「i」(数学用)または「j」(電気工学用)を小文字で指定する
- 作成した複素数はIMSUM・IMABS・IMREALなどの複素数関数で計算できる
- 通常の四則演算(+、-、*、/)は使えないので、IM系の専用関数を使う
複素数の計算が必要になったら、まずCOMPLEX関数で複素数を準備するところから始めてみてください。
