ruby 发表于 2015-3-17 14:04:00

【WinForms】Spread公式

您好!
如下截图,想问下你们那有什么解决办法没?

Alice 发表于 2015-3-17 17:53:00

回复 1楼ruby的帖子

你好,你在Spread中使用了公式。
请问你需要什么的解决方法?误差?

sdh2350 发表于 2015-3-17 20:41:00

回复 2楼Alice的帖子

恩,是的。计算出来的结果不是我想要的!

Alice 发表于 2015-3-18 11:56:00

回复 1楼ruby的帖子

你可以给单元格设置NumberCellType,并且设置DecimalPlaces来控制小数点的位数。
比如这里,可以设置DecimalPlace为4,结果就是0.0041。

sdh2350 发表于 2015-3-18 13:02:00

回复 4楼Alice的帖子

设置小数位数这个能解决固定情况,但减数和被减数的位数都不确定。如果对计算结果进行设置的话就不合适了。

Alice 发表于 2015-3-18 18:09:00

回复 5楼sdh2350的帖子

很抱歉,目前设置TextBox或是General的单元格类型会有误差。
而通过Number就需要设置小数点的位数。

sdh2350 发表于 2015-3-18 21:29:00

回复 6楼Alice的帖子

那这个误差目前没有办法解决吗?Excel都没有耶~

Alice 发表于 2015-3-19 09:48:00

回复 7楼sdh2350的帖子

你好。
很抱歉给你带来使用上的不方便,目前的确是有这样的问题存在,只能通过设置NumberCellType的小数点位数解决。

考虑到这个问题的确给客户带来不便,基于你也提到的原因。这个问题已经提交到产品组进行修复,BugID 为75,842 ,有进一步消息会第一时间通知你。

另外,为了感谢你对我们产品的支持,稍后发送金币作为奖励。

taxsoft 发表于 2015-4-28 13:44:00

临时的办法还是有的,如果精度只发生在减法上,那么可以添加一个自定义公式(帮助文档里有方法)
那么比如 A3-A4 运用下自定义公式就是 比如公名是Deal
那么 Deal(A3-A4) 在解析的时候, 可以利用动态编译来计算,也可以利用实例化一个临时的spreadSheet来计算
这个spreadSheet 设置 NumberCellType,并且设置DecimalPlaces ,DecimalPlace 通过计算 公式里的字符的小数位数来得到,另外,在临界究竟会怎么样四舍五入,还要多测试。

Alice 发表于 2015-4-28 14:16:00

临时的办法还是有的,如果精度只发生在减法上,那么可以添加一个自定义公式(帮助文档里有方法)
那么比如 A3-A4 运用下自定义公式就是 比如公名是Deal
那么 Deal(A3-A4) 在解析的时候, 可以利用动态编译来计算,也可以利用实例化一个临时的spreadSheet来计算
这个spreadSheet 设置 NumberCellType,并且设置DecimalPlaces ,Decima
taxsoft 发表于 2015-4-28 13:44:00 http://gcdn.gcpowertools.com.cn/images/common/back.gif

谢谢提供的临时解决方案。
算是一个解决问题的思路,不过还需要经过测试来验证是否可行。
稍后会送上金币作为奖励。
页: [1]
查看完整版本: 【WinForms】Spread公式