VBA:奇怪的Int()和Fix()函数行为。 [英] VBA: Strange Int() and Fix() function behavior.

查看:207
本文介绍了VBA:奇怪的Int()和Fix()函数行为。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

Dim d1 As Double
Dim d2 As Double
Dim d3 As Double
d1 = 0.25
d2 = 0.0125
d3 = d1 / d2
Debug.Print Int(d3) ' 20
Debug.Print Int(d1 / d2) ' 19


给出了什么? Fix()有同样的问题。

What gives? Fix() has the same issue.

推荐答案

这是一个IEEE 754问题,试试这个:

That's a IEEE 754 issue, try this:

Sub test()
  Dim d1 As Variant
  Dim d2 As Variant
  Dim d3 As Variant
  d1 = 0.25
  d2 = 0.0125
  d3 = d1 / d2
  Debug.Print Int(d3)
  Debug.Print Int(d1 / d2)
End Sub




Andreas。


Andreas.


这篇关于VBA:奇怪的Int()和Fix()函数行为。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