2012-01-18 68 views
0

我创建一个在VB.NETUDF,有时与currency,我会需要使用Decimal格式VB工作。但有时我会用time或仅仅是一个普通的double。有什么方法可以决定我应该如何增加数值,decimaldoubleUDF方法来确定货币或双

为了简单起见,我宁愿不要让excel返回实际的范围,但如果我需要确定它是否被格式化为货币,将会这样做。

回答

2

由于Excel对货币,时间值,整数和所有其他数字使用双精度,因此它通常不需要查找数字如何格式化以用于Excel显示目的:只需将值增加。=作为双精度。

+0

但是,如果我将它们添加为“双倍”,那么在合计“货币”值时总计的精度是否会降低?这是我最关心的问题。我使用'UDF'来添加'time'值(用'double'确定),但也可以用它来加总'currency',我认为这个建议是你使用'Decimal'类型的变量。 – Jon49 2012-01-18 20:50:42

+0

如果您想以与Excel相同的方式添加Excel值,那么您必须使用双精度,因为这就是Excel如何存储和计算它们(IEE浮点双精度) – 2012-01-19 00:15:46

+0

好的,我没有意识到这是Excel总是添加它们的方式向上。谢谢您的帮助!所以,我认为excel并不是最好的加法财务,因为它不使用'Decimal'类型变量?我想这是一个新的问题:) – Jon49 2012-01-19 17:07:19