スプレッドシートのACOT関数の使い方|逆余接(アークコタンジェント)

スポンサーリンク

スプレッドシートでコタンジェント値から元の角度を逆算したいとき、どう計算すればいいか迷っていませんか?

COT関数で角度からコタンジェント値は求められるけど、その逆はどうやるの?」と感じますよね。

そんなときに使うのがACOT関数です。=ACOT(値) と書くだけで、コタンジェント値から対応する角度(ラジアン)を返してくれます。

この記事では基本の書き方から、DEGREES関数と組み合わせた度数法への変換、ATAN関数との数学的な関係、実務での活用例まで紹介します。

スプレッドシートのACOT関数とは?

ACOT関数(読み方: アークコタンジェント関数)は、コタンジェント値から角度(ラジアン)を逆算する関数です。COT関数の逆関数にあたります。

たとえば =DEGREES(ACOT(1)) と入力すると「45」が返ります。コタンジェント値1に対応する角度が45度だとわかるわけですね。

ACOT関数は任意の実数を引数に取れます。ASIN関数ACOS関数と違って-1から1の範囲制限がないので、#NUM!エラーの心配がありません。結果はラジアン単位で返ります。度数法(30度、45度など)で結果を得たい場合は、DEGREES関数で変換します。

ACOT関数にできることをまとめると、次のとおりです。

  • コタンジェント値から対応する角度(ラジアン)を返す
  • DEGREES関数と組み合わせて度数法の角度に変換する
  • COT関数の逆変換として角度を逆算する
  • ATAN関数と組み合わせて三角関数の変換を行う

NOTE

ACOT関数はGoogleスプレッドシートの全バージョンで使えます。Excelとも完全に互換性があるので、ファイルのやり取りでも安心です。

ACOT関数の書き方(構文と引数)

基本構文

=ACOT(値)

カッコの中に余接(コタンジェント)の値を指定します。

引数の説明

引数必須/任意説明
必須逆余接を求めたい数値。任意の実数を指定できる

引数は1つだけです。ASIN関数ACOS関数と違い、値の範囲に制限はありません。どんな数値でも受け付けるので、#NUM!エラーが起きない点がACOT関数の特徴です。

戻り値の範囲

ACOT関数が返す値は 0 から PI() まで(度数法で0度から180度)です。

=ACOT(1000000)    → 0.000001(0度に近い値)
=ACOT(1)          → 0.7853...(45度)
=ACOT(0)          → 1.5707...(90度)
=ACOT(-1)         → 2.3561...(135度)
=ACOT(-1000000)   → 3.1415...(180度に近い値)

戻り値はラジアンです。度数法で使いたい場合は、DEGREES関数で変換しましょう。

TIP

ACOT関数の戻り値は常に0度から180度の範囲です。ATAN関数の-90度から90度とは範囲が異なるので注意してください。

ACOT関数とATAN関数の関係

ACOT関数とATAN関数には、次の数学的な関係があります。

ACOT(x) = PI()/2 - ATAN(x)

度数法で表すと「ACOT(x) = 90度 – ATAN(x)」です。つまりACOTとATANの結果を足すと、常に90度になります。

スプレッドシートで確認してみましょう。

=DEGREES(ACOT(1))                → 45
=90 - DEGREES(ATAN(1))           → 45
=DEGREES(ACOT(1)) + DEGREES(ATAN(1))  → 90

どちらも同じ結果になります。ACOT関数がない環境でも =PI()/2 - ATAN(値) で代用できますよ。

ACOT関数の基本的な使い方

ラジアンで結果を得る

まずはACOT関数をそのまま使うパターンです。

=ACOT(1)

結果は「0.7853…」です。これはPI()/4と同じ値で、45度をラジアンで表したものですね。

代表的な値とACOTの結果をまとめます。

数式コタンジェント値結果(ラジアン)角度に換算
=ACOT(1.7321…)1.7321…0.5235…30度
=ACOT(1)10.7853…45度
=ACOT(0.5774…)0.5774…1.0471…60度
=ACOT(0)01.5707…90度
=ACOT(-1)-12.3561…135度

