Go 言語スプレッドシートライブラリ:Excelize 2.5.0 がリリースされました
Excelize は、純粋な Go で記述されたライブラリで、XLSX / XLSM / XLTM ファイルの読み書きを可能にする一連の関数を提供します。Microsoft Excel™ 2007 以降で生成されたスプレッドシートドキュメントの読み取りと書き込みをサポートします。 高い互換性により複雑なコンポーネントをサポートし、大量のデータを含むワークシートからデータを生成または読み取るためのストリーミング API を提供します。
場合によっては、既存の Excel ドキュメントコンテンツの読み込み、新しい Excel ドキュメントの作成、既存のドキュメント(テンプレート)に基づく新しい Excel ドキュメントの生成、Excel ドキュメントへのイメージの挿入、チャートなどの Excel ドキュメントをプログラムで操作する必要があります。 テーブルなどの要素。プラットフォーム間でこれらの操作を実装する必要がある場合があります。Excelize はこれらのニーズを容易に満たすことができます。
オープンソース
GitHub: github.com/xuri/excelize
Doc: xuri.me/excelize/ja
発売日: 2022年1月3日
GitHub Release: https://github.com/xuri/excelize/releases/tag/v2.5.0
リリースノート
このバージョンでの最も注目すべき変更点は次のとおりです:
互換性のヒント
スプレッドシートと行のイテレータを閉じる必要があります。ユーザーは、行のイテレータを使用した後にストリームを閉じ、既存のスプレッドシートを開いた後にスプレッドシートを閉じる必要があります
File の実装として ReadZipReader を変更し、指定されたオプションでスプレッドシートを抽出し、メモリ内での抽出またはファイルシステムへのタッチをサポートします
不要なエクスポートされた変数 XMLHeader を削除します。代わりに encoding/xml パッケージの xml.Header を使用できます
未使用のエクスポートされたエラー変数 ErrToExcelTime を削除します
新機能
新しいAPI:行のセットスタイルの SetRowStyle サポート, 関連する問題 #990
新しいAPI:セルのデータ型を取得するための GetCellTypeサポート, 関連する問題 #417 と #520
新しいAPI:ドキュメントアプリケーションのプロパティを設定および取得するための SetAppProps および GetAppProps のサポート, 関連する問題 #1095
GetCellValue, GetRows, GetCols, Rows と Cols は、生の値で読み取りセルを指定することをサポートします, 関連する問題 #621
新しいサポート 95 の数式関数: ACCRINT, ACCRINTM, ADDRESS, AMORDEGRC, AMORLINC, AVEDEV, AVERAGEIF, CHIDIST, CONFIDENCE, CONFIDENCE.NORM, COUNTIF, COUNTIFS, COUPDAYBS, COUPDAYS, COUPDAYSNC, COUPNCD, COUPNUM, COUPPCD, DATEVALUE, DAY, DAYS, DELTA, DEVSQ, DISC, DURATION, ERF, ERF.PRECISE, ERFC, ERFC.PRECISE, GEOMEAN, GESTEP, IFNA, IFS, INDEX, INTRATE, ISFORMULA, ISLOGICAL, ISREF, ISOWEEKNUM, MATCH, MAXA, MAXIFS, MDURATION, MINIFS, MINUTE, MONTH, ODDFPRICE, PERCENTILE.EXC, PERCENTRANK.EXC, PERCENTRANK.INC, PERCENTRANK, PRICE, PRICEDISC, PRICEMAT, PV, QUARTILE.EXC, RANK, RANK.EQ, RATE, RECEIVED, RRI, SHEETS, SLN, STANDARDIZE, STDEV.P, STDEVP, SWITCH, SYD, TBILLEQ, TBILLPRICE, TBILLYIELD, TEXTJOIN, TIME, TRANSPOSE, TRIMMEAN, VALUE, VAR, VAR.S, VARA, VARPA, VDB, WEEKDAY, WEIBULL, WEIBULL.DIST, XIRR, XLOOKUP, XNPV, XOR, YEAR, YEARFRAC, YIELD, YIELDDISC, YIELDMAT, Z.TEST, ZTEST, 関連する問題 #1002
数式計算エンジンは、IF 数式のネストされた計算をサポートします, 関連する問題 #987
数式計算エンジンのサポートは、共有数式を取得します, 関連する問題 #844
数式計算エンジンはテキスト比較をサポートします, 関連する問題 #998
サポートは、データ検証範囲で数式を指定します, 関連する問題 #1012
開くファイルオプションで指定された解凍サイズ制限をサポートし、zip 爆弾の脆弱性攻撃を回避します
SetCellFormula は共有数式の設定をサポートするようになりました
UpdateLinkedValue はマクロシートをスキップします, 関連する問題 #1014
内部関係 ID の計算が正しくないために、AddPicture が重複画像を作成する場合がある問題を修正, 関連する問題 #1017
AddShape は、形状を追加するための線幅の設定をサポートします, 関連する問題 #262
新しいオプション UnzipXMLSizeLimit が追加され、ワークシートと共有文字列テーブルを解凍する際のメモリ制限をバイト単位で指定するためのサポート
新しいスタイルを作成するときに無効なカスタム数値形式を指定すると、エラーが返されます, 関連する問題 #1028
ストリームライターで行スタイルの設定をサポートするようになりました
ストリームライターは、時間タイプのセルの時間数値形式を作成します, 関連する問題 #1107
ピボットテーブルのコンパクトとアウトラインの指定をサポートするようになりました, 関連する問題 #1029
ストリームリーダーでの現在の行/列と合計行/列の取得をサポート, 関連する問題 #1054
セル値を設定するときにタイムゾーンの場所をサポートするようになりました, 関連する問題 #1069
7つのエラーをエクスポートして、ユーザーがさまざまなタイプのエラーに対して異なる行動をとれるようにします
互換性を向上させる
r="0" 属性を持つ行要素との互換性を改善します
XML 制御文字を保持する
スタイル設定と Apple Numbers との互換性を改善します, 関連する問題 #1059
セットヘッダーフッターでマルチバイト言語をサポートする, 関連する問題 #1061
セル値を設定するときに、水平タブ文字を保持します, 関連する問題 #1108
問題の修正
データ検証の削除に失敗した問題を修正しました, 関連する問題 #979
修正セットデータ検証ドロップリストが失敗する場合がありました, 関連する問題 #986
数式計算エンジン LOOKUP が配列形式を正しく処理しない問題を修正, 関連する問題 #994
数式計算エンジン LOOKUP が完全に一致するものしか見つけられない問題を修正, 関連する問題 #997
誤って計算された数式のパーセンテージを修正, 関連する問題 #993
場合によっては、誤ったセル読み取りによって引き起こされるパニックを修正します
条件付きフォーマットの下部Nが機能しない問題を修正
時間解析の精度の問題を修正, 関連する問題 #1026 と #1030
組み込みの科学数値形式の修正に失敗しました, 関連する問題 #1027
場合によっては小さなフロート解析エラーを修正, 関連する問題 #1031
ワークシートの削除が失敗する場合がある修正
組み込みの時刻番号形式の解析エラーを修正, 関連する問題 #1060
NewStyle が誤ったスタイルIDを返す場合がある問題を修正
一部のコーナーケースでの行/列の挿入/削除後の結合セル範囲エラーを修正
パフォーマンスの最適化
マージセルの時間コストがスピードアップし、時間コストが 90% 以上減少
ストリーミング読み取りのパフォーマンスを向上させ、内部XMLが大きい場合に共有文字列テーブルをシステム一時ファイルに解凍し、メモリ使用量を約60%削減し, 関連する問題 #1096
ワークシートリストの読み取り速度が向上
列スタイルをマージしてスプレッドシートのサイズを縮小する, 関連する問題 #1057
その他
Go Modules はモジュールの更新に依存しています
単体テストとドキュメントの更新
簡体字中国語、英語、フランス語、ロシア語、日本語、韓国語、アラビア語、ドイツ語、スペイン語を含む多言語ドキュメントサイトの更新
この記事が気に入ったらサポートをしてみませんか?