有没有办法减小通过自动外壳或tcl生成的.xls文件的大小,以便我可以自动通过邮件发送它。到目前为止,我正在手动.xls文件转换为.xlsb,将其大小从25 mb减小到5 mb,然后每天将报告发送给所需的人员。那么有没有办法做到这一点呢?
Python 实现
将 xls 文件转换为 csv:
import xlrd
w = xlrd.open_workbook(xls_filename, encoding_override="cp1251")
将生成的 csv 转换为 xlsb:
import win32com.client
excel=win32com.client.Dispatch("Excel.Application")
doc = excel.Workbooks.Open('csv_file')
doc.SaveAs( 'filename.xlsb', 50 )
也许您可以直接从 xls 转换为 xlsb,而不是将 xls 转换为中间 csv 格式。