Excelで複素数を扱っていると、「この複素数の角度(偏角)はいくつだろう?」と調べたくなる場面がありますよね。手計算だとアークタンジェントの公式を使う必要があって、ちょっと面倒です。
そんなときに便利なのが IMARGUMENT関数 です。複素数を渡すだけで、偏角をラジアン単位でサッと求めてくれますよ。
この記事では、IMARGUMENT関数の基本的な書き方から実践的な活用例、よくあるエラーの対処法まで、サンプルデータ付きでわかりやすく解説します。
ExcelのIMARGUMENT関数とは?
IMARGUMENT関数は、Excelのエンジニアリング関数のひとつです。指定した複素数の 偏角(アーギュメント) をラジアン単位で返します。
読み方は 「イマジナリー・アーギュメント」 です。「IM」は Imaginary(虚数・複素数)、「ARGUMENT」は数学用語で偏角を意味しています。
偏角とは?
偏角(へんかく)とは、複素数を複素平面上にプロットしたとき、原点から複素数への直線が実数軸(横軸)となす角度のことです。たとえば複素数「3+4i」は、複素平面上で実部3・虚部4の位置にあります。この点と原点を結んだ線が実数軸と作る角度が偏角です。
IMARGUMENT関数は、この偏角をラジアン(弧度法)で返します。度数法に変換したい場合は、結果に DEGREES関数(ラジアンを度に変換する関数)を組み合わせればOKですよ。
偏角の計算式
数学的には、複素数 x+yi の偏角 θ は次の式で求められます。
θ = arctan(y / x)
ただし、複素数が第2象限や第3象限にある場合は符号の調整が必要です。IMARGUMENT関数を使えば、この象限判定も自動でやってくれるので便利ですよ。
IMARGUMENT関数の書き方(構文と引数)
基本構文
=IMARGUMENT(複素数)
引数はひとつだけなので、とてもシンプルです。
引数の説明
| 引数 | 必須/省略可 | 説明 |
|---|---|---|
| 複素数 | 必須 | 偏角を求めたい複素数。”x+yi” または “x+yj” の形式で指定します |
引数「複素数」には、次のいずれかの方法で値を渡せます。
- 文字列で直接指定:
=IMARGUMENT("3+4i") - セル参照:
=IMARGUMENT(A1)(A1セルに複素数が入っている場合) - COMPLEX関数の結果:
=IMARGUMENT(COMPLEX(3,4))
COMPLEX関数を使えば、実部と虚部を別々に指定して複素数を作れるので、セルの値を組み合わせたいときに便利です。
IMARGUMENT関数の基本的な使い方
実際にIMARGUMENT関数を使ってみましょう。以下のサンプルデータで偏角を計算します。
| セル | 複素数 | 数式 | 結果(ラジアン) | 度数換算(参考) |
|---|---|---|---|---|
| A1 | 3+4i | =IMARGUMENT(A1) | 約 0.9273 | 約 53.13度 |
| A2 | 1+i | =IMARGUMENT(A2) | 約 0.7854 | 45度 |
| A3 | -1+i | =IMARGUMENT(A3) | 約 2.3562 | 135度 |
| A4 | -3-4i | =IMARGUMENT(A4) | 約 -2.2143 | 約 -126.87度 |
「1+i」の偏角が約0.7854ラジアン、つまり45度になるのは直感的にわかりやすいですよね。実部と虚部が同じ大きさなので、45度の方向を向いているということです。
度数法に変換したい場合
IMARGUMENT関数の結果はラジアンで返ります。度数法(0度〜360度)で表示したい場合は、DEGREES関数と組み合わせましょう。
=DEGREES(IMARGUMENT(A1))
A1に「3+4i」が入っていれば、結果は約53.13度になります。角度を度で扱いたい場面では、この組み合わせを覚えておくと便利ですよ。
IMARGUMENT関数の実践的な使い方・応用例
複素数の極形式への変換
複素数は「直交形式(a+bi)」だけでなく「極形式(r, θ)」でも表現できます。極形式(きょくけいしき)とは、複素数を「原点からの距離 r」と「偏角 θ」の組み合わせで表す方法です。
IMARGUMENT関数とIMABS関数を組み合わせれば、直交形式から極形式への変換が簡単にできますよ。
| 項目 | 数式 | 説明 |
|---|---|---|
| 絶対値 r | =IMABS(“3+4i”) | 結果: 5 |
| 偏角 θ | =IMARGUMENT(“3+4i”) | 結果: 約 0.9273 |
つまり「3+4i」は極形式で「(5, 0.9273)」と表せます。電気回路のインピーダンス計算などで、この変換が役立つ場面は多いですよ。
COMPLEX関数と組み合わせて動的に計算
セルに入力した実部・虚部の値から偏角を求めたい場合は、COMPLEX関数と組み合わせるのがおすすめです。
=IMARGUMENT(COMPLEX(B1,C1))
B1に実部、C1に虚部を入れておけば、値を変えるだけで偏角が自動更新されます。パラメータを変えながら分析したいときに便利ですよ。
他のIM関数との組み合わせ
IMARGUMENT関数は、他の複素数関数と組み合わせて使うことが多いです。よく一緒に使う関数をまとめておきますね。
| 関数名 | 機能 | 記事リンク |
|---|---|---|
| COMPLEX | 実部と虚部から複素数を作成 | 解説記事 |
| IMABS | 複素数の絶対値(原点からの距離)を返す | 解説記事 |
| IMREAL | 複素数の実部を取り出す | 解説記事 |
| IMAGINARY | 複素数の虚部を取り出す | 解説記事 |
| IMCONJUGATE | 複素数の共役複素数を返す | 解説記事 |
| IMCOS | 複素数の余弦(コサイン)を返す | 解説記事 |
| IMSIN | 複素数の正弦(サイン)を返す | 解説記事 |
| IMTAN | 複素数の正接(タンジェント)を返す | 解説記事 |
よくあるエラーと対処法
IMARGUMENT関数を使っていてエラーが出たときは、以下を確認してみてください。
#NUM! エラー
原因: 引数に渡した値が複素数として認識できない場合に発生します。
- 虚数単位が「i」でも「j」でもない文字を使っている
- 複素数の形式が不正(スペースが入っている、全角文字を使っているなど)
対処法: 複素数は必ず半角で "x+yi" または "x+yj" の形式で入力してください。直接入力する場合はダブルクォーテーションで囲むのを忘れずに。
#VALUE! エラー
原因: 引数が数値でも文字列でもない型の場合に発生します。
対処法: セル参照を確認して、参照先に正しい複素数の文字列が入っているか確認しましょう。空白セルを参照していないかもチェックしてみてください。
引数が実数のみ(虚部が0)の場合
「5」や「5+0i」のように虚部が0の複素数を渡すと、偏角は 0 になります。実数は複素平面上で実数軸の上にあるので、偏角は0ラジアンです。これはエラーではなく正しい結果ですよ。
ただし、引数が 0(ゼロ)の場合は #NUM! エラーになります。原点には偏角が定義できないためです。
似た関数との違い・使い分け
IMARGUMENT関数 と IMABS関数
どちらも複素数を極形式で表す際に使う関数ですが、返す値が異なります。
| 関数 | 返す値 | 意味 |
|---|---|---|
| IMARGUMENT | 偏角 θ(ラジアン) | 複素数の「向き」 |
| IMABS | 絶対値 r | 複素数の「大きさ」 |
ベクトルに例えると、IMABSが「長さ」、IMARGUMENTが「角度」を表しているとイメージするとわかりやすいですよ。
IMARGUMENT関数 と ATAN2関数
ATAN2関数でも偏角に相当する値を求められます。ただし使い方に違いがあります。
| 関数 | 引数 | 戻り値の範囲 |
|---|---|---|
| IMARGUMENT | 複素数(文字列) | -π 〜 π |
| ATAN2 | x座標, y座標(数値2つ) | -π 〜 π |
ATAN2は数値を直接渡す関数なので、複素数文字列を扱う必要がない場面ではATAN2のほうがシンプルです。一方、他のIM関数と組み合わせて使うならIMARGUMENTのほうが自然ですよ。
まとめ
IMARGUMENT関数は、複素数の偏角(アーギュメント)をラジアン単位で返す関数です。ポイントをおさらいしましょう。
- 構文:
=IMARGUMENT(複素数)で引数は1つだけ - 戻り値: 偏角をラジアンで返す(度数法に変換するにはDEGREES関数と組み合わせる)
- 極形式変換: IMABS関数と組み合わせれば、複素数を極形式(r, θ)に変換できる
- エラー対策: 複素数は半角の “x+yi” 形式で渡す。0を渡すと #NUM! エラーになる
複素数関連の計算をExcelでまとめて処理したいときに、ぜひ活用してみてください。関連するCOMPLEX関数やIMAGINARY関数もあわせて覚えておくと、複素数の計算がぐっと楽になりますよ。
