Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/reporting-services/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从SSRS导出到Excel时列宽发生更改_Excel_Reporting Services_Sql Server 2014 - Fatal编程技术网

从SSRS导出到Excel时列宽发生更改

从SSRS导出到Excel时列宽发生更改,excel,reporting-services,sql-server-2014,Excel,Reporting Services,Sql Server 2014,我有一个简单的SSRS报告,其中包含一个带有页眉行、页脚行和任意数量详细信息行的表。报告和表格的宽度为7英寸,报告四周有0.5英寸的边距。但当我将此报告导出到Excel时,每列的宽度增加了约8%,这导致报告超过7.5英寸,打印时溢出到第二页。我已经简化了报表,这样Excel中就不会生成额外的或隐藏的列,但它仍然存在这个问题。我知道我可以用Globals!RenderFormat.Name来确定它是否是在Excel中生成的,但由于我不能在列宽中使用表达式,所以这似乎没有任何帮助 如何让SSR在导出

我有一个简单的SSRS报告,其中包含一个带有页眉行、页脚行和任意数量详细信息行的表。报告和表格的宽度为7英寸,报告四周有0.5英寸的边距。但当我将此报告导出到Excel时,每列的宽度增加了约8%,这导致报告超过7.5英寸,打印时溢出到第二页。我已经简化了报表,这样Excel中就不会生成额外的或隐藏的列,但它仍然存在这个问题。我知道我可以用Globals!RenderFormat.Name来确定它是否是在Excel中生成的,但由于我不能在列宽中使用表达式,所以这似乎没有任何帮助


如何让SSR在导出到Excel时保持相同的列宽?

我发现导出到Excel时列宽的依赖关系是线性的。这就是我进行简单线性回归的原因,我得到了以下结果:

如果导出到excel时需要X列宽,则应使用以下公式计算SSRS(Y)中的英寸宽度

Y=0.072810*X+0.055624467

如果导出的excel文件的列宽为10,则SSRS(Y)中的宽度(以英寸为单位)应为:


Y=0.072810*10+0.055624467,因此Y=0.7837

我发现导出到excel时列宽的依赖关系是线性的。这就是我进行简单线性回归的原因,我得到了以下结果:

如果导出到excel时需要X列宽,则应使用以下公式计算SSRS(Y)中的英寸宽度

Y=0.072810*X+0.055624467

如果导出的excel文件的列宽为10,则SSRS(Y)中的宽度(以英寸为单位)应为:


Y=0.072810*10+0.055624467,因此我们得到Y=0.7837

我找到了解决方法,但这不是理想的解决方案。在Excel中,选择菜单中的页面布局,并将宽度更改为1页。当打印到一页上时,这会缩小所有内容。如果有更好的解决方案,我很乐意看到。我找到了解决办法,但这不是理想的解决方案。在Excel中,选择菜单中的页面布局,并将宽度更改为1页。当打印到一页上时,这会缩小所有内容。如果有更好的解决办法,我很乐意看到。