Go API para manejar hojas de cálculo Microsoft Excel XLSX
Pure Go Library que admite la creación, el formateo y la manipulación de hojas de cálculo MS Excel XLSX con facilidad a través de Open Source Go API.
Xlsx2Go es una biblioteca Go pura de código abierto que proporciona una manera muy fácil de trabajar con hojas de cálculo XLSX de Microsoft Excel usando comandos de lenguaje Go. La biblioteca es muy estable y puede realizar operaciones rápidas y brinda una forma muy confiable de trabajar con la hoja de cálculo XLSX usando Golang. Con solo un par de líneas de código, puede administrar varias operaciones relacionadas con la creación, el formato y la manipulación de hojas de cálculo.
La biblioteca Xlsx2Go ha incluido soporte para varias funciones importantes relacionadas con el procesamiento de hojas de cálculo de Excel, como crear una nueva hoja de cálculo, abrir, modificar o eliminar un archivo de hoja de cálculo existente, agregar una nueva hoja de Excel a un libro de trabajo, agregar nuevas celdas, formatear celdas de Excel , validar datos de celdas, soporte de formato condicional, fusionar y desfusionar celdas de hojas de trabajo, imágenes y fotos incrustadas, copiar hojas de trabajo, copiar filas o columnas, y mucho más.
Primeros pasos con Xlsx2Go
La forma recomendada de instalar Xlsx2Go en su proyecto es mediante GitHub. Utilice el siguiente comando para una instalación sin problemas.
Instale Xlsx2Go a través de GitHub
go get https://github.com/LucienLS/xlsx2go.git
Generar hoja de cálculo XLSX a través de Go API
La biblioteca de código abierto Xlsx2Go permite a los programadores de computadoras generar una hoja de cálculo Excel XLSX dentro de sus propias aplicaciones usando los comandos Go. También puede abrir, modificar o eliminar fácilmente una hoja de cálculo existente. También puede usar varias funciones importantes, como insertar nuevas filas y columnas en una hoja, establecer el valor predeterminado de una celda, aplicar formato a un rango de celdas y más.
Generar Modificar el archivo Excel LS a través de 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)
}
}
Administrar celdas y filas en la hoja de cálculo de Excel
La biblioteca gratuita Xlsx2Go ha incluido varias características importantes relacionadas con la gestión de celdas y filas dentro de las hojas de cálculo de Excel. Puede insertar fácilmente nuevas filas y celdas, combinar filas y celdas, agregar un comentario a una celda de Excel, obtener todas las celdas en una fila, crear una nueva celda, seleccionar un rango de celdas, aplicar estilos a un rango de celdas, agregar un hipervínculo a una celda, configurar la hora y la fecha en una celda, y mucho más.
Insertar Columnas y Ross para difundir hojas en las aplicaciones de 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(), ","))
}
Append Ross, Columnas, hojas en una hoja de trabajo
A veces, un usuario o una organización tiene varias hojas de trabajo con estructuras similares (filas y columnas) y quiere fusionar la información en una sola hoja de trabajo grande. La función de agregar ayuda a los desarrolladores a agregar una hoja de trabajo o varias hojas de trabajo a una existente, o combinarlas todas en una nueva hoja de trabajo. La biblioteca Xlsx2Go ha proporcionado funcionalidad para agregar fácilmente columnas, filas y hojas de hojas de cálculo mediante programación.
Append Ross, Columnas y sábanas vía 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(), ","))
}
Manage Spreadsheet Formatting via Go API
La biblioteca gratuita Xlsx2Go permite a los desarrolladores de software agregar estilos para dar formato a sus hojas de cálculo mediante comandos Go. Los desarrolladores pueden crear fácilmente un nuevo formato para establecer estilos de fuente, color de fuente, color de fondo y mucho más. Puede configurar el formato para un rango de celdas, así como para toda la hoja de cálculo. También puede establecer el formato predeterminado para la fila y una columna con facilidad. Puede agregar fácilmente imágenes y fotos a una hoja de trabajo
Aplicar formato a hoja de cálculo vía Go 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)
}