VB.NET相当于VBA函数中的可选Range参数

时间:2009-08-31 04:37:03

标签: vb.net excel vba

我有一个Excel VBA函数,它接受许多可选参数,包括一个可选的Range:

Function DazBeta(A As Range, Z As Range, _
        B As Integer, _
        Optional Freq As Integer = 1, _
        Optional c As Double = 0, _
        Optional r As Range, _
        Optional Pct As Boolean = True, _
        Optional Label As Integer = 1)

我正在翻译成VB.NET,而且它是可选的Range让我感到悲伤,因为VB.NET允许选择Ranges。或者更确切地说,可选参数必须提供默认值。

更改VB.NET函数签名的建议方法是什么,以便可以从Excel单元格中将代码作为UDF调用?(VB.NET实现UDF,程序集已注册作为COM服务器,并告诉Excel电子表格此服务器和类型库,允许从Excel电子表格单元格中调用VB.NET代码。)

我有其他编译问题,所以我无法探索这个问题。我认为接受一个可选的Object(默认值为Nothing)可能会起作用,然后我可以将Object转换为Range。或者,如果有一个可以使用可选范围指定的默认值,那也可以。

有什么建议吗?

1 个答案:

答案 0 :(得分:3)

可选Range参数的默认值为Nothing