vba - Excel VBA函数给出 "Argument not Optional"

标签 vba excel

我正在尝试编写一个 VBA 函数,用于将赤纬和赤经转换为其十进制值。

我为 RA 提供了完美的工作功能,但不断收到

Argument not Optional

错误。

该功能当前为:

Public Function dec2decimal(Deg As Integer, Min2 As Integer, Sec2 As Integer) As Double

    Dim Dec As Double
    Dec = 0
    If Deg >= 0 Then
        Dec = (Deg + Min2 / 60 + Sec2 / 3600)
    Else
        Dec = (Deg - Min2 / 60 - Sec2 / 3600)
    End If

    ra2decimal = Dec
End Function

当我运行它时,我显然向它提供了三个参数,但它仍然不满意。

有什么想法吗?

最佳答案

这对我来说工作得很好。

注意修订,将 ra2decimal 更改为 dec2decimal

Option Explicit
Sub testDec2Decimal()

MsgBox dec2decimal(1, 1, 1)

End Sub

Public Function dec2decimal(Deg As Integer, Min2 As Integer, Sec2 As Integer) As Double

    Dim Dec As Double
    Dec = 0
    If Deg >= 0 Then
        Dec = (Deg + Min2 / 60 + Sec2 / 3600)
    Else
        Dec = (Deg - Min2 / 60 - Sec2 / 3600)
    End If

    dec2decimal = Dec
End Function

关于vba - Excel VBA函数给出 "Argument not Optional",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15671567/

相关文章:

vba - 是否可以在 Visual Studio 中编写 Excel VBA 代码

excel - 正在获取编译器错误(无效的标识符)

vba - 用于搜索/替换表的 Word VBA

excel - `Run-time error 6: Overflow` 如果文件名 > 2139999999

excel - 是否可以根据另一列中的值连接一系列值?

excel - 将两个vba代码合二为一

ruby-on-rails - 如何在导出 Excel 时包含背景颜色而不在 Rails 中添加任何 Gem?

vba - 将粘贴数据从一张工作表复制到任何其他工作表

vba - 存储数据但不以预期格式输出

excel - 在 CUBESET 函数中使用带有三个参数的 EXISTS