确保数字显示始终保留 2 位小数

问题描述 投票:0回答:1

美好的一天,

我有价格和点差值。 价格是数字,而点差可以是 +1、+0.5、-0.5、-1 或“平”又名 0

我的任务是将这两个值放在一起。

例如 价格=600

我需要最终结果始终显示 2 位小数,即使它们是 .00

并且不能向上或向下舍入。 但我的 .00 总是被修剪掉。

我总是得到的:

如有任何建议,我们将不胜感激。 谢谢你。

excel vba decimal
1个回答
0
投票

你可以用公式来做到这一点:

假设价格存储在指定范围内

Price
并且您的数据存储在 A 列中,从第 2 行开始:

=TEXT(B2,"0.00")&" ("&IF(B2-PRICE=0,"Flat",ROUND(B2-PRICE,2))&")"

说明:

TEXT
函数将数字转换为格式化字符串,给出格式模式。 '0.00' 会将值格式化为 2 位小数 - 例如为您提供
600.00
599.95

TEXT(B2,"0.00")

现在我们使用

IF
函数来检查该值是否等于
PRICE
或不同。如果它等于
PRICE
,我们就写入字符串
Flat
,否则我们计算差值。我们需要使用
ROUND
函数,否则我们会因为浮点数学而得到
0.00999999
而不是
0.01
的差异。

IF(B2-PRICE=0,"Flat",ROUND(B2-PRICE,2)

剩下的就是字符串连接了

© www.soinside.com 2019 - 2024. All rights reserved.