excel - 格式化 lucee 电子表格时出错 : The maximum number of cell styles was exceeded

标签 excel coldfusion apache-poi lucee

我正在使用lucee-spreadsheet ,这是一个很棒的工具。我正在制作一个非常大的电子表格(工作簿中的多张工作表,每张工作表有数千行)。一切都按预期进行。我已经用数据填充了工作表,并在客户想要的组之间创建了空白行。我现在返回并尝试应用一些格式,但遇到了错误:

The maximum number of cell styles was exceeded. You can define up to 4000 styles in a .xls workbook

问题是我只尝试应用一种样式:

spreadsheet.formatColumns(workbook=workbook, format={dataformat="$##,####0.00"},range='5-20');

我还需要应用许多其他样式。我猜测,由于有超过 500 行,并且此样式应用于 16 列,因此该样式实际上是在格式化每个单元格而不是列。

我可以或应该以不同的方式应用这种风格吗?

最佳答案

查看lucee-spreadsheet source code , formatColumns 正在为其格式化的每个单元格创建新的单元格样式。不幸的是,这并不是最理想的,并且 Excel 97 (HSSF) 电子表格格式会遇到 Apache POI 对电子表格样式的限制。最好使用 formatCellRange,它重用单元格样式,直到维护者实现更好的 formatColumns 函数来利用样式重用。

关于excel - 格式化 lucee 电子表格时出错 : The maximum number of cell styles was exceeded,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38343258/

相关文章:

r - 无法读取 R 中的 .xlsx 文件

excel - 自动筛选具有不相关条件的多列

javascript - 调用文件删除页面后返回页面状态

javascript - 弹出后如何正确触发 Action

java - 如何使用java将excel表中的数据插入数据库(包括空格而不编辑它们)

excel - 尝试复制整个工作簿,公式仍链接到旧工作簿

arrays - 存在过滤器时使用数组设置范围的值

javascript - 通过 jQuery ajax 使用 Coldfusion 删除文件

java - 如何修复通过apache POI上传xlsx文件时的AbstractMethodError

java - XSSFSheet 的 autoSizeColumn() 失败