บทนำ

นอกเหนือจากการสร้างและจัดรูปแบบเวิร์กบุ๊กแล้ว โค้ดสเปรดชีตในชีวิตประจำวันส่วนใหญ่ใช้เวลาในการอ่านและเขียนค่าของเซลล์, แนบสูตร, และย้ายข้อมูลระหว่าง XLSX และ CSV. Aspose.Cells FOSS สำหรับ Go ครอบคลุมทั้งสามอย่างผ่านประเภท Workbook และ Cells.

ไลบรารีนี้มีให้ใช้เป็นโมดูล Go ที่ github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go และเผยแพร่ภายใต้ไลเซนส์ MIT. ติดตั้งโดยใช้ go get github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go/v26 ในโครงการ Go 1.24+ ใดก็ได้.

โพสต์นี้จะอธิบายขั้นตอนการอ่าน/เขียนเซลล์, สูตร, การแปลงเป็น CSV, และการลบเซลล์.


คุณลักษณะสำคัญ

สร้างเวิร์กบุ๊กและเขียนเซลล์

NewWorkbook() คืนค่าเวิร์กบุ๊กที่มีชีตงานหนึ่งชีตพร้อมอยู่แล้ว. เขียนค่าด้วย 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")

อ่านเซลล์กลับ

Cells().Get(ref) คืนค่า *Cell สำหรับอ้างอิงพร้อมกับข้อผิดพลาดหากอ้างอิงไม่ถูกต้อง:

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)

ใช้ Cells().All() เพื่อวนรายการทุกเซลล์ที่มีข้อมูลในคอลเลกชันเมื่อคุณต้องการวนรอบทั้งหมดของชีต.

เพิ่มสูตร

Cell.SetFormula เก็บสตริงสูตรไว้ในเซลล์. สร้างเซลล์ก่อนด้วย Set แล้วจึงแนบสูตร — สูตรจะถูกประมวลผลโดย Excel หรือ LibreOffice เมื่อเปิดไฟล์, ไม่ได้โดยไลบรารี:

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

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

การแปลง CSV

Workbook.ExportToCSV เขียนชีตงานที่ระบุเป็นไฟล์ CSV ด้วยตัวคั่นที่คุณเลือก; Workbook.ImportFromCSV อ่านไฟล์ CSV เข้าไปในชีตงานที่ตั้งชื่อ:

wb := cells_foss.NewWorkbook()

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

ลบเซลล์

Cells().Remove(ref) ลบค่าของเซลล์:

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

เริ่มต้นอย่างรวดเร็ว

ติดตั้งโมดูล:

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

เวิร์กโฟลว์ขั้นพื้นฐาน — สร้างตารางค่าขนาดเล็กและส่งออกเป็น 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")
}

รูปแบบที่รองรับ

รูปแบบส่วนขยายอ่านเขียน
XLSX.xlsx
CSV.csv

สมุดงาน XLSX ถูกสร้างในหน่วยความจำด้วย NewWorkbook และเขียนด้วย Workbook.Save. CSV เป็นแบบสองทางผ่าน Workbook.ImportFromCSV และ Workbook.ExportToCSV.


โอเพ่นซอร์ส & การให้สิทธิ์

Aspose.Cells FOSS for Go เปิดตัวภายใต้ใบอนุญาต MIT. ไม่มีข้อจำกัดการใช้งาน, ไม่มีค่าธรรมเนียมการรันไทม์, และไม่มีข้อกำหนดการลงทะเบียน. โค้ดต้นฉบับพร้อมให้ดาวน์โหลดที่ github.com/aspose-cells-foss/Aspose.Cells-FOSS-for-Go.

การใช้ในเชิงพาณิชย์ได้รับอนุญาตตามเงื่อนไขของใบอนุญาต MIT. หากโครงการของคุณต้องการการสนับสนุนระดับองค์กร, ครอบคลุมรูปแบบเพิ่มเติม, หรือการรวมเข้ากับคลาวด์, Aspose.Cells — Enterprise Product Family เป็นข้อเสนอเชิงพาณิชย์แยกต่างหาก.


เริ่มต้นใช้งาน

แหล่งข้อมูลที่เกี่ยวข้อง