• 作成日 : 2025年8月25日

TAN関数の使い方:エクセルで正接(タンジェント)を計算する方法

TAN関数は、指定した角度の正接(タンジェント)を計算するエクセルの三角関数です。建築設計での勾配計算、測量での高さや距離の算出、物理計算での角度解析、CAD図面の座標計算など、角度と辺の比率を扱う様々な技術計算で活用されています。

本記事では、TAN関数の基本的な使い方から実務での応用例、ラジアンと度の変換方法、SIN関数・COS関数との関係、そしてよくある計算エラーとその回避方法まで、初心者にもわかりやすく解説します。

TAN関数の使い方

TAN関数とは

TAN関数は、角度を入力してその正接(タンジェント)値を返す関数です。正接とは、直角三角形において「対辺÷隣辺」の比率を表す値で、角度の傾きを数値化したものです。たとえば、45度の正接は1となり、これは対辺と隣辺が等しいことを意味します。

実務では、斜面の勾配計算、建物の日影計算、カメラの画角計算など、角度と距離の関係を扱う場面で重要な役割を果たします。特に、垂直距離と水平距離から角度を求めたり、逆に角度から距離を計算したりする際に不可欠なツールです。

参考:TAN 関数 – Microsoft サポート

基本構文

TAN関数の構文は次のとおりです。

=TAN(数値)

数値:正接を求めたい角度をラジアン単位で指定します。度単位で入力する場合は、RADIANS関数で変換する必要があります。

基本的な使用例

実際にTAN関数を使用してみましょう。

ラジアンでの計算:

=TAN(0.785398)    // 結果:約1(π/4ラジアン = 45度)

=TAN(PI()/4)      // 結果:1(45度の正接)

=TAN(PI()/6)      // 結果:約0.577(30度の正接)

度単位での計算(RADIANS関数使用):

=TAN(RADIANS(45))  // 結果:1

=TAN(RADIANS(30))  // 結果:約0.577

=TAN(RADIANS(60))  // 結果:約1.732

=TAN(RADIANS(0))   // 結果:0

特殊な角度:

=TAN(RADIANS(90))  // 結果:非常に大きな値(理論的には無限大)

=TAN(RADIANS(180)) // 結果:約0(誤差あり)

ラジアンと度の変換

TAN関数はラジアン単位で計算するため、度単位との変換が重要です。

度からラジアンへの変換:

ラジアン = 度 × π / 180

=角度 * PI() / 180

または

=RADIANS(角度)

ラジアンから度への変換:

度 = ラジアン × 180 / π

=ラジアン * 180 / PI()

または

=DEGREES(ラジアン)

TAN関数の利用シーン

建築・土木での勾配計算

斜面や屋根の勾配を計算する際に使用します。

勾配率の計算:

垂直距離:3m

水平距離:4m

勾配角度:=DEGREES(ATAN(3/4))  // 結果:約36.87度

勾配率:=TAN(RADIANS(36.87))   // 結果:0.75(75%)

屋根勾配の表現

=TAN(RADIANS(屋根角度)) * 10 & “/10”

// 例:30度の場合 “5.77/10” と表示

法面の安定角度チェック

=IF(TAN(RADIANS(角度)) > 許容勾配, “危険”, “安全”)

測量・測定での高さ計算

離れた場所から建物や木の高さを測定します。

建物の高さ計算:

観測距離:50m

仰角:35度

観測者の目の高さ:1.5m

建物の高さ = 50 * TAN(RADIANS(35)) + 1.5

影の長さから高さを求める:

影の長さ:20m

太陽高度:40度

物体の高さ = 20 * TAN(RADIANS(40))

物理・工学計算

力学や光学での角度計算に使用します。

斜面上の物体の力の分解:

重力:100N

斜面角度:30度

斜面方向の力 = 100 * SIN(RADIANS(30))

垂直抗力 = 100 * COS(RADIANS(30))

摩擦係数 = TAN(RADIANS(限界角度))

投射運動の計算:

初速度:20m/s

投射角度:45度

水平速度 = 20 * COS(RADIANS(45))

垂直速度 = 20 * SIN(RADIANS(45))

到達距離での高さ比 = TAN(RADIANS(45))

CAD・図面での座標計算

技術図面での角度と座標の変換に活用します。

極座標から直交座標への変換:

距離:100mm

角度:30度

X座標 = 100 * COS(RADIANS(30))

Y座標 = 100 * SIN(RADIANS(30))

傾き = TAN(RADIANS(30))

2点間の角度計算:

X差:終点X – 始点X

Y差:終点Y – 始点Y

角度 = DEGREES(ATAN2(Y差, X差))

傾き = TAN(RADIANS(角度))

視野角・画角の計算

カメラやディスプレイの視野角計算に使用します。

カメラの画角計算:

センサーサイズ:24mm

焦点距離:50mm

画角 = 2 * DEGREES(ATAN(24 / (2 * 50)))

視距離と画面サイズ:

