Gå til biblioteket for å arbeide med Excel XLSX-dokumenter
Open Source Go API som støtter Microsoft Excel XLSX-regnearkgenerering, administrer regneark, håndterer rader og kolonner i regneark via Go API.
xlsx-biblioteket gir en veldig rask og pålitelig måte å jobbe med Microsoft Excel-filer ved å bruke Go. Biblioteket bidrar til å forenkle lesing og skriving av Excel XLSX-filformat. XLSX-filformatet ble introdusert i 2007 og bruker Open XML-standarden tilpasset av Microsoft tilbake i 2000. Biblioteket er åpen kildekode og tilgjengelig under BSD-3-Clause-lisensen.
Xlsx-biblioteket med åpen kildekode har inkludert støtte for flere viktige funksjoner knyttet til opprettelse og manipulering av Microsoft Excel-dokumenter, som å lage en ny XlSX-fil, åpne eksisterende Excel-filer, få tilgang til regnearkene dine, legge til nye regneark, administrere rader og kolonner i et regneark, legge til celler, hente celler fra en rad, formatere celler, bruke stiler på celler, støtte for navngitte områder og mye mer.
Komme i gang med Xlsx2Go
Den anbefalte måten å installere xlsx på er fra GitHub. Bruk følgende kommando for jevn installasjon.
Installer xlsx via GitHub
go get https://github.com/tealeg/xlsx.git
Opprette NYE XLSX-filer via Go Library
Open source xlsx-biblioteket gir programvareutviklere muligheten til å lage en ny tom XLSX-fil fra bunnen av ved å bruke et par Go-kommandoer. Utviklerne kan bruke den nye NewFile()-funksjonen til å generere en ny fil. Når den er opprettet, kan du enkelt legge til nytt innhold i arbeidsboken. Du kan enkelt legge til et nytt ark eller legge til et eksisterende ark. Når det er opprettet og arbeidet er fullført, vennligst lagre arbeidet ditt, det anbefales Close() the sheet.
Opprett og rediger Excel XLSX-fil via 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)
}
}
Få tilgang til og les XLSX-filer
Open source xlsx-biblioteket har gitt et sett med funksjoner som lar utviklere åpne og lese en eksisterende XLSX-regnearkfil i sine egne Go-applikasjoner. Du kan også enkelt få tilgang til ark i en arbeidsbok med bare et par Go-kommandoer. Utviklere kan også enkelt få tilgang til et bestemt ark etter eget valg.
Få tilgang til og les Excel-fil via 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(), ","))
}
Håndtere rader og kolonner i regneark
Celler er ryggraden i et Excel-regneark. Et regneark består av celler organisert i rader og kolonner. xlsx-biblioteket gir programvareutviklere et bredt spekter av funksjoner for håndtering av rader og kolonner i appene deres ved å bruke Go-kommandoer. Den støtter å legge til nye rader og kolonner, gjenta rader og kolonner, slette uønskede rader og kolonner, legge til nye celler i en rad, hente verdi fra en celle, bruke formatering på en rekke celler og mye mer.
Sett inn kolonner og rader i et Excel-regneark via 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(), ","))
}
Bruk stiler og formatering
Gratisbiblioteket xlsx-biblioteket har gitt flere viktige funksjoner som gjør det mulig for programvareutviklere å bruke formatering og stiler på regnearkene sine med letthet. Stiler gir utforming og dekorasjon av celler som font, farge, innholdsjustering, skriftstørrelse, fyll osv. Du kan enkelt bruke stilen på en rekke celler med bare et par linjer med kode. Du trenger bare å lage en stil én gang og bruke den på nytt ved behov. Du kan også bruke tall- og datoformater for celler.
Bruk stiler og formatering på Excel-fil 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)
}