如何计算/定义VBA中的ArcSin功能?

如何计算/定义VBA中的ArcSin功能?

问题描述:

如何实现arcsin函数的VBA代码(定义如下)?如何计算/定义VBA中的ArcSin功能?

定义:arcsin函数是正弦函数的反函数。它返回正弦为给定数字的角度。对于每个三角函数,都有一个相反的函数。这些反函数具有相同的名称,但前面带有“弧”。 (在某些计算器上,arcsin按钮可能标记为asin,有时也可能标记为sin-1)。因此,sin的倒数是arcsin等等。当我们看到“arcsin A”时,我们将其理解为“其角度为A的角度”

sin30 = 0.5方式:30度的正弦是0.5

ARCSIN 0.5 = 30方式:其罪是0.5为30度的角度。

我真的不明白你的问题在这里。该ARCSIN功能已经存在于VBA,你可以用它来与:

WorksheetFunction.Asin(myValue) 

使用反正弦函数的

Dim myValue As Double 
myValue = 0.1234 

MsgBox CStr(WorksheetFunction.Asin(myValue)) 

在那里,你可以打印一个的反正弦函数的结果值为Double。

下面的代码,将有助于实现基于给定的定义ARCSIN功能:

Option Explicit 
    Public Const Pi As Double = 3.14159265358979 
    Private Function ArcSin(X As Double) As Double 
     If Abs(X) = 1 Then 
     'The VBA Sgn function returns an integer (+1, 0 or -1), 
     'representing the arithmetic sign of a supplied number. 
     ArcSin = Sgn(X) * Pi/2 
     Else 
     'Atn is the inverse trigonometric function of Tan, 
     'which takes an angle as its argument and returns 
     'the ratio of two sides of a right triangle 
     ArcSin = Atn(X/Sqr(1 - X^2)) 
     End If 
    End Function