
Excelize 是 Go 语言编写的用于操作电子表格办公文档的开源基础库,基于 ISO/IEC 29500 、ECMA-376 国际标准。可以使用它来读取、写入由 Microsoft Excel 、WPS 、Apache OpenOffice 、LibreOffice 等办公软件创建的电子表格文档。支持 XLAM / XLSM / XLSX / XLTM / XLTX 等多种文档格式,高度兼容带有样式、图片(表)、透视表、切片器等复杂组件的文档,并提供流式读写支持,用于处理包含大规模数据的工作簿。可应用于各类报表平台、云计算、边缘计算等系统。
GitHub: github.com/xuri/excelize
中文文档: xuri.me/excelize/zh-hans
2024 年 2 月 26 日,社区正式发布了 2.8.1 版本,该版本包含了多项新增功能、错误修复和兼容性提升优化。下面是有关该版本更新内容的摘要,此版本中最显著的变化包括:
golang.org/x/netHeaderFooterOptions 中的字段 AlignWithMargins 和 ScaleWithDoc 修改为指针类型ShapeColorSetCellUint 支持设置无符号整型数GetPictureCells 支持获取图片单元格坐标GetConditionalStyle 支持获取条件格式样式定义GetHeaderFooter 支持获取工作表页眉页脚控制字符设置AddSlicer 支持为表格和数据透视表添加切片器GetPivotTables 支持获取数据透视表DeletePivotTable 支持删除数据透视表PivotTableOptions 中添加了新的字段 Name 以支持创建数据透视表时指定自定义数据透视表名称ChartLineType 枚举类型,以支持设置图表区域边框线型Chart 中添加了新的字段 Border 以支持设置图表区域边框类型ChartLine 中添加了新的字段 Type 以支持设置图表线型NameSpaceSpreadSheetXR10、ContentTypeSlicer、ContentTypeSlicerCache 和 SourceRelationshipSlicerExtURIPivotCacheDefinitionSetRowHeight 支持通过指定行高度为 -1 移除自定义行高度设置SetRowHeight 将返回错误提示信息AddChart 支持设置图表中的数据标签位置AddChart 支持设置图表区域、绘图区域和数据标记的填充色和透明填充,在 Chart、ChartPlotArea 和 ChartMarker 数据类型中添加了 Fill 选项AddChart 支持设置图表坐标轴文字字体、字号和删除线格式ChartSeries 中新增了 DataLabelPosition 字段,用于指定图表中各数据系列数据标签的位置Chart 中新增了 BubbleSize 字段,用于设置气泡图和三维气泡图的气泡大小ChartDataLabelPositionTypeGetPictureCells 和获取图片函数 GetPictures 支持读取由 Kingsoft WPS Office 创建的嵌入单元格图片SetConditionalFormat 支持批量为多个单元格区域设置条件格式GetBaseColor 函数,支持读取首选十六进制颜色代码OpenReader 函数打开文档时所指定的 Options 选项设置tabRatio 属性值工作簿部件的兼容性AutoFilter 函数添加自动过滤器时出现的 panicr 属性的行元素导致的 panic 问题GetCellRichText 在获取内联富文本时返回错误的问题GetConditionalFormats 读取带有“高于平均值”条件格式规则时 panic 的问题SetConditionalFormat 函数在创建带有多规则条件格式时,规则优先级有误的问题GetConditionalFormats 函数无法读取带有渐变填充格式数据条的问题GetStyle 或获取条件格式样式函数 GetConditionalStyle 所返回的小数位数 DecimalPlaces 字段值有误问题CalcCellValue 函数时,开启 RawCellValue 选项失效的问题 1 luhengyuorang 2024-02-26 14:41:05 +08:00 导出的 excel,office 打开报错终于修复了,泪奔 |
2 saxon 2024-02-26 15:50:32 +08:00 用了用了!好用! |
3 luxurioust OP @saxon 谢谢你的认可 |
4 ninjashixuan 2024-02-26 23:37:33 +08:00 go 一直用这个很好用,可惜没有 word 操作库 go 没有好用的。只能用 Python 的 word 库。 |
5 langhuishan 2024-02-27 09:39:33 +08:00 借楼问下,这个库里,1 、SetRow 能不能直接插入 struct 或者有优雅的将 struct 转成[]interface{}; 2 、有没有支持多线程插入方法? |
6 tallest 2024-02-27 09:47:55 +08:00 @ninjashixuan 确实! |