【问题标题】:How to insert Excel formula to cell in Report Builder 3.0?如何在 Report Builder 3.0 中将 Excel 公式插入单元格?
【发布时间】:2015-06-23 10:28:00
【问题描述】:

有用于 SQL Server Reporting Services 的 RDL 报告模板。
我需要在报告模板中为表格中的单元格设置值,该值必须根据报告中的其他值计算得出。
当报告导出到 Excel 文件时,我需要在该单元格中查看 Excel 公式。

例子:

1) 带有三列表格的示例报告模板。第一个单元格必须是第二个和第三个的总和:

2) 我为第一列设置表达式以在输出报告中重现 excel 公式:

3) 当报告导出到 Excel 文件时,我在单元格中看到公式的原始文本: 4)但是当我点击转换为正确值的excel公式输入单元格中的值时:

【问题讨论】:

  • SSRS 不是 Excel,因此您不能使用 Excel 单元格引用。
  • @DavidG 我知道,但我需要使用任何解决方法来实现单元格引用。所以 Excel 正确解释了这个公式,但是在我点击单元格值之后。
  • 您可以使用 SSRS 表达式,但它们会导出为值,而不是 Excel 中显示的公式。
  • @DavidG 不幸的是,客户要求是公式,而不是格式化值。
  • 那么你所要求的是不可能的。

标签: sql-server excel reporting-services excel-formula ssrs-2008-r2


【解决方案1】:

自 SSRS 2008 以来,Excel 公式支持已结束(请参阅 Breaking Changes in SQL Server Reporting Services)。

Excel 中不支持公式

在早期版本的 Reporting Services 中,支持有限 用于将 RDL 中的表达式转换为 Microsoft Excel 公式。在 在此版本中,当您将报表导出到 Excel 时,RDL 表达式是 未翻译成 Excel 公式。

如果您确实需要excel文件中的公式并且不能使用SSRS 2005,您可以执行以下解决方法:

  • 在报告中的每个公式(例如:="'=C3+B3")之前附加一个额外的 '
  • 打开导出的excel文件
  • 进行查找和替换以删除前导'

但它并不适合所有情况......

【讨论】:

  • 我无法替换字符 ' 但如果我将值设置为 ="SOME_KEY_STRING=C3+B3",我成功地将“SOME_KEY_STRING=”替换为“=”,然后公式就可以工作了。谢谢。
【解决方案2】:

无法从 SQL Server Reporting Services 导出 Excel 公式。您唯一能做的就是使用标准 SSRS 表达式,但这些表达式将导出为 Excel 中的值(以及任何其他导出格式)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多