怎么压缩excel表格到10M以内?工具+代码的实现方法

张开发
2026/4/11 8:46:14 15 分钟阅读

分享文章

怎么压缩excel表格到10M以内?工具+代码的实现方法
在日常办公和开发场景中Excel文件尤其是包含大量数据、图表或格式的文件往往体积过大导致传输缓慢、存储占用过高。本文将介绍两种Excel文件压缩方案一种是适合非技术人员的可视化工具操作汇帮超级压缩器另一种是适合开发者的Python代码实现满足不同人群的使用需求。一、汇帮超级压缩器可视化工具操作步骤汇帮超级压缩器是一款轻量、高效的文件压缩工具专门针对各类办公文件优化支持Excel批量压缩操作简单且压缩率可观无需专业技术基础适合所有人群使用。1. 软件下载与安装首先下载并安装汇帮超级压缩器下载完成后按照安装向导完成安装全程默认下一步即可安装后运行软件。2. 具体操作步骤步骤1启动软件后首页会展示多种文件压缩功能如Word、Excel、PPT、图片等找到并点击「Excel压缩」功能进入Excel压缩详情操作页面。步骤2添加需要压缩的Excel文件。可点击页面中间的「添加文件」按钮批量选中文件也可直接将Excel文件拖拽至软件空白区域支持任意数量、任意大小的Excel文件无文件大小限制批量压缩更高效。步骤3设置压缩质量。在页面底部找到「压缩质量」设置项可根据需求调整压缩质量参数数值越小压缩率越高文件体积越小数值越大保留的文件清晰度和格式完整性越好建议默认设置即可满足大部分场景需求。步骤4选择输出目录。点击「输出目录」后的「浏览」按钮选择一个方便查找的文件夹作为压缩后文件的存储路径建议选择桌面或常用文件夹避免后续找不到文件。步骤5开始压缩。确认所有设置无误后点击页面底部的「开始压缩」按钮软件将自动批量处理添加的Excel文件。步骤6查看压缩结果。压缩时间取决于文件的数量和单个文件的大小一般几秒钟到一分钟不等耐心等待即可。压缩完成后软件会弹出「操作完成」提示并自动打开输出目录压缩后的Excel文件会保存在该目录下。注意压缩后会生成新的Excel文件不会覆盖原始文件可放心操作。打开压缩后的文件属性即可看到文件体积已明显缩小且不影响文件内容和格式的正常使用。二、Python代码实现Excel文件压缩2种方案对于开发者而言通过代码实现Excel压缩可集成到自动化脚本、项目中实现批量处理、定时压缩等功能。以下提供两种常用的Python代码方案分别基于openpyxl针对xlsx格式和pandas适合数据量大的Excel按需选择即可。方案1基于openpyxl实现适合xlsx格式保留格式openpyxl是Python中专门处理xlsx格式Excel文件的库通过优化Excel的单元格格式、删除冗余信息实现压缩适合需要保留原有文件格式的场景。1. 环境安装pip install openpyxl2. 完整代码from openpyxl import load_workbook import os def compress_excel_openpyxl(input_path, output_path): 基于openpyxl压缩Excel文件xlsx格式 :param input_path: 原始Excel文件路径xlsx格式 :param output_path: 压缩后Excel文件保存路径 # 加载原始Excel文件只读模式提高效率 wb load_workbook(input_path, read_onlyTrue, data_onlyTrue) # 创建新的工作簿用于保存压缩后的数据 new_wb load_workbook() # 删除默认的工作表 new_wb.remove(new_wb.active) # 遍历原始工作簿的所有工作表 for sheet_name in wb.sheetnames: ws wb[sheet_name] # 在新工作簿中创建同名工作表 new_ws new_wb.create_sheet(titlesheet_name) # 遍历原始工作表的所有行和列复制数据不复制冗余格式 for row in ws.iter_rows(values_onlyTrue): new_ws.append(row) # 保存压缩后的文件 new_wb.save(output_path) print(fExcel文件压缩完成原始大小{os.path.getsize(input_path)/1024:.2f}KB压缩后大小{os.path.getsize(output_path)/1024:.2f}KB) # 测试代码 if __name__ __main__: # 原始Excel文件路径xlsx格式 input_file test.xlsx # 压缩后文件保存路径 output_file test_compressed.xlsx # 调用压缩函数 compress_excel_openpyxl(input_file, output_file)采用read_onlyTrue模式加载原始文件减少内存占用提高处理速度仅复制Excel中的数据删除冗余的格式、样式、注释等信息实现文件压缩支持单个xlsx格式文件压缩可批量循环调用该函数实现多文件压缩方案2基于pandas实现适合大数据量Excel压缩率更高pandas是Python数据分析常用库通过重新写入Excel文件优化数据存储方式适合数据量大、无复杂格式要求的Excel文件压缩率比openpyxl更高。1. 环境安装pip install pandas openpyxl注openpyxl作为pandas写入xlsx文件的引擎需一并安装。2. 完整代码import pandas as pd import os def compress_excel_pandas(input_path, output_path, sheet_nameNone): 基于pandas压缩Excel文件支持xlsx、xls格式 :param input_path: 原始Excel文件路径 :param output_path: 压缩后Excel文件保存路径 :param sheet_name: 需压缩的工作表名称默认None压缩所有工作表 # 读取原始Excel文件sheet_nameNone读取所有工作表 if sheet_name is None: excel_data pd.read_excel(input_path, sheet_nameNone) else: excel_data {sheet_name: pd.read_excel(input_path, sheet_namesheet_name)} # 写入新的Excel文件不保留原始格式优化存储 with pd.ExcelWriter(output_path, engineopenpyxl) as writer: for sheet, data in excel_data.items(): data.to_excel(writer, sheet_namesheet, indexFalse) # 输出压缩前后大小对比 original_size os.path.getsize(input_path) / 1024 compressed_size os.path.getsize(output_path) / 1024 print(f压缩完成原始大小{original_size:.2f}KB压缩后大小{compressed_size:.2f}KB压缩率{((original_size - compressed_size)/original_size)*100:.2f}%) # 测试代码 if __name__ __main__: # 原始Excel文件路径支持xlsx、xls input_file data.xlsx # 压缩后文件保存路径 output_file data_compressed.xlsx # 调用压缩函数压缩所有工作表 compress_excel_pandas(input_file, output_file)3. 代码说明支持xlsx、xls两种格式的Excel文件兼容性更强可指定单个工作表进行压缩也可压缩所有工作表灵活适配不同需求适合大数据量Excel文件压缩处理速度快内存占用低。三、 注意事项汇帮超级压缩器压缩后不覆盖原始文件Python代码方案需注意输出路径避免覆盖原始文件Python方案中openpyxl仅支持xlsx格式xls格式需使用pandas方案若Excel文件包含复杂图表、宏、公式建议使用汇帮超级压缩器避免代码方案导致图表、宏丢失压缩后的Excel文件可正常打开、编辑不影响数据的完整性和准确性。四、总结如果是日常办公无需代码基础优先选择汇帮超级压缩器操作简单、格式保留完整适合批量处理各类Excel文件如果是开发者需要集成到自动化流程中可根据是否需要保留格式选择对应的Python方案——需要保留基础格式用openpyxl追求高压缩率、大数据量处理用pandas。两种方案均可有效减小Excel文件体积提升传输和存储效率按需选择即可。

更多文章