我正在使用SSRS 2012和Excel 2010,我想在导出到Excel时隐藏一个列,在查看了一些论坛之后,看起来最好的方法是通过转到列或文本框中您希望隐藏,并在“可见性/隐藏”选项下将“表达式”设置为:
=IIF(Globals!RenderFormat.Name = "EXCEL",true,false)
我试过这个并且由于某种原因它不起作用,但是如果我反转true和false的选项我可以让它隐藏SSRS中的列,但它也隐藏在Excel中。这可能是一个问题,因为我正在使用的Excel版本?
答案 0 :(得分:3)
在SSRS 2012中,引入了 XLSX 导出格式,该格式使用与 XLS 导出不同的渲染器。
所以我想知道这是否会导致这个问题。修改可见性语句以考虑两种导出格式,例如:
=IIF(Globals!RenderFormat.Name = "EXCEL" or Globals!RenderFormat.Name = "EXCELOPENXML"
,true
,false)
这似乎是一个很好的第一次测试。
答案 1 :(得分:0)
因为你要返回一个布尔值,所以你不需要IIF:
=Globals!RenderFormat.Name = "EXCEL" or Globals!RenderFormat.Name = "EXCELOPENXML"
或者这也是有效的:
=InStr(Globals!RenderFormat.Name,"EXCEL") > 0