Excelize 2.4.0 正式版发布, 新增 152 项公式函数支持

Excelize 是 Go 语言编写的用于操作 Office Excel 文档基础库,基于 ECMA-376,ISO/IEC 29500 国际标准。可以使用它来读取、写入由 Microsoft Excel 2007 及以上版本创建的电子表格文档。支持 XLSX / XLSM / XLTM 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写 API,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。入选 2020 Gopher China - Go 领域明星开源项目 (GSP)、 2018 开源中国码云 Gitee 最有价值开源项目 GVP,目前已成为 Go 语言最受欢迎的 Excel 文档基础库。
开源代码
GitHub: github.com/xuri/excelize
Gitee: gitee.com/xurime/excelize
中文文档: xuri.me/excelize/zh-hans
2021年4月19日,社区正式发布了 2.4.0 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,完整的更改列表可查看 changelog。
Release Notes
此版本中最显著的变化包括:
兼容性提示
升级至该版本需要您使用的 Go 语言为 1.15 或更高版本。
新增功能
- 新增
GetCellRichTextAPI,支持根据给定的工作表名称获取富文本 SetPageLayout和GetPageLayout现已支持设置和获取页面打印缩放比例、指定单色打印、起始页码SetSheetPrOptions和GetSheetPrOptions现已支持设置和获取工作表标签页颜色SetCellHyperLink支持设置屏幕提示文字与显示文字,相关 issue #790- 创建数据透视表时新增支持
ShowError选项 - 流式 API 支持设置单元格公式, 相关 issue #625
- 公式计算引擎支持不等于运算符
- 嵌套公式函数现在支持将单元格引用用作参数
- 支持指定是否设置图表数据系列格式为自动填充颜色
- 新增 152 项公式函数支持: ATAN, AVERAGE, AVERAGEA, BESSELI, BESSELJ, BIN2DEC, BIN2HEX, BIN2OCT, BITAND, BITLSHIFT, BITOR, BITRSHIFT, BITXOR, CHAR, CHOOSE, CLEAN, CODE, COLUMN, COLUMNS, COMPLEX, CONCAT, CONCATENATE, COUNT, COUNTBLANK, CUMIPMT, CUMPRINC, DATE, DATEDIF, DB, DDB, DEC2BIN, DEC2HEX, DEC2OCT, DOLLARDE, DOLLARFR, EFFECT, ENCODEURL, EXACT, FALSE, FIND, FINDB, FISHER, FISHERINV, FIXED, FV, FVSCHEDULE, GAMMA, GAMMALN, HARMEAN, HEX2BIN, HEX2DEC, HEX2OCT, HLOOKUP, IF, IFERROR, IMABS, IMAGINARY, IMARGUMENT, IMCONJUGATE, IMCOS, IMCOSH, IMCOT, IMCSC, IMCSCH, IMDIV, IMEXP, IMLN, IMLOG10, IMLOG2, IMPOWER, IMPRODUCT, IMREAL, IMSEC, IMSECH, IMSIN, IMSINH, IMSQRT, IMSUB, IMSUM, IMTAN, IPMT, IRR, ISTEXT, ISPMT, KURT, LARGE, LEFT, LEFTB, LEN, LENB, LOOKUP, LOWER, MAX, MID, MIDB, MIN, MINA, MIRR, N, NOMINAL, NORM.DIST, NORMDIST, NORM.INV, NORMINV, NORM.S.DIST, NORMSDIST, NORM.S.INV, NORMSINV, NOT, NOW, NPER, NPV, OCT2BIN, OCT2DEC, OCT2HEX, PDURATION, PERCENTILE.INC, PERCENTILE, PERMUT, PERMUTATIONA, PMT, POISSON.DIST, POISSON, PPMT, PROPER, QUARTILE, QUARTILE.INC, REPLACE, REPLACEB, REPT, RIGHT, RIGHTB, ROMAN, ROW, ROWS, SHEET, SKEW, SMALL, STDEV, STDEV.S, STDEVA, SUBSTITUTE, T, TODAY, TRIM, TRUE, UNICHAR, UNICODE, UPPER, VAR.P, VARP, VLOOKUP
兼容性提升
- 当以
nil作为值调用SetCellValue设置单元格的值时,不再为单元格设置空白字符串而以空值代替,解决 issue #756 - 移除内部处理单元格填充颜色样式时冗余的 XML 可选空值解析标识
- 提升与 Google Sheets 离线浏览器扩展应用程序的兼容性,相关 issue #769
- 在筛选器对应的名称中使用绝对引用以提升与 Apache OpenOffice 应用程序的兼容性,解决 issue #776
- 在流式解析工作表过程中增加 XML 标签关闭事件的处理,提升行/列迭代器读取性能,修复部分情况下读取行数有误的问题
- 提高工作簿内工作表文档使用相对路径的兼容性
- 避免创建重复的富文本样式,解决 issue #787
- 提高工作簿内工作表文档使用绝对路径与 Windows 目录分隔符的兼容性
问题修复
- 修复数值舍入精度问题 #764
- 添加并调整工作表字段的解析顺序,修复部分情况下生成的文档损坏的问题 #766
- 修复
COTH双曲余切三角函数计算有误的问题 - 公式计算链增加对工作表的关联处理,修复部分情况下复制行导致的文档损坏问题,解决 issue #774
- 删除工作表时增加对名称的处理,解决 issue #775
- 修复内部函数
newFills和parseToken圈复杂度过高的问题 - 修复对工作表默认自定义行高的检查
- 修复取消工作表中全部合并单元格时导致文档损坏的问题, 解决 issue #782
- 修复部分情况下筛选条件部分丢失的问题
- 修复当工作簿包含图表工作表、对话工作表时,
UpdateLinkedValue产生错误的问题 - 修复部分情况下
GetColWidth返回默认列宽错误的问题 - 修复无法通过 Excel 电子表格应用程序向创建的数据透视表中添加时间轴与切片器的问题,解决 issue #804
- 设置名称时内部的
localSheetId属性将使用sheetIndex,修正错误的工作表索引使用 - 修复部分情况下保存后的文档单元格锁定或隐藏属性可能丢失问题,解决 issue #809
- 修复流式写入数据后调用普通 API 将导致流式写入的丢失问题,解决 issue #813
- 修复负值图表数据系列填充颜色丢失问题
性能优化
- 提高了数值精度处理速度
其他
- Go Modules 依赖模块更新
- 单元测试与文档更新
- 包含简体中文、英语、法语、俄语、日语、韩语、阿拉伯语、德语和西班牙语的多国语言文档网站更新
- 欢迎加入 Slack 频道、Telegram 群组 或技术交流群
DingTalk Group ID: 30047129
QQ Group ID: 207895940

