Accesați Bibliotecă pentru a lucra cu documente Excel XLSX

Open Source Go API care acceptă generarea de foi de calcul Microsoft Excel XLSX, gestionează foile de lucru, gestionează Rândurile și Coloanele din Foile de lucru prin API-ul Go.

Biblioteca xlsx oferă o modalitate foarte rapidă și fiabilă de a lucra cu fișiere Microsoft Excel folosind Go. Biblioteca ajută la simplificarea citirii și scrierii formatului de fișier Excel XLSX. Formatul de fișier XLSX a fost introdus în 2007 și folosește standardul Open XML adaptat de Microsoft încă din 2000. Biblioteca este open source și disponibilă sub licența BSD-3-Clause.

Biblioteca xlsx open source a inclus suport pentru mai multe caracteristici importante legate de crearea și manipularea documentelor Microsoft Excel, cum ar fi crearea unui nou fișier XlSX, deschiderea fișierelor Excel existente, accesarea foilor de lucru, adăugarea de noi foi de lucru, gestionarea rândurilor și coloanelor în interiorul unei foi de lucru, adăugarea celule, obținerea celulelor dintr-un rând, formatarea celulelor, aplicarea stilurilor celulelor, suport pentru intervale denumite și multe altele.

Previous Next

Noțiuni introductive cu Xlsx2Go

Modul recomandat de a instala xlsx este din GitHub. Vă rugăm să utilizați următoarea comandă pentru o instalare fără probleme.

Instalați xlsx prin GitHub

go get https://github.com/tealeg/xlsx.git

Crearea de NOI fișiere XLSX prin Go Library

Biblioteca Open Source xlsx oferă dezvoltatorilor de software capacitatea de a crea un nou fișier XLSX gol de la zero folosind câteva comenzi Go. Dezvoltatorii pot folosi noua funcție NewFile() pentru a genera un fișier nou. Odată creat, puteți adăuga cu ușurință conținut nou la registrul de lucru. Puteți adăuga cu ușurință o foaie nouă sau puteți adăuga o foaie existentă. Odată creată și lucrarea este finalizată, vă rugăm să salvați lucrarea, se recomandă Închideți()foaia.

Creați și editați fișierul Excel LS prin Go API

// Demonstrates how to create/open/save XLSX files
func Example_files() {
	// 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)
	}
}

Accesați și citiți fișierele XLSX

Biblioteca Open Source xlsx a oferit un set de funcții care permit dezvoltatorilor să acceseze și să citească un fișier de foaie de calcul XLSX existent în propriile aplicații Go. De asemenea, puteți accesa cu ușurință foile unui registru de lucru cu doar câteva comenzi Go. De asemenea, dezvoltatorii pot accesa cu ușurință o anumită foaie la alegere.

Accesați fișierul Excel prin Go Library

func Example_access() {
	xl, err := xlsx.Open("./test_files/example_simple.xlsx")
	if err != nil {
		log.Fatal(err)
	}
	defer xl.Close()
	// Get sheet by 0-based index
	sheet := xl.Sheet(0)
	// Get cell by 0-based indexes
	cell := sheet.Cell(13, 27)
	fmt.Println(cell.Value())
	// Get cell by reference
	cell = sheet.CellByRef("N28")
	fmt.Println(cell.Value())
	// Get row by 0-based index
	row := sheet.Row(9)
	fmt.Println(strings.Join(row.Values(), ","))
	// Get cell of row at 0-based col index
	cell = row.Cell(0)
	fmt.Println(cell.Value())
	// Get col by 0-based index
	col := sheet.Col(3)
	fmt.Println(strings.Join(col.Values(), ","))
	// Get cell of col at 0-based row index
	cell = col.Cell(0)
	fmt.Println(cell.Value())
	// Get range by references
	area := sheet.RangeByRef("D10:H13")
	fmt.Println(strings.Join(area.Values(), ","))
}

Gestionarea rândurilor și coloanelor în foile de lucru

Celulele sunt coloana vertebrală a unei foi de lucru Excel. O foaie de lucru este formată din celule organizate în rânduri și coloane. Biblioteca xlsx oferă dezvoltatorilor de software o gamă largă de funcții pentru gestionarea rândurilor și coloanelor din aplicațiile lor folosind comenzile Go. Acceptă adăugarea de noi rânduri și coloane, iterarea rândurilor și coloanelor, ștergerea rândurilor și coloanelor nedorite, adăugarea de noi celule într-un rând, obținerea de valoare dintr-o celulă, aplicarea formatării unei game de celule și multe altele.

Inserați Coloane Ross într-o foaie de lucru Excel prin Go Library

func Example_insert() {
	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(), ","))
}

Aplicați stiluri și formatare

Biblioteca gratuită xlsx a oferit câteva funcții importante care permit dezvoltatorilor de software să aplice cu ușurință formatarea și stilurile foilor de calcul. Stilurile oferă aspectul și decorarea celulelor, cum ar fi fontul, culoarea, alinierea conținutului, dimensiunea fontului, umplerea etc. Puteți aplica cu ușurință stilul unei game de celule cu doar câteva linii de cod. Trebuie doar să creați un stil o dată și să-l refolosiți atunci când este necesar. De asemenea, puteți aplica formate de număr și dată pentru celule.

Aplicați Stiluri și Formatare în Excel File via Go Library

gfunc Example_formatting() {
	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)
}
 Română