可以用Decimal型,可最大到29位的整数。但声明方式有点曲折:要先把变量定义为Variant型,再用CDec()函数把数据转换为Decimal型,但由于没有其他
数据类型放这么大的数值,所以数据在转换前要先放在
字符串中:
Dim s As String, n As Variant
s = "3345465677789898990090909"
n = CDec(s)
这时候n就是个Decimal型超大整数变量了。
但必须提醒,Decimal的运行效率是非常非常低的,这就是为什么VB(包括VBA)不直接提供这种数据类型的原因。实际应用中也很少需要用到这么大的数的(Long型最大20多亿一般够用了),你是要计算
银河系的直径吗?呵呵
补充一点:如果你处理的数字是无需参与运算的(比如身份证号码、手机号码等),就不需要设为数字类型,设为字符串类型即可。