Truy cập API để xử lý bảng tính Microsoft Excel XLSX

Thư viện Pure Go hỗ trợ tạo, định dạng và thao tác Bảng tính MS Excel XLSX một cách dễ dàng thông qua API Go nguồn mở.

Xlsx2Go là thư viện go thuần túy mã nguồn mở cung cấp một cách rất dễ dàng để làm việc với bảng tính Microsoft Excel XLSX bằng cách sử dụng các lệnh ngôn ngữ Go. Thư viện rất ổn định và có thể thực hiện các hoạt động nhanh chóng và cung cấp một cách rất đáng tin cậy để làm việc với bảng tính XLSX bằng cách sử dụng Golang. Chỉ với một vài dòng mã, bạn có thể quản lý một số hoạt động liên quan đến việc tạo, định dạng và thao tác bảng tính.

Thư viện Xlsx2Go đã hỗ trợ một số tính năng quan trọng liên quan đến xử lý bảng tính Excel, chẳng hạn như tạo bảng tính mới, mở, sửa đổi hoặc xóa tệp bảng tính hiện có, thêm trang tính Excel mới vào sổ làm việc, thêm ô mới, định dạng ô Excel , xác thực dữ liệu ô, hỗ trợ định dạng có điều kiện, ô trang tính Hợp nhất và hủy hợp nhất, nhúng Hình ảnh và ảnh, sao chép trang tính, sao chép hàng hoặc cột, v.v.

Previous Next

Bắt đầu với Xlsx2Go

Cách được khuyến nghị để cài đặt Xlsx2Go vào dự án của bạn là sử dụng GitHub . Vui lòng sử dụng lệnh sau để cài đặt suôn sẻ.

Cài đặt Xlsx2Go qua GitHub

go get https://github.com/LucienLS/xlsx2go.git

Tạo Bảng tính XLSX qua API Go

Thư viện nguồn mở Xlsx2Go cho phép các lập trình viên máy tính tạo bảng tính Excel XLSX bên trong ứng dụng của riêng họ bằng cách sử dụng lệnh Go. Bạn cũng có thể dễ dàng mở, sửa đổi hoặc xóa một bảng tính hiện có. Bạn cũng có thể sử dụng một số tính năng quan trọng như chèn hàng và cột mới vào trang tính, đặt giá trị mặc định của ô, áp dụng định dạng cho một dải ô, v.v.

Tạo ra và sửa đổi file Excel LS qua Go API

func main() {
	// Create a new XLSX file
	xl := xlsx.New()
	// Open the XLSX file using file name
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Open the XLSX file using file handler
	zipFile, err := os.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	xl, err = xlsx.Open(zipFile)
	if err != nil {
		log.Fatal(err)
	}
	// Update the existing XLSX file
	err = xl.Save()
	if err != nil {
		log.Fatal(err)
	}
	// Save the XLSX file under different name
	err = xl.SaveAs("new_file.xlsx")
	if err != nil {
		log.Fatal(err)
	}
}

Quản lý ô và hàng trong trang tính Excel

Thư viện miễn phí Xlsx2Go đã bao gồm một số tính năng quan trọng liên quan đến quản lý ô và hàng bên trong bảng tính Excel. Bạn có thể dễ dàng chèn các hàng và ô mới, hợp nhất các hàng và ô, thêm nhận xét vào một ô excel, lấy tất cả các ô trong một hàng, tạo ô mới, chọn một dải ô, áp dụng kiểu cho một dải ô, thêm siêu liên kết vào một ô, đặt ngày và giờ trong một ô, v.v.

Chèn cột và Ross để mở rộng chương trình Go

func main() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	sheet := xl.Sheet(0)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
	// Insert a new col
	sheet.InsertCol(3)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Col(3).Values(), ","))
	fmt.Println(strings.Join(sheet.Col(4).Values(), ","))
	// Insert a new row
	fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
	sheet.InsertRow(3)
	fmt.Println(sheet.Dimension())
	fmt.Println(strings.Join(sheet.Row(9).Values(), ","))
	fmt.Println(strings.Join(sheet.Row(10).Values(), ","))
}

Đánh dấu Ross, cột, và tấm bảng trong bảng tính

Đôi khi một người dùng hoặc một tổ chức có nhiều trang tính có cấu trúc tương tự (hàng và cột) và anh ta muốn hợp nhất thông tin thành một trang tính lớn. Tính năng nối thêm giúp các nhà phát triển thêm một trang tính hoặc nhiều trang tính vào một trang tính hiện có hoặc kết hợp tất cả thành một trang tính mới. Thư viện Xlsx2Go đã cung cấp chức năng để nối các cột, hàng cũng như trang tính theo chương trình một cách dễ dàng.

Đánh dấu Ross, cột buồm và tấm trải qua Go API

func main() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	sheet := xl.Sheet(0)
	// To append a new col/row, simple request it - sheet will be auto expanded.
	// E.g.: we have 14 cols, 28 rows.
	fmt.Println(sheet.Dimension())
	// Append 72 rows
	sheet.Row(99)
	fmt.Println(sheet.Dimension())
	// Append 36 cols
	sheet.Col(49)
	fmt.Println(sheet.Dimension())
	// Append 3 sheet
	fmt.Println(strings.Join(xl.SheetNames(), ","))
	xl.AddSheet("new sheet")
	xl.AddSheet("new sheet")
	xl.AddSheet("new sheet")
	fmt.Println(strings.Join(xl.SheetNames(), ","))
}

Quản lý bảng thông tin Định dạng qua Go API

Thư viện miễn phí Xlsx2Go cho phép các nhà phát triển phần mềm thêm các kiểu định dạng bảng tính của họ bằng lệnh Go. Các nhà phát triển có thể dễ dàng tạo một định dạng mới để đặt kiểu phông chữ, màu phông chữ, màu nền và hơn thế nữa. Bạn có thể đặt định dạng cho một phạm vi ô cũng như toàn bộ trang tính. Bạn cũng có thể đặt định dạng mặc định cho hàng cũng như cột một cách dễ dàng. Bạn có thể dễ dàng thêm hình ảnh và ảnh vào trang tính

Áp dụng định dạng chuyển sang bảng thông qua Đi API

func main() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Create a new format for a bold font with red color and yellow solid background
	redBold := styles.New(
		styles.Font.Bold,
		styles.Font.Color("#ff0000"),
		styles.Fill.Background("#ffff00"),
		styles.Fill.Type(styles.PatternTypeSolid),
	)
	// Add formatting to xlsx
	styleID := xl.AddStyles(redBold)
	sheet := xl.Sheet(0)
	// Set formatting for cell
	sheet.CellByRef("N28").SetStyles(styleID)
	// Set DEFAULT formatting for row. Affects cells not yet allocated in the row.
	// In other words, this style applies to new cells.
	sheet.Row(9).SetStyles(styleID)
	// Set DEFAULT formatting for col. Affects cells not yet allocated in the col.
	// In other words, this style applies to new cells.
	sheet.Col(3).SetStyles(styleID)
	//set formatting for all cells in range
	sheet.RangeByRef("D10:H13").SetStyles(styleID)
}
 Tiếng Việt