Go 言語スプレッドシートライブラリ:Excelize 2.6.1 がリリースされました

Excelize は、純粋な Go で記述されたライブラリで、XLAM / XLSM / XLSX / XLTM / XLTX ファイルの読み書きを可能にする一連の関数を提供します。Microsoft Excel™ 2007 以降で生成されたスプレッドシートドキュメントの読み取りと書き込みをサポートします。 高い互換性により複雑なコンポーネントをサポートし、大量のデータを含むワークシートからデータを生成または読み取るためのストリーミング API を提供します。

場合によっては、既存の Excel ドキュメントコンテンツの読み込み、新しい Excel ドキュメントの作成、既存のドキュメント(テンプレート)に基づく新しい Excel ドキュメントの生成、Excel ドキュメントへのイメージの挿入、チャートなどの Excel ドキュメントをプログラムで操作する必要があります。 テーブルなどの要素。プラットフォーム間でこれらの操作を実装する必要がある場合があります。Excelize はこれらのニーズを容易に満たすことができます。

オープンソース

GitHub: github.com/xuri/excelize

Doc: xuri.me/excelize/ja

リリースノート

このバージョンでの最も注目すべき変更点は次のとおりです:

互換性のヒント

  • エクスポートされたタイプ TabColor の名前を TabColorRGB に変更
  • エクスポートされた定数 TotalColumnsMaxColumns に名前変更
  • エクスポートされた変数 ErrMaxFileNameLength の名前を ErrMaxFilePathLength に変更します
  • エクスポートされた変数 ErrWorkbookExt の名前を ErrWorkbookFileFormat に変更します
  • エクスポートされた変数 ErrEncrypt を削除します
  • ワークシート名を大文字と小文字を区別しない変更

新機能

  • 新しいサポート 34 の数式関数: CONVERT, COVARIANCE.S, DAVERAGE, DAYS360, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP, EDATE, EOMONTH, EUROCONVERT, GROWTH, HYPERLINK, MINVERSE, MMULT, NETWORKDAYS, NETWORKDAYS.INTL, PEARSON, RSQ, SKEW.P, SLOPE, STDEVPA, STEYX, TREND, WEEKNUM, WORKDAY, WORKDAY.INTL
  • コメントの削除をサポートする新しい関数 DeleteComment を追加, 関連する問題 #849
  • AddShape 関数は、シェイプへのマクロの割り当てをサポートするようになりました
  • 1900 または 1904 日付システムのサポートを追加します, 関連する問題 #1212
  • サポート更新セルハイパーリンクを追加, 関連する問題 #1217
  • AddPicture 関数で EMF、WMF、EMZ、および WMZ 形式の画像を挿入できるようになりました, 関連する問題 #1225
  • ワークブックを開くことができませんでした例外メッセージを明確にし、間違ったワークブックパスワードを受け取ったときのエラーメッセージ用に新しいエクスポートされた変数 ErrWorkbookPassword を作成します
  • 新しいエクスポートされた定数 MinFontSizeMinColumnsMaxCellStyles
  • 式計算エンジンの配列式サポートを追加
  • パスワードによるワークブック暗号化のサポート, 関連する問題 #199
  • RichTextRun サポートは、vertAlign 属性によって上スクリプトと下スクリプトを設定します
  • DeleteDataValidation 関数は、ワークシート内のすべてのデータ検証の削除をサポートします, 関連する問題 #1254
  • 式計算エンジンは、条件基準式でパーセンタイル記号をサポートします
  • 依存式計算をサポートする数式計算エンジン, 関連する問題 #1262
  • エクスポートオプション MaxCalcIterations を追加して、反復計算の最大反復数を指定します
  • 色変換タイプの列挙にエクスポートタイプ ColorMappingType を追加します
  • 列/行の削除と挿入時にテーブル範囲を調整するサポート
  • セットをサポートし、シートタブのカラーインデックス、テーマ、色合いを取得します, 関連する問題 #1283
  • 行イテレータに新しいエクスポート関数 GetRowOpts を追加して、行プロパティの取得をサポート, 関連する問題 #1296

互換性を向上させる

  • 無効な内部スタイルカウントとの互換性を改善します, 関連する問題 #1211
  • Google スプレッドシートとの互換性を向上, 関連する問題 #1244 と #1314
  • 行のセル値を設定すると、ストリーム ライターが nil 値の書き込みをスキップするようになりました, 関連する問題 #1299

問題の修正

  • ピボットテーブルのデータと行/列に同じフィールドが使用されている場合に生成されたファイルが破損する問題を修正, 関連する問題 #1203
  • セルタイプチェックの欠落が原因でリッチテキスト値が正しくない問題を修正, 関連する問題 #1213
  • 数値フォーマット時に結果をキャストする誤ったセルデータタイプを修正, 関連する問題 #1219
  • セルが 0 プレースホルダー数値形式スタイルの場合に読み取りセルが空になる問題を修正, 関連する問題 #1312 と #1313
  • 列と行のスタイル継承の問題で設定されたセル値を修正, 関連する問題 #1163
  • 空のシートビューワークシートにペインを追加するときのパニックを修正
  • 場合によっては、複数引数の式の計算の問題を修正します
  • ワークシートヘッダーフッターフィールドの順序が正しくないために生成されたファイルが破損する問題を修正, 関連する問題 #1257
  • 場合によっては、セル値の設定に失敗しました, 関連する問題 #1264
  • 設定時のパニックを修正するか、ビューオプションなしでシート上のシートビューオプションを取得する
  • ドキュメント コア プロパティで作成または変更された空の dcterms によって生成されたブックの破損を修正する
  • 新しいワークシートの作成後に欠落していたドキュメントプロパティを修正し, 関連する問題 #1298

パフォーマンスの最適化

  • セットシート行とマージセルのパフォーマンスを改善し、問題 #1129 を解決する際のパフォーマンスへの影響を修正します
  • 最適化式の計算パフォーマンス
  • メモリ使用量を削減し、AddComment 関数を高速化します, 関連する問題 #1310

その他

  • Go Modules はモジュールの更新に依存しています
  • 単体テストとドキュメントの更新, テスト ケースを go1.19 と互換性を持たせました
  • 簡体字中国語、英語、フランス語、ロシア語、日本語、韓国語、アラビア語、ドイツ語、スペイン語を含む多言語ドキュメントサイトの更新

ありがとうございました

Excelize へのすべての貢献者に感謝します。以下は、このバージョンでコードに貢献した貢献者のリストです。

  • @JDavidVR (David)
  • @sceneq
  • @Juneezee (Eng Zer Jun)
  • @MichealJl (jialei)
  • @ww1516123
  • @z-hua (z.hua)
  • @xdlrt (yeshu)
  • @eaglexiang (Eagle Xiang)
  • @MJacred
  • @ReganYue (Regan Yue)
  • @thomascharbonnel (Thomas Charbonnel)
  • @ee0703 (EE)
  • @NaturalGao (NaturalGao)
  • @Sangua633