使用Visual Basic的变量参数列表?

时间:2013-02-05 20:33:37

标签: vba dll variadic-functions

假设我有一个DLL,它使用可变参数列表导出函数,如下所示:

int myfunc(int arg1,...)

这里“...”是一个未定义的附加参数。可以从Visual Basic应用程序中调用此类函数,还是将VB锁定到具有固定参数的函数?

我只是要求避免一个会阻止VB程序员的设计问题......

谢谢!

1 个答案:

答案 0 :(得分:23)

在VBA中,函数可以移交未定义数量的参数,因此应该没有问题。

直接在VBA中,你可以定义一个这样的函数:

Function SumAll(ParamArray var() As Variant) As Double
    Dim i As Integer
    Dim tmp As Double
    For i = LBound(var) To UBound(var)
        If IsNumeric(var(i)) Then tmp = tmp + var(i)
    Next
    SumAll = tmp
End Function