Pendahuluan
Selain membuat dan menata workbook, sebagian besar kode spreadsheet sehari-hari menghabiskan waktunya untuk membaca dan menulis nilai sel, menambahkan formula, dan memindahkan data antara XLSX dan CSV. Aspose.Cells FOSS untuk Go mencakup ketiganya melalui tipe Workbook dan Cells.
Perpustakaan ini tersedia sebagai modul Go di github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go dan dirilis di bawah lisensi MIT. Instal dengan go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 ke proyek Go 1.24+ mana pun.
Posting ini menjelaskan cara membaca/menulis sel, rumus, konversi CSV, dan penghapusan sel.
Fitur Utama
Buat Workbook dan Tulis Sel
NewWorkbook() mengembalikan workbook dengan satu worksheet yang sudah ada. Tulis nilai dengan Cells().Set(ref, value):
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Item")
ws.Cells().Set("B1", "Category")
ws.Cells().Set("C1", "Price")
ws.Cells().Set("A2", "Widget A")
ws.Cells().Set("B2", "Gadgets")
ws.Cells().Set("C2", 12.99)
wb.Save("inventory.xlsx")
Baca Sel Kembali
Cells().Get(ref) mengembalikan *Cell untuk sebuah referensi beserta error jika referensinya tidak valid:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("C2", 12.99)
cell, err := ws.Cells().Get("C2")
if err != nil {
fmt.Printf("Error: %v\n", err)
return
}
fmt.Printf("C2 = %v\n", cell.Value)
Gunakan Cells().All() untuk menelusuri setiap sel yang terisi dalam koleksi ketika Anda perlu mengiterasi seluruh lembar.
Tambahkan Rumus
Cell.SetFormula menyimpan string formula pada sebuah sel. Buat sel terlebih dahulu dengan Set, lalu lampirkan formula — formula dievaluasi oleh Excel atau LibreOffice saat dibuka, bukan oleh perpustakaan:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("D2", nil)
cell, _ := ws.Cells().Get("D2")
cell.SetFormula("C2*2")
Konversi CSV
Workbook.ExportToCSV menulis indeks worksheet tertentu ke file CSV dengan delimiter pilihan Anda; Workbook.ImportFromCSV membaca file CSV ke dalam worksheet yang diberi nama:
wb := cells_foss.NewWorkbook()
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
Hapus Sel
Cells().Remove(ref) menghapus nilai sel:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A2", "Widget A")
if err := ws.Cells().Remove("A2"); err != nil {
fmt.Printf("Error removing cell: %v\n", err)
}
Panduan Cepat
Pasang modul:
go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26Alur kerja minimal — buat tabel kecil berisi nilai dan ekspor ke CSV:
package main
import (
"fmt"
cells_foss "github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26/aspose/cells_foss"
)
func main() {
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Item")
ws.Cells().Set("B1", "Price")
ws.Cells().Set("A2", "Widget A")
ws.Cells().Set("B2", 12.99)
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
fmt.Println("Exported inventory.csv")
}
Format yang Didukung
| Format | Ekstensi | Baca | Tulis |
|---|---|---|---|
| XLSX | .xlsx | — | ✓ |
| CSV | .csv | ✓ | ✓ |
Buku kerja XLSX dibangun di memori dengan NewWorkbook dan ditulis dengan Workbook.Save. CSV bersifat dua arah melalui Workbook.ImportFromCSV dan Workbook.ExportToCSV.
Sumber Terbuka & Lisensi
Aspose.Cells FOSS untuk Go dirilis di bawah lisensi MIT. Tidak ada pembatasan penggunaan, tidak ada biaya runtime, dan tidak ada persyaratan pendaftaran. Kode sumber tersedia di github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.
Penggunaan komersial diizinkan menurut ketentuan lisensi MIT. Jika proyek Anda memerlukan dukungan tingkat perusahaan, cakupan format yang diperluas, atau integrasi cloud, Aspose.Cells — Enterprise Product Family merupakan penawaran komersial terpisah.