4

我正在使用表达式来显示货币,具体取决于价值是数百万还是数千。此表达式在我的报告的 Format 属性中设置:

=iif((Fields!PrevActual.Value < 100000), "'$'#,,0,'K';('$'#,0,'K')", "'$'0,,.0,'M';('$'0,,.0,'M')'")

这样,如果值为 1,500,000,则该数字将显示为 150 万美元,如果为 15,000,则将显示为 15,000 美元。

问题是当我将文件导出到 Excel 时。以千为单位的数字保留格式,但以百万为单位的数字则丢失了格式。所以我有一个电子表格,上面有 1,500,000 和 15,000 美元这样的数字。所有数字都导出为文本。

有谁知道如何将格式保存在 excel 中,使其与 SSRS 报告中的显示方式相匹配,同时确保它仍然是一个数字?

本质上,我想模仿在我们使用 SSRS 自动生成此报告之前 excel 所做的事情。数以百万计的数字采用这种自定义数字格式:$#.0,,\M,数千采用这种格式:$#,K。

谢谢!

4

1 回答 1

0

如果您导出excel公式,那么它可以工作。即 export ="text(1500000," ""'$'0,,.0,'M';('$'0,,.0,'M')"")"

然后 Excel 会将公式转换为最终的格式化值 $15M

棘手的部分是使格式字符串在 excel 中有效,并创建一个 SSRS 公式,它将连接字符串并生成一个 Excel 公式。

这可以提供帮助:http: //msdn.microsoft.com/en-us/library/ms159220%28SQL.90%29.aspx

于 2012-10-09T06:30:35.790 回答