画面幅:1000mm

視距離:2000mm

視野角 = 2 * DEGREES(ATAN(1000 / (2 * 2000)))

TAN関数の応用・他関数との組み合わせ

SIN・COS関数との関係

三角関数の基本的な関係式を活用します。

TAN = SIN / COS の関係

=SIN(RADIANS(角度)) / COS(RADIANS(角度))

// TAN(RADIANS(角度))と同じ結果

ピタゴラスの定理との組み合わせ

=SQRT(1 + TAN(RADIANS(角度))^2)  // sec(角度)の計算

ATAN関数による逆計算

ATAN関数を用いると、入力した値からラジアンを求められます。

正接値から角度を求める逆正接関数との連携:

勾配から角度:

勾配 = 0.5(50%)

角度 = DEGREES(ATAN(0.5))  // 結果:約26.57度

確認:=TAN(RADIANS(26.57))  // 結果:約0.5

ATAN2関数での方向計算

ATAN2関数は、2点を結ぶ線分の角度を求めるときに使えます。

2点間の方向を正確に計算

=DEGREES(ATAN2(Y2-Y1, X2-X1))

// 全象限で正しい角度を返す

IF関数での条件分岐

TAN関数にIF関数を組み合わせることで、入力した角度の判定を行えます。

特定の角度範囲での処理

=IF(ABS(TAN(RADIANS(角度))) > 1, “急勾配”, “緩勾配”)

90度付近の特殊処理

=IF(MOD(角度, 180) = 90, “計算不可”, TAN(RADIANS(角度)))

配列数式での一括計算

配列数式を用いれば、TAN関数の処理を一度に行えます。

複数の角度を一度に処理

角度リスト:0, 30, 45, 60, 90

{=TAN(RADIANS({0,30,45,60,90}))}

グラフ作成での活用

正接曲線のプロット:

X軸(角度):-90から90まで5度刻み

Y軸(TAN値):=IF(ABS(X) = 90, NA(), TAN(RADIANS(X)))

// 90度と-90度では#N/Aを返してグラフの不連続を表現

近似計算での使用

小さい角度での近似

// 角度が小さい場合、TAN(θ) ≈ θ(ラジアン)

=IF(ABS(RADIANS(角度)) < 0.1, RADIANS(角度), TAN(RADIANS(角度)))

TAN関数のよくあるエラーと対策

#NUM!エラーの対処

90度の倍数付近で発生する可能性があります。

=IFERROR(TAN(RADIANS(角度)), “計算不可”)

より詳細なエラー処理:

=IF(MOD(ABS(角度), 180) = 90,

IF(角度 > 0, “正の無限大”, “負の無限大”),

TAN(RADIANS(角度)))

度とラジアンの混同

最も一般的なミスは単位の誤りです。

:=TAN(45)        // 45ラジアン(約2578度)として計算

:=TAN(RADIANS(45))  // 45度として計算

確認方法

=IF(ABS(結果) > 1000, “単位を確認してください”, 結果)

TAN関数の結果が1000を上回るのは90度の倍数付近であり、「単位を確認してください」と表示されたときは単位を誤っている可能性があります。

精度の問題

特定の角度での丸め誤差

=ROUND(TAN(RADIANS(角度)), 10)  // 小数点以下10桁で丸める

0度、180度付近での誤差対策

=IF(MOD(角度, 180) = 0, 0, TAN(RADIANS(角度)))

定義域の制限

90度 + n×180度では定義されません。

=IF(AND(MOD(角度,90)=0,MOD(角度,180)<>0),

“定義されていません”,

TAN(RADIANS(角度)))

大きな値の扱い

90度に近い角度での処理

=IF(ABS(TAN(RADIANS(角度))) > 10^10,

“極めて大きい値”,

TAN(RADIANS(角度)))

負の角度の処理

TAN関数は負の角度も正しく処理します

=TAN(RADIANS(-30))  // 結果:約-0.577

// TAN(-θ) = -TAN(θ) の性質

周期性の活用

TAN関数は180度周期です

=TAN(RADIANS(MOD(角度, 180)))

// 大きな角度を0-180度の範囲に正規化

TAN関数で角度の正接を数値化して傾斜や高さを計算

TAN関数は、与えた角度の正接(tan)を求めるExcelの三角関数で、建築の勾配計算や測量、物理計算などに広く利用されます。角度をラジアンで指定する必要があるため、RADIANS関数で角度からラジアンに変換します。

TAN関数が活躍するシーンは、例えば視野角や投射角の計算、屋根角度から勾配比の算出などです。90度では定義されないため、#NUM! エラーや極端な値が返ることに注意が必要です。

SIN/COS関数との連携や、ATAN関数を使った逆変換、IF関数による条件付き処理と組み合わせることで、TAN関数の活用範囲はさらに広がります。

誤差処理と単位の使い分けを意識することで、正確な技術計算に役立てることができます。


※ 掲載している情報は記事更新時点のものです。

※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。

関連記事