如何在宏中实现文档?\n我已经为我的 Excel 工作表编写了一个自定义函数。但我不知道如何实现文档,以便如果在函数栏中键入该函数,则会像 Excel 中的标准函数一样显示解释。
\n\n是否可以实施该文档?
\n\n代码:
\n\nSub Macro1()\n'\n' Macro1 Macro\n'\nEnd Sub\n\nFunction AFRONDENONZEKERHEID(n As Double, decimalePlaatsen As Integer, Optional toggle As Boolean = False)\nIf n = 0 Then\n Exit Function\nEnd If\n\nIf toggle Then\n AFRONDENONZEKERHEID = Application.WorksheetFunction.Round(n, decimalePlaatsen)\n Exit Function\nEnd If\n\nDim afgerond As Double\nDim procentueleAfnamen As Double\n\nafgerond = Application.WorksheetFunction.Round(n, decimalePlaatsen)\nprocentueleAfnamen = (afgerond - n) / n * 100\n\n\nIf procentueleAfnamen <= -5 Then\n AFRONDENONZEKERHEID = Application.WorksheetFunction.RoundUp(n, decimalePlaatsen)\nElse\n AFRONDENONZEKERHEID = afgerond\nEnd If\n\nEnd Function\nRun Code Online (Sandbox Code Playgroud)\n\n(抱歉荷兰变量)
\n是否可以实施该文档?
答案是肯定的。
您可以运行例程来注册您的函数。该例程将使用Macro.Options 方法。
以下关于如何注册 UDF的示例来自 John Walkenbach:
这是一个简单(但非常有用)的用户定义函数:
Function EXTRACTELEMENT(Txt, n, Separator) As String
EXTRACTELEMENT = Split(Application.Trim(Txt), Separator)(n - 1)
End Function
Run Code Online (Sandbox Code Playgroud)
下面是一个 VBA 宏,它提供了 EXTRACTELEMENT 函数的描述,将其分配给函数类别,并为其三个参数中的每一个提供了描述:
Sub DescribeFunction()
Dim FuncName As String
Dim FuncDesc As String
Dim Category As String
Dim ArgDesc(1 To 3) As String
FuncName = "EXTRACTELEMENT"
FuncDesc = "Returns the nth element of a string that uses a separator character"
Category = 7 'Text category
ArgDesc(1) = "String that contains the elements"
ArgDesc(2) = "Element number to return"
ArgDesc(3) = "Single-character element separator"
Application.MacroOptions _
Macro:=FuncName, _
Description:=FuncDesc, _
Category:=Category, _
ArgumentDescriptions:=ArgDesc
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
539 次 |
| 最近记录: |