ACOT(0) = 90度(PI()/2)は覚えておくと便利です。COT(90度) = 0 の逆ですね。

DEGREES関数と組み合わせて度数法で結果を得る

実務では角度を「度」で扱うことがほとんどです。DEGREES関数と組み合わせれば、結果を度数法で取得できます。

=DEGREES(ACOT(1))

結果は「45」です。コタンジェント値1の角度が45度だと、そのまま読み取れますね。

よく使う値の早見表を用意しました。

コタンジェント値数式結果(度)
1.7321…(SQRT(3))=DEGREES(ACOT(SQRT(3)))30
1=DEGREES(ACOT(1))45
0.5774…(SQRT(3)/3)=DEGREES(ACOT(SQRT(3)/3))60
0=DEGREES(ACOT(0))90
-1=DEGREES(ACOT(-1))135
-1.7321…(-SQRT(3))=DEGREES(ACOT(-SQRT(3)))150

SQRT(3) は約1.7321、SQRT(3)/3 は約0.5774 です。COT関数の記事で紹介した代表的な値の逆変換ですね。

COT関数との逆変換を確認する

ACOT関数がCOT関数の逆関数であることを、実際に確認してみましょう。

=COT(RADIANS(45))       → 1
=DEGREES(ACOT(1))       → 45

COT関数で45度からコタンジェント値1を求め、ACOT関数で1から45度に戻せています。元の角度に戻るわけですね。

=DEGREES(ACOT(COT(RADIANS(45))))    → 45

このように入れ子にしても、元の角度が復元されます。

NOTE

COT関数とACOT関数の逆変換が成立するのは、角度が0度から180度の範囲のときだけです。ACOT関数の戻り値は0度から180度に限定されるため、たとえば270度のCOT値をACOTに渡すと90度(270 – 180 = 90度相当)を返します。

実務でのACOT関数活用例

水平距離と高さから傾斜角を求める

ACOT関数は勾配の逆数から傾斜角を求める場面で使えます。「水平距離/高さ」の比率がわかっている場合、ACOT関数で傾斜角に変換できます。

=DEGREES(ACOT(水平距離/高さ))

サンプルデータで計算してみましょう。

水平距離(A列)高さ(B列)数式傾斜角
101=DEGREES(ACOT(A2/B2))5.71度
103=DEGREES(ACOT(A3/B3))16.70度
105=DEGREES(ACOT(A4/B4))26.57度
1010=DEGREES(ACOT(A5/B5))45.00度

水平距離と高さが等しいとき(A5/B5 = 1)、傾斜角は45度になります。

TIP

この計算は =DEGREES(ATAN(高さ/水平距離)) でも同じ結果が得られます。ATAN関数では高さ/水平距離、ACOT関数では水平距離/高さと、分子と分母が逆になる点がポイントです。

ATAN関数との結果を比較する

ACOT(x) = PI()/2 – ATAN(x) の関係を実務データで検証してみましょう。

値(A列)ACOT(度)90 – ATAN(度)一致
0=DEGREES(ACOT(0)) → 90=90-DEGREES(ATAN(0)) → 90一致
1=DEGREES(ACOT(1)) → 45=90-DEGREES(ATAN(1)) → 45一致
2=DEGREES(ACOT(2)) → 26.57=90-DEGREES(ATAN(2)) → 26.57一致
-1=DEGREES(ACOT(-1)) → 135=90-DEGREES(ATAN(-1)) → 135一致

すべて一致しますね。数学的な等式がスプレッドシートでも成り立つことが確認できます。

既存のシートでATAN関数を使っている場合、ACOT関数に置き換えたいときは =PI()/2 - ATAN(x) の関係を使って変換してみてください。

よくあるエラーと対処法

ACOT関数でよくあるトラブルをまとめます。

