2016-07-13 6 views
4

私はlucee-spreadsheetを使用しています。これは素晴らしいツールです。私は非常に大きなスプレッドシートを作成しています(1シートに何千もの行があるブックに複数のシートがあります)。すべてが期待どおりに動作しています。私はデータをシートに取り込み、クライアントが望むグループ間に空白行を作成しました。私はすぐに戻って行くと、いくつかの書式を適用しようとすると、私はエラーに実行していています:ありlucee-spreadsheetの書式設定エラー:セルスタイルの最大数を超えました

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

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

問題は、私は唯一のスタイルを適用しようとしたということです私が適用する必要がある他の多くのスタイル。私は、500以上の行があり、このスタイルは16列に適用されているので、スタイルは実際には各セルをフォーマットしていて列はフォーマットしていないので、それを推測しています。

私はこのスタイルを適用することができますか、そうする必要がありますか?

+0

ご報告いただきありがとうございます。私はチケットを調達し、できるだけ早くそれを見ていきます:https://github.com/cfsimplicity/lucee-spreadsheet/issues/84 – CfSimplicity

答えて

5

lucee-spreadsheet source codeを見ると、formatColumnsは、フォーマットするすべてのセルに対して新しいセルスタイルを作成しています。残念ながら、これは準最適ではなく、スプレッドシートのスタイルに関するApache POIの制限は、Excel 97(HSSF)スプレッドシート形式のヒットしています。メンテナがスタイルの再利用を利用するためにより良いformatColumns関数を実装するまで、セルスタイルを再利用するformatCellRangeを使用する方が良いでしょう。

+1

私はメンテナーです。これを指摘してくれてありがとう。そのコードの部分は以前のプロジェクトから継承されましたが、私はチケットを発行し、提案したとおりに改善できるかどうかを確認します。再度、感謝します。 – CfSimplicity

+0

両方とも私はformatCellRangeに切り替えて、cfSimplicityからアップデートを探していただきありがとうございます。 – Lance

+1

これは@CfSimplicityによってライブラリ内ですべて修正されました。素晴らしいツール – Lance

関連する問題