带有像SUMIFS一样的ParamArray约束的Excel UDF

我正在尝试使用类似于内置SUMIFS语法对Excel UDF进行编码,即使用类似的签名

Function myUDF(param1 As Type1, ParamArray paramRest() As Variant) As MyType

但ParamArray必须具有偶数个元素(理想情况下甚至是Type)的条件。 这是可能吗?

例如,如果您尝试在单元格中input=SUMIFS(A:A,B:B,1,C:C) ,Excel会抱怨使用错误的参数数量(因为ParamArray是Array(Range("B:B"),1,Range("C:C")) ,因此具有奇数个元素)。 我想为myUDF相同的行为。

目前我处理它事后:

 If UBound(paramRest) Mod 2 <> 1 Then myUDF = CVErr(xlErrValue) Exit Function End If 

但是那感觉“肮脏”。