Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/73.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
Sql 重新保存时Excel文件大小减少到一半_Sql_Sql Server_Excel_Vba_Reporting Services - Fatal编程技术网

Sql 重新保存时Excel文件大小减少到一半

Sql 重新保存时Excel文件大小减少到一半,sql,sql-server,excel,vba,reporting-services,Sql,Sql Server,Excel,Vba,Reporting Services,我们很少有SSRS方面的报告。当我尝试将SSRS服务器站点的报告作为excel文件下载时,例如,假设我将文件从服务器站点下载到excel(文件)位置,它会消耗1000 kb,但当我尝试重新保存它(没有任何更改,只需使用另存为重新保存)时,excel文件大小实际上会减少到500 kb的一半。是否有人有同样的问题?如果有,请告诉我如何有效地将报告导入excel文件 谢谢听起来您可能正在将报表部署到SQL Server(可能是2008R2)版本,该版本仍然呈现.XLS(Excel 2003)而不是.X

我们很少有SSRS方面的报告。当我尝试将SSRS服务器站点的报告作为excel文件下载时,例如,假设我将文件从服务器站点下载到excel(文件)位置,它会消耗1000 kb,但当我尝试重新保存它(没有任何更改,只需使用另存为重新保存)时,excel文件大小实际上会减少到500 kb的一半。是否有人有同样的问题?如果有,请告诉我如何有效地将报告导入excel文件


谢谢

听起来您可能正在将报表部署到SQL Server(可能是2008R2)版本,该版本仍然呈现.XLS(Excel 2003)而不是.XLSX(Excel 2007+)。我们以前见过这种行为。这是一个众所周知的问题

Excel 2003(.xls)文件的大小

重要的 不推荐使用Microsoft Excel 2003呈现扩展插件。有关更多信息,请参阅SQL Server 2016中SQL Server Reporting Services中不推荐的功能

当报表首次导出并保存到Excel 2003时,Excel自动应用于其.xls工作簿文件的文件优化不会使报表受益。较大的文件大小可能会导致电子邮件订阅和附件出现问题。要减小导出报告的.xls文件的大小,请打开*.xls文件,然后重新保存工作簿。重新保存工作簿通常会将其文件大小减少40%到50%


这可以通过升级到更高版本的SQL(呈现为.XLSX)来解决。如果使用SharePoint作为主机,您可能需要将SharePoint升级为。

听起来您可能正在将报表部署到仍然呈现.XLS(Excel 2003)而不是.XLSX(Excel 2007+)的SQL Server版本(可能是2008R2)。我们以前见过这种行为。这是一个众所周知的问题

Excel 2003(.xls)文件的大小

重要的 不推荐使用Microsoft Excel 2003呈现扩展插件。有关更多信息,请参阅SQL Server 2016中SQL Server Reporting Services中不推荐的功能

当报表首次导出并保存到Excel 2003时,Excel自动应用于其.xls工作簿文件的文件优化不会使报表受益。较大的文件大小可能会导致电子邮件订阅和附件出现问题。要减小导出报告的.xls文件的大小,请打开*.xls文件,然后重新保存工作簿。重新保存工作簿通常会将其文件大小减少40%到50%


这可以通过升级到更高版本的SQL(呈现为.XLSX)来解决。如果使用SharePoint作为主机,您可能需要将SharePoint升级为。

因此,当您重新保存excel文件时,excel文件的大小是原来的一半?是重新保存时丢失了数据,还是文件大小只是在更改。如果从.xls文件保存到.xlsx或.xlsb文件,则大小将减小。如果将.xlsx保存为.xlsb,则大小也将减小。发生了类似的事情吗?您使用的是哪个版本的SSRS?嘿@Jarom,当我打开文件并重新保存时,除了文件大小的变化外,数据没有任何区别。当我重新保存时,文件大小从1000 kb重新保存到500 kb。他们@Mat'sMug,我使用的是visual studio 2012。您如何确定文件大小?因此,当您重新保存excel文件时,excel文件的大小是原来的一半?是重新保存时丢失了数据,还是文件大小只是在更改。如果从.xls文件保存到.xlsx或.xlsb文件,则大小将减小。如果将.xlsx保存为.xlsb,则大小也将减小。发生了类似的事情吗?你使用的是哪个版本的SSR?嘿@Jarom,除了打开文件时文件大小发生变化,然后在我重新保存时从1000 kb重新保存到500 kb之外,数据没有什么不同@Mat'sMug,我正在使用visual studio 2012如何确定文件大小?我使用python xlsxwriter创建了一个excel工作表。当我用libreoffice calc重新保存时,大小减少了60%以上。为什么会这样?请参阅我答案中的“根据Microsoft”链接,并阅读“Excel 2003(.xls)文件的大小”部分。它提到了SSRS XLS渲染器未使用的文件优化。我想python xlswriter也是这样。在Excel或libreoffice calc中打开和重新保存都必须应用文件优化。注意:我从未使用过这两个应用程序。我用PythonXLSXWriter创建了一个excel工作表。当我用libreoffice calc重新保存时,大小减少了60%以上。为什么会这样?请参阅我答案中的“根据Microsoft”链接,并阅读“Excel 2003(.xls)文件的大小”部分。它提到了SSRS XLS渲染器未使用的文件优化。我想python xlswriter也是这样。在Excel或libreoffice calc中打开和重新保存都必须应用文件优化。注意:我从未使用过这两个应用程序中的任何一个。