我使用以下表达式来格式化我的值以仅显示两个小数点。如果值不为0,则工作正常。但是,当值为0时,它不显示0。
例如。 使用表达式
=Format(Fields!CUL1.Value, "##.##")
如果CUL1.Value为2.5670909,则报告中显示的值为2.56(这很棒!) 如果CUL1.Value为0.006709,则不显示任何值(我希望它显示为0.00) 如果CUL1.Value为0,则不显示任何值(我想显示0)
感谢。
答案 0 :(得分:50)
试试这个
=Format(Fields!CUL1.Value,"F2")
答案 1 :(得分:46)
您需要确保始终显示小数点右侧的第一个数字。在自定义格式字符串中,#
表示显示数字(如果存在),0
表示始终显示内容, 0 作为占位符。
因此,在您的情况下,您将需要以下内容:
=Format(Fields!CUL1.Value, "#,##0.##")
这句话:显示2 DP(如果存在),非零部分始终显示最低部分,并使用,作为分组分隔符。
这是它在数据上的显示方式(我添加了一个大值以供参考):
如果您对分离数千,数百万等不感兴趣,请使用Paul-Jan建议的#0.##
。
Custom Numeric Format Strings的标准文档是您最好的参考资料。
答案 2 :(得分:9)
如果您希望始终在小数点后显示某些值,例如“12.00”或“12.23” 然后像下面一样使用,它对我有用
FormatNumber("145.231000",2)
这将显示 145.23
FormatNumber("145",2)
这将显示 145.00
答案 3 :(得分:6)
Format(Fields!CUL1.Value, "0.00")
会更好用,因为@abe
表示他们想要展示0.00
,如果值为0,则"#0.##"
会显示"0"
。
答案 4 :(得分:1)
实际上,我需要以下内容...除去小数而不进行舍入,因此“12.23”需要显示为“12”。在SSRS中,请勿将数字格式化为百分比。保留格式为默认格式(未应用格式),然后在表达式中执行以下操作:= Fix(Fields!PctAmt.Value*100))
将数字乘以100,然后在SSRS中应用FIX函数,该函数仅返回数字的整数部分。
答案 5 :(得分:1)
请尝试以下代码段,
IIF(Round(Avg(Fields!Vision_Score.Value)) = Avg(Fields!Vision_Score.Value),
Format(Avg(Fields!Vision_Score.Value)),
FORMAT(Avg(Fields!Vision_Score.Value),"##.##"))
希望它会有所帮助,谢谢你。