- 帖子
- 533
- 主題
- 58
- 精華
- 0
- 積分
- 613
- 點名
- 239
- 作業系統
- win 10
- 軟體版本
- []
- 閱讀權限
- 50
- 性別
- 男
- 註冊時間
- 2013-3-19
- 最後登錄
- 2026-9-30
             
|
回復 57# lcctno
計算不一致的地方是 [Data!D4960] 8550.60,比對 [結果!A1917] 的 8550.60
剛好是在比對的 邊界值 而造成浮點算數的問題
假如 VBA 程式的比較式做一個處理就可以了
Sub 分析發生次數()
Dim Arr, Brr, Cunt&, Crr%(), R&, X&, Y&, TM, j%, k&, SU%
Const Zero = 0.00000001 '這是一個很小而不影響 "實用上的精度" 的數值
..............
..........
' If Brr(j, 1) >= Arr(k, 2) Then If Brr(j, 1) <= Arr(k, 1) Then SU = SU + 1
'改為 :
If Brr(j, 1) >= Arr(k, 2) - Zero Then If Brr(j, 1) <= Arr(k, 1) + Zero Then SU = SU + 1
..................
.........
End sub
以上請參考 |
|