Bekerja dengan Manajemen Spreadsheet

Bekerja dengan Manajemen Spreadsheet

Bekerja dengan Manajemen Spreadsheet

Panduan ini menjelaskan operasi sehari-hari dalam membuat dan memodifikasi spreadsheet: membuat workbook, menulis nilai sel, menambahkan rumus, membangun tabel, dan mengekspor ke CSV.


Buat Workbook dan Tulis Sel

NewWorkbook() mengembalikan sebuah workbook dengan satu lembar kerja 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("outputfiles/inventory.xlsx")

Baca Kembali Sel

Cells().Get(ref) mengembalikan *Cell untuk referensi bersama dengan error jika referensi 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 mengenumerasi setiap sel yang terisi dalam koleksi ketika Anda perlu mengiterasi seluruh lembar.

Tambah Formula

Cell.SetFormula menyimpan string formula pada 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")

Bangun Tabel di Atas Data

Setelah rentang data Anda terisi, Worksheet.AddTable mengubahnya menjadi tabel terstruktur dengan nama:

wb := cells_foss.NewWorkbook()
ws := wb.Worksheets[0]
ws.Cells().Set("A1", "Item")
ws.Cells().Set("A2", "Widget A")

tbl := ws.AddTable("A1:C2")
tbl.HasHeaderRow = true
tbl.StyleName = "TableStyleMedium6"
fmt.Printf("Created table %q covering %s\n", tbl.Name, tbl.Range)

Ekspor ke CSV

Workbook.ExportToCSV menulis indeks lembar kerja yang diberikan ke file CSV dengan pemisah pilihan Anda:

wb := cells_foss.NewWorkbook()

if err := wb.ExportToCSV(0, "outputfiles/inventory.csv", ','); err != nil {
	fmt.Fprintf(os.Stderr, "Error exporting: %v\n", err)
	os.Exit(1)
}

Sebaliknya, Workbook.ImportFromCSV(path, sheetName, delimiter), membaca file CSV ke dalam lembar kerja bernama.

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

Tips dan Praktik Terbaik

  • Buat sel dengan Set sebelum memanggil SetFormula padanya — SetFormula beroperasi pada *Cell yang ada, bukan string referensi mentah.
  • Saat mengekspor workbook yang memiliki beberapa lembar kerja, parameter indeks lembar ExportToCSV menentukan lembar kerja mana yang diekspor — indeks 0 adalah lembar kerja pertama.
  • Gunakan Cells().All() untuk iterasi baca berat pada seluruh lembar daripada memanggil Get dalam loop pada setiap referensi yang mungkin.

Masalah Umum

IssueCausePerbaiki
SetFormula tidak berpengaruhDipanggil pada referensi sel yang tidak pernah dibuat dengan Set terlebih dahuluPanggil ws.Cells().Set(ref, nil) untuk membuat sel, kemudian Get sel tersebut dan panggil SetFormula
Ekspor CSV kosong atau lembar yang salahIndeks lembar kerja yang salah diberikan ke ExportToCSVPastikan indeks cocok dengan posisi lembar kerja yang dimaksud dalam Workbook.Worksheets
Get mengembalikan kesalahanReferensi sel tidak ada dalam koleksiPastikan referensi telah diatur sebelumnya dengan Set, atau tangani kasus “tidak ditemukan” secara eksplisit

FAQ

Apakah Cells().Remove menghapus seluruh baris atau kolom?

Tidak — itu menghapus nilai satu sel pada referensi yang diberikan.

Apakah saya dapat membuat tabel di atas rentang yang sudah memiliki kolom formula?

Ya — AddTable beroperasi pada rentang sel seperti yang dituliskan; formula dalam rentang tersebut dipertahankan.


API Reference Ringkasan

Kelas / MetodeDeskripsi
Workbook.NewWorkbookBuat workbook baru dengan satu worksheet
Cells.Set / Get / Remove / AllTulis, baca, hapus, dan daftarkan sel
Cell.SetFormula / GetFormulaLampirkan dan baca string formula
Worksheet.AddTableBuat tabel terstruktur pada rentang sel
Workbook.ExportToCSV / ImportFromCSVKonversi antara XLSX dan CSV

Lihat Juga

 Bahasa Indonesia