导出到 excel 时 s-s-rS 报告颜色发生变化
Posted
技术标签:
【中文标题】导出到 excel 时 s-s-rS 报告颜色发生变化【英文标题】:s-s-rS Report Colours change when exporting to excel 【发布时间】:2010-11-17 12:03:54 【问题描述】:当我们将 s-s-rS 2008 报告导出到 excel,然后将该文件中的范围复制到另一个 excel 文件时,报告中使用的颜色会更改为完全不同的颜色,当我们使用“条件格式”来将其中一些单元格着色为特定颜色。任何想法为什么?
【问题讨论】:
您是否使用与this guy 相同的报告? 不。但很高兴看到问题不只是我! 【参考方案1】:这是因为 MS 开始在 SQL Server 2008 中使用 Excel 的自定义调色板而不是内置颜色。问题正如您所描述的那样,当将颜色从一张纸复制并粘贴到另一张纸时,您会丢失格式。不幸的是:没办法。
看到这个帖子:Excel Export copy to another excel discoloration issue for s-s-rS 2008
【讨论】:
【参考方案2】:https://connect.microsoft.com/SQLServer/feedback/ViewFeedback.aspx?FeedbackID=386055
s-s-rS 团队的建议(在上面的链接/帖子中) Microsoft 于 2011 年 5 月 29 日下午 3:34 发布 COM/.NET 的 API 类似。您正在调用 Worksheet.Copy,它不提供这些选项。看看 Range.Copy 和 Range.PasteSpecial。
是否有人链接到任何 C# 代码以使用 Range.Copy 或 PasteSpecial 调用从一个工作簿/工作表复制到另一个工作簿?
我认为 KeepSourceFormat 或 KeepSOurceScheme 可以将工作表从一个工作簿复制到另一个工作簿,以避免 s-s-rS 2008 R2 Excel 报告中出现变色问题。
【讨论】:
【参考方案3】:如果您只需要将它从一个文件复制并粘贴到另一个文件,您不能只使用 ctrl+C 和 ctrl+P。 Ctrl+C 工作正常,但由于某些原因,您需要右键单击并在 粘贴选项 中向下滚动选择性粘贴 并找到 保持源格式 按钮。它对我有用,因为它保留了除单元格大小之外的所有颜色和格式。
【讨论】:
【参考方案4】:这对我有用。
=IIF(sum(Fields!TotalHours.Value) <> "", "White","Pink")
换句话说,请确保为这两种情况定义颜色。
然后在Tablix1
属性页面上的背景填充颜色下删除“自动”并选择无颜色
【讨论】:
以上是关于导出到 excel 时 s-s-rS 报告颜色发生变化的主要内容,如果未能解决你的问题,请参考以下文章
报告服务 (s-s-rS):报告页脚在导出到 excel 时不起作用