Application.MacroOptions ArgumentDescriptions 在 Excel(Office 365 版本)中不起作用

问题描述 投票:0回答:2

我可以使用 Application.MacroOptions 方法来定义用户定义函数的参数,但 ArgumentDescriptions 似乎不起作用。谁能建议我可能做错了什么?

这是我的UDF:

Function sum_test(p1, p2)

    sum_test = p1 + p2

End Function

这是我用来注册函数的宏:

Sub Register_sum_test()
Dim sum_test_Args() As String
Dim sum_test_Desc As String
Dim test

    sum_test_Desc = "adds two numbers"
    
    ReDim sum_test_Args(1 To 2)
    sum_test_Args(1) = "first number"
    sum_test_Args(2) = "second number"
    
    Application.MacroOptions Macro:="Personal.xlsb!sum_test", Description:=sum_test_Desc
    Application.MacroOptions Macro:="Personal.xlsb!sum_test", ArgumentDescriptions:=sum_test_Args
    
End Sub

运行宏后,我可以看到“Description”参数已在Excel中应用。但是“ArgumentDescriptions”没有出现:

功能向导片段

excel vba
2个回答
0
投票

应该是:

ReDim sum_test_Args(0 To 1)
sum_test_Args(0) = "first number"
sum_test_Args(1) = "second number"

0
投票

谢谢@MGonet。我试过了。但还是没用。我还简化了宏代码如下:

Sub Register_sum_test()

    Application.MacroOptions Macro:="Personal.xlsb!sum_test", Description:="update: adds two numbers"
    Application.MacroOptions Macro:="Personal.xlsb!sum_test", ArgumentDescriptions:=Array( _
      "first number", _
      "second number")
    
End Sub

当我运行代码时,更新后的函数向导会更新函数描述,但仍然不显示参数描述:

更新了函数向导片段

© www.soinside.com 2019 - 2024. All rights reserved.