
Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Excel、WPS、OpenOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片 (表)、透视表、切片器等复杂组件的文档,并提供流式读写支持,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。
自 2016 年开源以来已成为云原生应用尤其是 Go 语言开发者在处理电子表格办公文档时的热门选择,正在被广泛应用于大型互联网公司、中小企业客户和初创公司。荣获 2025 上海开源创新菁英奖、入选 2023 开源创新榜优秀开源项目、荣获 2022 年中国开源创新大赛一等奖、2020 Gopher China - Go 领域明星开源项目 (GSP)、2018 年开源中国码云最有价值开源项目 GVP (Gitee Most Valuable Project)。
GitHub: github.com/xuri/excelize
中文简体字文档: xuri.me/excelize/zh-hans
2026年11月2日,社区正式发布了 2.11.1 版本,该版本包含 30 余项更新,包括新增功能、错误修复、安全加固和兼容性提升优化。来自世界各地的 30 名开发者为此版本贡献了代码。下面是有关该版本更新内容的摘要,此版本中最显著的变化包括:
此版本中最显著的变化包括:
golang.org/x/crypto
GetPivotTables 函数在数据透视表字段索引无效时引发程序 panic 的问题 (CVE-2026-107211),相关安全公告 GHSA-mx22-3794-2vpvGetSlicers 函数从不含绘图部件的工作表中获取切片器时引发程序 panic 的问题 (CVE-2026-107213),相关安全公告 GHSA-r7x5-4969-99p7EncryptionInfo 和 EncryptedPackage 流大小的问题 (CVE-2026-107215),相关安全公告 GHSA-x2q3-8cjh-766fCalcCellValue 函数因 ANCHORARRAY 公式循环引用导致栈溢出的问题 (CVE-2026-107216),相关安全公告 GHSA-wp2g-vpjj-g53rColumnNameToNumber 和 JoinCellName 函数接受无效列名而导致整数溢出的问题 (CVE-2026-107217),相关安全公告 GHSA-c85p-xxjj-2r75GetConditionalFormats 函数在条件格式规则格式错误时引发程序 panic 的问题 (CVE-2026-107222),相关安全公告 GHSA-rxcj-4pj5-74grEmbeddedObject 数据类型MaxCFBStreamSizeV3 和 MaxCFBStreamSizeV4
GetShapes 函数,支持获取形状,相关 issue 436GetEmbeddedObjects 和 SetGetEmbeddedObject 函数,支持获取和设置嵌入对象,相关 issue 158 和 #2186CalcCellValue 函数支持计算带有数组公式参数的 AND 公式函数SetConditionalFormat 函数支持验证样式索引,相关 issue 2400SetCellValue 存储数值的精度与 Microsoft Excel™一致,相关 issue 1757GetPictures 函数在某些情况下未返回图片位置属性的问题,解决 issue 2217CalcCellValue 函数计算括号或运算符内包含错误值的公式时,返回错误计算结果的问题,解决 issue 1164 和 #2344CalcCellValue 函数在某些情况下未返回预期错误的问题,解决 issue 2349 和 #2432CalcCellValue 函数在计算 16 个公式函数时返回错误结果的问题:COUNT、COUNTA、EDATE、HLOOKUP、IF、INDIRECT、ISNUMBER、MDETERM、MINVERSE、OR、SUM、TRIM、VALUE、VLOOKUP、WEEKDAY 和 XLOOKUP,解决 issue 2411、#2412、#2413、#2414、#2415、#2416、#2417、#2430、#2436、#2439 和 #2445CalcCellValue 函数在公式中右括号不匹配时引发程序 panic 的问题,解决 issue 2409CalcCellValue 函数计算含有无效参数的 AVERAGEIFS、COUNTIFS、MAXIFS、MINIFS、PERCENTILE.EXC 和 SUMIFS 公式函数时引发程序 panic 的问题,解决 issue 2426AddChart 和 AddChartSheet 函数在某些情况下生成无效图表导致工作簿损坏的问题,解决 issue 2355 和 #2356time.Duration 数据类型的值设置单元格值时精度丢失的问题,解决 issue 2372AddSlicer 函数为数据透视表的不同字段重复使用相同切片器缓存的问题,解决 issue 2383GetStyle 函数对无图案填充返回无效样式的问题,解决 issue 2384GetFormControls 和 GetTables 函数无法获取工作簿内部带有绝对路径部件的表单控件和表格的问题,解决 issue 2386GetPanes 函数在某些情况下无法获取拆分窗格的问题,解决 issue 2387SetCalcProps 函数无法将计算属性设置为 false 的问题,相关 issue 2404ExcelDateToTime 函数转换 1900 年 1 月和 2 月的日期时,结果提前一天的问题,解决 issue 2466感谢 Excelize 的所有贡献者,以下是为此版本提交代码的贡献者列表:
《Excelize 权威指南》不仅介绍了 Excelize 库的基本使用方法,还深入探索了高级特性和应用场景。全书共分五个篇章:入门指南、基础库设计概览、深入 Excelize、高性能流式读写技术以及实践应用。通过这本书,你将学会如何利用 Go 语言和 Excelize 库,实现 Excel 文件的自动化处理、复杂数据分析以及报表生成等任务。
你将不再受限于 Excel 的传统操作方式,而是能够通过编程的方式,解锁 Excel 新境界,创造出更加智能、高效的数据处理解决方案。
