Wprowadzenie

Poza tworzeniem i stylizowaniem skoroszytów, większość codziennego kodu obsługującego arkusze kalkulacyjne spędza czas na odczytywaniu i zapisywaniu wartości komórek, dołączaniu formuł oraz przenoszeniu danych między XLSX a CSV. Aspose.Cells FOSS dla Go obejmuje wszystkie trzy poprzez typy Workbook i Cells.

Biblioteka jest dostępna jako moduł Go pod adresem github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go i jest wydana na licencji MIT. Zainstaluj ją poleceniem go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 w dowolnym projekcie Go 1.24+.

Ten wpis przeprowadza przez odczyt/zapis komórek, formuły, konwersję CSV oraz usuwanie komórek.


Kluczowe funkcje

Utwórz zeszyt i zapisz komórki

NewWorkbook() zwraca skoroszyt z już jedną istniejącą arkuszem. Zapisuj wartości przy użyciu 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")

Odczytaj komórki ponownie

Cells().Get(ref) zwraca *Cell dla podanej referencji oraz błąd, jeśli referencja jest nieprawidłowa:

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)

Użyj Cells().All(), aby wyliczyć każdą wypełnioną komórkę w kolekcji, gdy potrzebujesz przeiterować cały arkusz.

Dodaj formułę

Cell.SetFormula zapisuje ciąg formuły w komórce. Najpierw utwórz komórkę za pomocą Set, a następnie dołącz formułę — formuła jest oceniana przez Excel lub LibreOffice przy otwarciu, a nie przez bibliotekę:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]

ws.Cells().Set("D2", nil)
cell, _ := ws.Cells().Get("D2")
cell.SetFormula("C2*2")

Konwersja CSV

Workbook.ExportToCSV zapisuje wskazany indeks arkusza do pliku CSV z wybranym przez Ciebie separatorem; Workbook.ImportFromCSV odczytuje plik CSV do nazwanego arkusza:

wb := cells_foss.NewWorkbook()

if err := wb.ExportToCSV(0, "inventory.csv", ','); err != nil {
	fmt.Printf("Error exporting: %v\n", err)
	return
}

Usuń komórkę

Cells().Remove(ref) czyści wartość komórki:

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)
}

Szybki start

Zainstaluj moduł:

go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26

Minimalny przepływ pracy — utwórz małą tabelę wartości i wyeksportuj ją do 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")
}

Obsługiwane formaty

FormatRozszerzenieOdczytZapis
XLSX.xlsx
CSV.csv

Skoroszyty XLSX są tworzone w pamięci przy użyciu NewWorkbook i zapisywane przy pomocy Workbook.Save. CSV jest dwukierunkowy za pomocą Workbook.ImportFromCSV i Workbook.ExportToCSV.


Open Source i licencjonowanie

Aspose.Cells FOSS dla Go jest udostępniony na licencji MIT. Nie ma ograniczeń użytkowania, opłat za uruchomienie ani wymagań rejestracji. Kod źródłowy jest dostępny pod adresem github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.

Użycie komercyjne jest dozwolone na warunkach licencji MIT. Jeśli Twój projekt wymaga wsparcia na poziomie przedsiębiorstwa, rozszerzonego wsparcia formatów lub integracji z chmurą, Aspose.Cells — Enterprise Product Family jest odrębną ofertą komercyjną.


Rozpoczęcie

Powiązane zasoby