gpt4 book ai didi

vba - 如何在 VBA 中截断 double 值

转载 作者:行者123 更新时间:2023-12-02 16:34:43 26 4
gpt4 key购买 nike

我在 VBA 中有一个变量,需要将其截断为 4 位有效数字。我似乎找不到任何不会将数字向上或向下四舍五入的东西。但我只想删除第四个有效数字之后的数字。我试过了,

compressibility = round(compress, -3 - (Int(Log(Abs(compress)))))

它会删除第 4 位数字之后的数字,但仍将数字向上舍入。

例如,压缩是一个大约 0.000245848385 的数字,我需要压缩率数字为 0.0002458。

任何建议都会很棒!谢谢。

最佳答案

试试这个功能:

Function RoundSignificant(ByVal dValue As Double, iFigures As Integer)
Dim dSig As Double
dSig = Abs(dValue)
dSig = Application.Log10(dSig)
dSig = 1 + Int(dSig)
dSig = iFigures - dSig
RoundSignificant = Round(dValue, dSig)
End Function


Sub test()
Debug.Print RoundSignificant(0.000245848385, 4)
End Sub

关于vba - 如何在 VBA 中截断 double 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50627650/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com