ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1256|回复: 0

[其他] 开源跨平台 Excel 文档基础库 Excelize 发布 2.5.0 版本,这些功能值得关注

[复制链接]

TA的精华主题

TA的得分主题

发表于 2022-1-8 16:53 | 显示全部楼层 |阅读模式

271268775_2127586894072883_1203852930887759576_n.jpg


Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel™ 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片 (表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。入选 2020 Gopher China - Go 领域明星开源项目 (GSP)、2018 年开源中国码云最有价值开源项目 GVP (Gitee Most Valuable Project),目前已成为 Go 语言最受欢迎的 Excel 文档基础库。

开源代码

GitHub: github.com/xuri/excelize
中文文档: xuri.me/excelize/zh-hans

2022 年 1 月 3 日,社区正式发布了 2.5.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化,此版本中最显著的变化包括:

兼容性提示

  • 打开已有工作簿或在获取行迭代器后,需要调用对应的 Close 函数关闭工作簿和数据流
  • 修改 ReadZipReader 为 File 的实现,支持通过选项指定解压至内存或文件系统
  • 移除了不必要的导出变量 XMLHeader,可使用 encoding/xml 包的 xml.Header 代替
  • 移除了不再使用的导出变量 ErrToExcelTime


新增功能

  • 新增 API: SetRowStyle 支持设置整行样式,相关 issue #990
  • 新增 API: GetCellType 支持获取单元格数据类型,相关 issue #417 和 #520
  • 新增 API: SetAppProps 和 GetAppProps 支持设置与获取工作簿应用程序属性,相关 issue #1095
  • GetCellValue, GetRows, GetCols, Rows 和 Cols 支持指定是否读取单元格原始值而不应用数字格式表达式,相关 issue #621
  • 新增 95 项公式函数: ACCRINT, ACCRINTM, ADDRESS, AMORDEGRC, AMORLINC, AVEDEV, AVERAGEIF, CHIDIST, CONFIDENCE, CONFIDENCE.NORM, COUNTIF, COUNTIFS, COUPDAYBS, COUPDAYS, COUPDAYSNC, COUPNCD, COUPNUM, COUPPCD, DATEVALUE, DAY, DAYS, DELTA, DEVSQ, DISC, DURATION, ERF, ERF.PRECISE, ERFC, ERFC.PRECISE, GEOMEAN, GESTEP, IFNA, IFS, INDEX, INTRATE, ISFORMULA, ISLOGICAL, ISREF, ISOWEEKNUM, MATCH, MAXA, MAXIFS, MDURATION, MINIFS, MINUTE, MONTH, ODDFPRICE, PERCENTILE.EXC, PERCENTRANK.EXC, PERCENTRANK.INC, PERCENTRANK, PRICE, PRICEDISC, PRICEMAT, PV, QUARTILE.EXC, RANK, RANK.EQ, RATE, RECEIVED, RRI, SHEETS, SLN, STANDARDIZE, STDEV.P, STDEVP, SWITCH, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, TEXTJOIN, TIME, TRANSPOSE, TRIMMEAN, VALUE, VAR, VAR.S, VARA, VARPA, VDB, WEEKDAY, WEIBULL, WEIBULL.DIST, XIRR, XLOOKUP, XNPV, XOR, YEAR, YEARFRAC, YIELD, YIELDDISC, YIELDMAT, Z.TEST, ZTEST, 相关 issue #65 和 #1002
  • 公式计算引擎支持嵌套 IF 函数,相关 issue #987
  • 公式计算引擎支持共享公式,相关 issue #844
  • 公式计算引擎支持文本比较运算,相关 issue #998
  • 支持在数据验证中使用公式,相关 issue #1012
  • 支持文档压缩比限制,避免潜在的安全风险
  • SetCellFormula 支持设置共享公式
  • UpdateLinkedValue 在清除单元格计算缓存时将跳过 macro sheet, 相关 issue #1014
  • 修复部分情况下,由于内部依赖关系计算错误导致的 AddPicture 重复创建图片的问题,相关 issue #1017
  • AddShape 支持设置形状轮廓线条宽度,相关 issue #262
  • 新增文档打开选项 UnzipXMLSizeLimit 以支持指定打开每个工作表以及共享字符表时的内存解压上限
  • 创建样式时,若给定的自定义数字格式无效,将返回错误提示,相关 issue #1028
  • 流式写入现已支持设置行样式
  • 流式写入器将为时间类型单元格创建时间数字格式样式,相关 issue #1107
  • 支持设置数据透视表报表布局 “以压缩形式显示” 或 “以大纲形式显示”, 相关 issue #1029
  • 行 / 列迭代器支持获取当前行 / 列序号和行 / 列总数,相关 issue #1054
  • 使用 time.Time 类型参数进行单元格赋值时,支持时区位置,相关 issue #1069
  • 新增导出 7 项错误信息,以便开发者可根据不同的错误类型进行采取相应处理


兼容性提升

  • 提升与内部带有 r="0" 属性工作表的兼容性
  • 保留 XML 控制字符
  • 提升样式设置与 Apple Numbers 的兼容性,相关 issue #1059
  • 页眉页脚字符数限制兼容多字节字符,相关 issue #1061
  • 设置单元格时将保留水平制表符,相关 issue #1108


问题修复

  • 修复部分情况下删除数据验证失败的问题,解决 issue #979
  • 修复部分情况下设置数据验证下拉列表失败的问题,解决 issue #986
  • 修复公式计算引擎 LOOKUP 函数部分情况下计算结果错误的问题,解决 issue #994
  • 修复公式计算引擎 LOOKUP 仅支持完全匹配的问题,解决 issue #997
  • 修复公式计算引擎百分比计算错误的问题,解决 issue #993
  • 修复特定情况下单元格读取异常导致的 panic
  • 修复设置 “后 N 项” 条件格式失败的问题
  • 修复部分情况下时间解析错误的问题,解决 issue #1026 和 #1030
  • 修复科学记数法数字格式的单元格值解析异常的问题,解决 issue #1027
  • 修复部分情况下浮点型数据读取异常的问题,解决 issue #1031
  • 修复部分情况下删除工作表失败的问题
  • 修复内建时间数字格式解析异常问题,解决 issue #1060
  • 修复部分情况下新建样式时返回样式 ID 异常的问题
  • 修复部分情况下删除行列后合并单元格区域异常的问题


性能优化

  • 合并单元格性能大幅提升,耗时降低 90%
  • 提高流式读取性能,当内部 XML 较大时,将共享字符串表解压缩到系统临时文件,内存使用量减少约 60%, 相关 issue #109
  • 优化读取工作表列表性能
  • 优化设置列样式存储,缩小生成的文档体积,解决 issue #1057


其他

  • Go Modules 依赖模块更新
  • 单元测试与文档更新
  • 包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新



您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-22 06:24 , Processed in 0.038129 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表