如何在VBA中计算/定义ArcSin函数?

时间:2017-10-08 13:21:55

标签: vba excel-vba trigonometry excel

如何实现arcsin函数的VBA代码(定义如下)?

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

  

sin30 = 0.5表示:30度的正弦为0.5

     

arcsin 0.5 = 30表示:sin为0.5的角度为30度。

2 个答案:

答案 0 :(得分:3)

我在这里真的不明白你的问题。 arcsin 功能已存在于VBA中,您可以将其用于:

WorksheetFunction.Asin(myValue)

使用arcsin功能

Dim myValue As Double
myValue = 0.1234

MsgBox CStr(WorksheetFunction.Asin(myValue))

在那里,您可以将arcsin函数的结果打印为Double。

答案 1 :(得分:0)

以下代码将有助于根据给定的定义实现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