具有十进制types参数的Excel VBA用户定义函数

我正在Excel中编写VBA中的用户定义的函数。 我调用这个函数的参数是十进制值。 例如:

Public Function fcn(param1 as Decimal, param2 as Decimal) ... End Function 

但我似乎不能将我的参数定义为十进制types?

EXCEL 2010的VBA语言参考:

注意:
此时Decimal数据types只能在Variant中使用,也就是说,不能将variables声明为Decimaltypes。 但是,可以使用CDec函数创build子types为“十进制”的变体。

Visual Basis for Applications语言参考
– > Visual Basic语言参考
– >数据types
– >十进制数据types

EXCEL的几个版本(至less从Office 97开始)就是这种情况,所以我不希望它在不久的将来会改变。

使用

 Dim d as Variant d = CDec(1.21)