VB6・VBA関数メモ:Sin関数

Sin関数についてメモしておきます。

この関数は三角関数の正弦関数となります。
指定したラジアンから正弦(サイン)を算出します。

引数は「角度」ではなく「ラジアン」なので注意です。

逆正弦(アークサイン)を求める関数はVB6・VBAにはないようなので自作する必要がありそうです。(ASin関数)
(.NETやExcel関数には存在するようです)


概要

Sin(Number As Double) As Double
機能 指定したラジアンから正弦(サイン)を返す
引数 Number 指定値 Double型
戻り値 計算結果 Double型


三角関数を使用する前に

説明 記述例
円周率を求める関数
※円周率=アークタンジェント(1)×4
Function PI() As Double
    PI = Atn(1) * 4
End Function
角度からラジアンを求める関数
※ラジアン=角度*(円周率/180)
Function GetRadian(ByVal angle As Double) As Double
    GetRadian = angle * (PI / 180)
End Function


使用例

説明 記述例 出力
正弦(サイン)を求める
(角度θ=30の場合)
Dim rad As Double, θ As Double

θ = 30

rad = GetRadian(θ)
Debug.Print Sin(rad)
0.5
辺Zの長さを求める
(角度θ=30,辺Y=5の場合)
※sinθ=Y / Z
Dim rad As Double, θ As Double
Dim Y As Double, Z As Double

θ = 30
Y = 5

rad = GetRadian(θ)
Z = Y / Sin(rad)

Debug.Print Z
10
辺Yの長さを求める
(角度θ=30,辺Z=10の場合)
※sinθ=Y / Z
Dim rad As Double, θ As Double
Dim Y As Double, Z As Double

θ = 30
Z = 10

rad = GetRadian(θ)
Y = Sin(rad) * Z

Debug.Print Y
5


動作検証

説明 記述例 出力
文字列の数値を指定可能 Sin("2") 0.909297426825682
文字列の数値(16進数)を指定可能 Sin("&H2") 0.909297426825682
文字列の数値(8進数)を指定可能 Sin("&O2") 0.909297426825682
文字列の数値(指数表記)を指定可能 Sin("1E2") -0.506365641109759
整数部分が19桁を上回るとエラー Sin(999999999999999999.99999999) -0.992816104053003
Sin(-999999999999999999.99999999) 0.992816104053003
Sin(10000000000000000000) エラー
Nullを指定するとエラー Sin(Null) エラー


コメント
コメントする








    
この記事のトラックバックURL
トラックバック