Microsoft Excel XLSX スプレッドシートを処理するための Go API
MS Excel XLSX スプレッドシートの作成、書式設定、操作を Open Source Go API 経由で簡単にサポートする Pure Go ライブラリ。
Xlsx2Go は、Go 言語コマンドを使用して Microsoft Excel XLSX スプレッドシートを操作するための非常に簡単な方法を提供する、オープン ソースの純粋な go ライブラリです。ライブラリは非常に安定しており、迅速な操作を実行でき、Golang を使用して XLSX スプレッドシートを操作するための非常に信頼できる方法を提供します。わずか数行のコードで、スプレッドシートの作成、書式設定、および操作に関連するいくつかの操作を管理できます。
Xlsx2Go ライブラリには、新しいスプレッドシートの作成、既存のスプレッドシート ファイルを開く、変更、または削除する、ワークブックに新しい Excel シートを追加する、新しいセルを追加する、Excel セルをフォーマットするなど、Excel スプレッドシートの処理に関連するいくつかの重要な機能のサポートが含まれています。 、セル データの検証、条件付き書式のサポート、ワークシート セルのマージとマージ解除、埋め込み画像と写真、ワークシートのコピー、行または列のコピーなど。
Xlsx2Go の概要
プロジェクトに Xlsx2Go をインストールするための推奨される方法は、GitHub を使用することです。スムーズなインストールのために、次のコマンドを使用してください。
GitHub 経由で Xlsx2Go をインストールする
go get https://github.com/LucienLS/xlsx2go.git
Go API 経由で XLSX スプレッドシートを生成する
オープン ソース ライブラリ Xlsx2Go を使用すると、コンピューター プログラマーは Go コマンドを使用して独自のアプリ内で Excel XLSX スプレッドシートを生成できます。また、既存のスプレッドシートを簡単に開いたり、変更したり、削除したりすることもできます。新しい行や列をシートに挿入する、セルの既定値を設定する、セル範囲に書式を適用するなど、いくつかの重要な機能を使用することもできます。
行きます API による Excel LS ファイルの生成と変更
func main() {
// Create a new XLSX file
xl := xlsx.New()
// Open the XLSX file using file name
xl, err := xlsx.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
defer xl.Close()
// Open the XLSX file using file handler
zipFile, err := os.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
xl, err = xlsx.Open(zipFile)
if err != nil {
log.Fatal(err)
}
// Update the existing XLSX file
err = xl.Save()
if err != nil {
log.Fatal(err)
}
// Save the XLSX file under different name
err = xl.SaveAs("new_file.xlsx")
if err != nil {
log.Fatal(err)
}
}
Excel ワークシートでセルと行を管理する
無料ライブラリ Xlsx2Go には、Excel スプレッドシート内のセルおよび行管理に関連するいくつかの重要な機能が含まれています。新しい行とセルの挿入、行とセルの結合、Excel セルへのコメントの追加、行内のすべてのセルの取得、新しいセルの作成、セル範囲の選択、セル範囲へのスタイルの適用、ハイパーリンクの追加を簡単に行うことができますセルに時刻と日付を設定するなど、さまざまなことができます。
Insert列とRosがGo Appsのスプレッドシートに
func main() {
xl, err := xlsx.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
defer xl.Close()
sheet := xl.Sheet(0)
fmt.Println(sheet.Dimension())
fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
// Insert a new col
sheet.InsertCol(3)
fmt.Println(sheet.Dimension())
fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
fmt.Println(strings.Join(sheet.Col(4).Values(), ","))
// Insert a new row
fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
sheet.InsertRow(3)
fmt.Println(sheet.Dimension())
fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
fmt.Println(strings.Join(sheet.Row(10).Values(), ","))
}
ワークシートにロス、コラム、シートを追加
ユーザーまたは組織が類似した構造 (行と列) を持つ複数のワークシートを持っており、その情報を 1 つの大きなワークシートに結合したい場合があります。追加機能は、開発者が 1 つまたは複数のワークシートを既存のワークシートに追加したり、すべてを 1 つの新しいワークシートに結合したりするのに役立ちます。 Xlsx2Go ライブラリには、ワークシートの列、行、およびシートをプログラムで簡単に追加する機能が用意されています。
ゴーAPIを経由してロス、コラム、シートを差し込みます
func main() {
xl, err := xlsx.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
defer xl.Close()
sheet := xl.Sheet(0)
// To append a new col/row, simple request it - sheet will be auto expanded.
// E.g.: we have 14 cols, 28 rows.
fmt.Println(sheet.Dimension())
// Append 72 rows
sheet.Row(99)
fmt.Println(sheet.Dimension())
// Append 36 cols
sheet.Col(49)
fmt.Println(sheet.Dimension())
// Append 3 sheet
fmt.Println(strings.Join(xl.SheetNames(), ","))
xl.AddSheet("new sheet")
xl.AddSheet("new sheet")
xl.AddSheet("new sheet")
fmt.Println(strings.Join(xl.SheetNames(), ","))
}
スプレッドシートの管理 Go APIでフォーマット
無料ライブラリ Xlsx2Go を使用すると、ソフトウェア開発者は、Go コマンドを使用してスプレッドシートを書式設定するためのスタイルを追加できます。開発者は、新しいフォーマットを簡単に作成して、フォント スタイル、フォントの色、背景色などを設定できます。ワークシート全体だけでなく、セルの範囲にも書式を設定できます。行と列のデフォルトのフォーマットを簡単に設定することもできます。画像や写真をワークシートに簡単に追加できます
Go APIでスプレッドシートにフォーマットを適用
func main() {
xl, err := xlsx.Open("./test_files/example_simple.xlsx")
if err != nil {
log.Fatal(err)
}
defer xl.Close()
// Create a new format for a bold font with red color and yellow solid background
redBold := styles.New(
styles.Font.Bold,
styles.Font.Color("#ff0000"),
styles.Fill.Background("#ffff00"),
styles.Fill.Type(styles.PatternTypeSolid),
)
// Add formatting to xlsx
styleID := xl.AddStyles(redBold)
sheet := xl.Sheet(0)
// Set formatting for cell
sheet.CellByRef("N28").SetStyles(styleID)
// Set DEFAULT formatting for row. Affects cells not yet allocated in the row.
// In other words, this style applies to new cells.
sheet.Row(9).SetStyles(styleID)
// Set DEFAULT formatting for col. Affects cells not yet allocated in the col.
// In other words, this style applies to new cells.
sheet.Col(3).SetStyles(styleID)
//set formatting for all cells in range
sheet.RangeByRef("D10:H13").SetStyles(styleID)
}