Excelize 2.4.0 正式版发布, 新增 152 项公式函数支持的更多相关文章
- Redis 3.0正式版发布,正式支持Redis集群
Redis是一个开源.基于C语言.基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API.近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了.Redis 3.0的最 ...
- RestServer 2.0 正式版发布
RestServer 2.0 正式版发布 使用许可&版权说明 在保持本软件完整的情况下可以将本软件用于任何商业用途. 本软件可以自由传播,但是请保持软件相关文件和说明文档完整. 未经许可不得将 ...
- React Suite v3.0 正式版发布
React Suite v3.0 正式版发布 相信很多人会好奇,React Suite 是什么? React Suite 是 HYPERS 前端团队和 UX 团队开源的一套基于 React 的 UI ...
- Python 3.8.0 正式版发布,新特性初体验 全面介绍
Python 3.8.0 正式版发布,新特性初体验 北京时间 10 月 15 日,Python 官方发布了 3.8.0 正式版,该版本较 3.7 版本再次带来了多个非常实用的新特性. 赋值表达式 PE ...
- Appium路线图及1.0正式版发布
Appium更新的速度极快,从我试用时候的0.12到1.0(0.18版本后就是1.0),完全符合移动互联网的节奏. 更新可能会慢,可以多试几次 整理了testerhome上思寒发表的帖子,让我们来看下 ...
- Xcode 7.0正式版发布了
Xcode 7.0正式版发布了 下载地址:链接: http://pan.baidu.com/s/1FNkPS 密码: ee42 本文由大学霸整理,转载请注明出处,尊重IT人!
- RapidJSON 1.0 正式版发布,C++的JSON开发包
分享 <关于我> 分享 [中文纪录片]互联网时代 http://pan.baidu.com/s/1qWkJfcS 分享 <HTML开发MacOSAp ...
- .NET Core 3.0正式版发布
是的,.NET Core 3.0正式版发布了,令人兴奋. WPF 其实,.NET Core 2.1开始已经是个很完善的版本,3.0又带来了什么呢?我站在我的使用角度来看,最最令人振奋的就是:能用WPF ...
- Nest.js 6.0.0 正式版发布,基于 TypeScript 的 Node.js 框架
开发四年只会写业务代码,分布式高并发都不会还做程序员? Nest.js 6.0.0 正式版发布了.Nest 是构建高效.可扩展的 Node.js Web 应用程序的框架.它使用现代的 JavaSc ...
随机推荐
- Java命令行传递参数
目录 命令行传参 代码运行 视频 命令行传参 有时候你希望运行一个程序的时候再传递给它消息. 这要靠传递命令行参数给main()函数实现 package com.broky.base; public ...
- Java包机制和JavaDoc
目录 包机制 JavaDoc 视频课程 包机制 包的本质就是文件夹 为了更好的组织类, Java提供了包机制, 用于区别类名的命名空间, 使项目看起来更加整洁 一般公司庸域名倒置作为包名 为了能够使用 ...
- iphone苹果手机拼健康码行程码教程
因为疫情原因,不管是上班,还是上学,各公司和学校都要求提供全家人的健康码和行程码,并弄成一张拼图,这样方便统计!这就苦了广大用苹果手机的朋友们了,因为苹果手机没有自带的拼图软件. 下面我就教大家一个非 ...
- Improved Security for a Ring-Based Fully Homomorphic Encryption Scheme-2013:解读
本文记录阅读此论文的笔记 摘要 (1)1996年,HPS三人提出一个格上的高效加密方案,叫做NTRUEncrypt,但是没有安全性证明:之后2011年,SS等人修改此方案,将其安全规约到标准格上的困难 ...
- 从Hadder看蛋白质分子中的加氢算法
技术背景 PDB(Protein Data Bank)是一种最常用于存储蛋白质结构的文件.而我们在研究蛋白质构象时,往往更多的是考虑其骨架,因此在很多pdb文件中直接去掉了氢原子.但是在我们构建蛋白质 ...
- C# Winform程序界面优化实例
进入移动互联网时代以来,Windows桌面开发已经很久不碰了.之前就是从做Windows开发入行的. 当年,还是C++ VC6, MFC的时代.那时候开发要查的是MSDN :-).内存要自己管理, 排 ...
- Django数据库性能优化之 - 使用Python集合操作
前言 最近有个新需求: 人员基础信息(记作人员A),10w 某种类型的人员信息(记作人员B),1000 要求在后台上(Django Admin)分别展示:已录入A的人员B列表.未录入的人员B列表 团队 ...
- JavaWeb的技术体系
客户端和服务器端的交互 browser/ server(B/S)浏览器/服务器. client/server(C/S)应用/服务器.
- HashSet集合存储数据的结构和HashSet集合存储元素不重复的原理
HashSet集合存储数据的结构 HashSet集合存储元素不重复的原理 //创建HashSet集合对象 Hashset<String> set = new HashSet<> ...
- 如何用空气质量查询API接口进行快速开发
空气质量的好坏反映了空气污染程度,它是依据空气中污染物浓度的高低来判断的.空气污染是一个复杂的现象,在特定时间和地点空气污染物浓度受到许多因素影响.来自固定和流动污染物的人为污染物排放大小是影响空 ...