2009-08-31 25 views
2

我有一个Excel VBA函数,它接受一系列可选参数,包括可选的范围:VB.NET相当于VBA功能可选范围参数的

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,它的可选的范围让我感到悲伤,因为VB.NET确实允许可选的范围。或者说,可选参数必须提供默认值。

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

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

有什么建议吗?

回答

3

可选Range参数的默认值为Nothing

+0

所以,完全没有问题。哇,耻辱。 – hughdbrown