如何在macros中实现文档?

如何在macros中实现文档? 我已经为我的Excel表单写了一个自定义函数。 但是我不知道如何实现文档,所以如果在函数栏中input函数,就会像在Excel中的标准函数一样显示。

有没有可能实现该文件?

码:

Sub Macro1() ' ' Macro1 Macro ' End Sub Function AFRONDENONZEKERHEID(n As Double, decimalePlaatsen As Integer, Optional toggle As Boolean = False) If n = 0 Then Exit Function End If If toggle Then AFRONDENONZEKERHEID = Application.WorksheetFunction.Round(n, decimalePlaatsen) Exit Function End If Dim afgerond As Double Dim procentueleAfnamen As Double afgerond = Application.WorksheetFunction.Round(n, decimalePlaatsen) procentueleAfnamen = (afgerond - n) / n * 100 If procentueleAfnamen <= -5 Then AFRONDENONZEKERHEID = Application.WorksheetFunction.RoundUp(n, decimalePlaatsen) Else AFRONDENONZEKERHEID = afgerond End If End Function 

(对于荷兰variables,抱歉)

有没有可能实现该文件?

答案是肯定的。

您可以运行例程来注册您的function。 例程将使用Macro.Options方法 。

以下关于如何注册UDF的例子来自John Walkenbach:

这是一个简单的(但非常有用)用户定义的函数:

 Function EXTRACTELEMENT(Txt, n, Separator) As String EXTRACTELEMENT = Split(Application.Trim(Txt), Separator)(n - 1) End Function 

下面是一个VBAmacros,它提供了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