症状原因対処法
#VALUE! エラー引数に文字列を渡した数値またはセル参照を指定する
結果がラジアンで読みにくいDEGREES関数で変換していない=DEGREES(ACOT(値)) とする
期待と違う角度が返る戻り値が0度~180度の範囲に限定される範囲外の角度は別途調整が必要

ラジアンと度数法の変換忘れ

ACOT関数の結果はラジアンです。度数法の角度が欲しいのにDEGREES関数を忘れると、見慣れない数値になります。

=ACOT(1)              → 0.7853...(ラジアン)
=DEGREES(ACOT(1))     → 45(度数法)

「なんだか小さい数値が返ってきたな」と思ったら、DEGREES関数の付け忘れを疑ってみてください。

ACOT(0) の結果に注意

ACOT(0) は90度(PI()/2)を返します。ATAN関数のATAN(0) = 0度とは異なるので、混同しないように注意しましょう。

=DEGREES(ACOT(0))     → 90
=DEGREES(ATAN(0))     → 0

ACOT(0) = 90度は、COT(90度) = 0 の逆変換です。直感的には「コタンジェント値が0になる角度は90度」と覚えておくとわかりやすいですよ。

浮動小数点の誤差を丸める

ACOT関数でも浮動小数点の誤差が生じることがあります。見た目を整えたい場合は、ROUND関数で丸めてください。

=ROUND(DEGREES(ACOT(SQRT(3))), 10)

結果は「30」になります。小数点以下10桁で丸めれば、実用上は問題ありませんよ。

似た関数との違い・使い分け

関数動作引数用途
ACOT逆余接(アークコタンジェント)を返す任意の実数コタンジェント値から角度を逆算
COT余接(コタンジェント)を返す角度(ラジアン)角度からコタンジェント値を求める
ATAN逆正接(アークタンジェント)を返す任意の実数タンジェント値から角度を逆算
ASIN逆正弦(アークサイン)を返す-1~1の値サイン値から角度を逆算
ACOS逆余弦(アークコサイン)を返す-1~1の値コサイン値から角度を逆算
DEGREESラジアンを度数法に変換するラジアン値ACOT/ATAN/ASIN/ACOSの結果変換

COT関数との逆変換

COT関数とACOT関数は、入力と出力が逆の関係です。

COT: 角度(ラジアン) → コタンジェント値
ACOT: コタンジェント値 → 角度(ラジアン)

COT関数が「角度からコタンジェント値」を求めるのに対して、ACOT関数は「コタンジェント値から角度」を逆算します。セットで覚えておくと便利ですよ。

ATAN関数との違い

ACOT関数とATAN関数はどちらも逆三角関数ですが、戻り値の範囲が異なります。

項目ACOTATAN
入力コタンジェント値タンジェント値
戻り値の範囲0~PI()(0度~180度)-PI()/2~PI()/2(-90度~90度)
関係式ACOT(x) = PI()/2 – ATAN(x)ATAN(x) = PI()/2 – ACOT(x)
値が0のとき90度0度
値が1のとき45度45度

値が1のときは両方とも45度を返します。それ以外では結果が異なるので、どちらの逆三角関数を使うか意識してみてください。

まとめ

ACOT関数は、コタンジェント値から角度(ラジアン)を逆算する関数です。

ポイントを整理します。

  • 構文は =ACOT(値) で、引数は任意の実数(範囲制限なし)
  • 結果はラジアンで返るので、度数法には =DEGREES(ACOT(値)) と変換する
  • ACOT(1) = 0.7853…(45度)が代表的な値
  • COT関数の逆関数で、COTが返した値からもとの角度を復元できる
  • ATAN関数との関係は ACOT(x) = PI()/2 - ATAN(x)(両者を足すと常に90度)
  • ASIN関数ACOS関数と違って引数の範囲制限がなく、#NUM!エラーが起きない

まずは =DEGREES(ACOT(1)) で45が返ることを確認してみてください。

タイトルとURLをコピーしました