Atn関数:アークタンジェント(逆正接)を取得する

Atn 関数は Excel VBA で用意されている関数の一つで、底辺に対する対辺の比の数値を指定しアークタンジェント(逆正接)を取得します。ここでは Excel VBA における Atn 関数の使い方について解説します。

(Last modified: )

Atn関数の定義と使い方

Atn 関数は引数に指定した底辺に対する対辺の比の数値に対するアークタンジェント(逆正接)を返します。

Atn(number)

1 番目の引数に底辺に対する対辺の比の数値を指定します。戻り値としてアークタンジェントを返します。

アークタンジェント(逆正接)はタンジェントの逆関数です。タンジェントは角度から数値を取得しますが、アークタンジェントは数値から逆に角度(ラジアン単位)を取得します。アークタンジェントとタンジェントの関係は次のようになっています。

Atn関数の定義と使い方(1)

Atn 関数の戻り値の角度は -π/2 から π/2 (単位はラジアン)の範囲となります。ラジアンから度単位に変換するには、ラジアンに 180/π を掛けます。

次の例を見てください。

Const PI As Double = 3.141592654

Debug.Print Atn(1)             '0.785398163397448
Debug.Print Atn(1) * 180 / PI  '44.9999999941242
Debug.Print Atn(2)             '1.10714871779409
Debug.Print Atn(2) * 180 / PI  '63.4349488146391

Atn 関数を使って 1 と 2 に対するアークタンジェントを取得し、取得したラジアン単位の角度を度単位に変換した値を取得しました。

なお円周率を定数として定義しましたが、関数を使って取得することもできます。例えば次のように記述することができます。

Dim PI As Double

PI = Atn(1) * 4

Debug.Print Atn(1)             '0.785398163397448
Debug.Print Atn(1) * 180 / PI  '45
Debug.Print Atn(2)             '1.10714871779409
Debug.Print Atn(2) * 180 / PI  '63.434948822922

Atn 関数を利用して円周率を取得しました。 VBA から円周率を取得する詳しい解説については「VBAで円周率を取得する方法」を参照されてください。

サンプルコード

それでは簡単なサンプルを作成して試してみます。

Option Explicit

Sub Atn関数()
    Dim PI As Double
    Dim num As Double
    Dim i As Integer

    PI = Atn(1) * 4
    
    For i = 3 To 5
        num = Atn(Cells(i, 2).Value)
        Cells(i, 3).Value = num
        Cells(i, 4).Value = num * 180 / PI
    Next i
End Sub

Atn関数の定義と使い方(2)

このプログラムを実行すると Atn 関数を使って B3 セルから B5 セルまでに入力された数値に対するアークタンジェントを取得し C3 セルから C5 セルに代入します。また取得したラジアン単位の角度を度単位に変換して D3 セルから D5 セルに代入します。

Atn関数の定義と使い方(3)

-- --

Excel VBA における Atn 関数の使い方について解説しました。

( Written by Tatsuo Ikura )

プロフィール画像

著者 / TATSUO IKURA

これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。