Inleiding
Naast het creëren en opmaken van werkboeken, besteedt de meeste dagelijkse spreadsheet-code haar tijd aan het lezen en schrijven van celwaarden, het toevoegen van formules, en het verplaatsen van gegevens tussen XLSX en CSV. Aspose.Cells FOSS voor Go dekt alle drie via de Workbook en Cells types.
De bibliotheek is beschikbaar als een Go-module op github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go en wordt uitgebracht onder de MIT-licentie. Installeer deze met go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 in elk Go1.24+ project.
Deze post loopt door cel lezen/schrijven, formules, CSV-conversie en het verwijderen van cellen.
Belangrijkste functies
Maak een werkboek en schrijf cellen
NewWorkbook() retourneert een werkboek met al één werkblad aanwezig. Schrijf waarden met 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")
Cellen teruglezen
Cells().Get(ref) retourneert de *Cell voor een referentie, samen met een fout als de referentie ongeldig is:
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)
Gebruik Cells().All() om elke gevulde cel in de collectie te enumereren wanneer je over het hele blad moet itereren.
Formule toevoegen
Cell.SetFormula slaat een formule-string op in een cel. Maak de cel eerst aan met Set, voeg daarna de formule toe — de formule wordt bij openen geëvalueerd door Excel of LibreOffice, niet door de bibliotheek:
wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("D2", nil)
cell, _ := ws.Cells().Get("D2")
cell.SetFormula("C2*2")
CSV-conversie
Workbook.ExportToCSV schrijft een opgegeven werkblad-index naar een CSV-bestand met het door jou gekozen scheidingsteken; Workbook.ImportFromCSV leest een CSV-bestand in een benoemd werkblad:
wb := cells_foss.NewWorkbook()
if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
fmt.Printf("Error exporting: %v\n", err)
return
}
Verwijder een cel
Cells().Remove(ref) wist de waarde van een cel:
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)
}
Snelstart
Installeer de module:
go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26Een minimale workflow — bouw een kleine tabel met waarden en exporteer deze naar 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")
}
Ondersteunde formaten
| Formaat | Extensie | Lezen | Schrijven |
|---|---|---|---|
| XLSX | .xlsx | — | ✓ |
| CSV | .csv | ✓ | ✓ |
XLSX-werkboeken worden in het geheugen opgebouwd met NewWorkbook en weggeschreven met Workbook.Save. CSV is bidirectioneel via Workbook.ImportFromCSV en Workbook.ExportToCSV.
Open source & licenties
Aspose.Cells FOSS voor Go is uitgebracht onder de MIT-licentie. Er zijn geen gebruiksbeperkingen, geen runtime-kosten en geen registratievereisten. De broncode is beschikbaar op github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.
Commercieel gebruik is toegestaan onder de voorwaarden van de MIT-licentie. Als uw project enterprise-ondersteuning, uitgebreide formaatondersteuning of cloudintegratie vereist, is de Aspose.Cells — Enterprise Product Family een apart commercieel aanbod.