API Go для обработки электронных таблиц Microsoft Excel XLSX
Библиотека Pure Go, поддерживающая создание, форматирование и манипулирование электронными таблицами MS Excel XLSX с легкостью через API Go с открытым исходным кодом.
Xlsx2Go — это чистая библиотека Go с открытым исходным кодом, которая обеспечивает очень простой способ работы с электронными таблицами Microsoft Excel XLSX с использованием команд языка Go. Библиотека очень стабильна, может выполнять быстрые операции и обеспечивает очень надежный способ работы с электронными таблицами XLSX с использованием Golang. С помощью всего пары строк кода вы можете управлять несколькими операциями, связанными с созданием, форматированием и манипулированием электронными таблицами.
Библиотека Xlsx2Go включает поддержку нескольких важных функций, связанных с обработкой электронных таблиц Excel, таких как создание новой электронной таблицы, открытие, изменение или удаление существующего файла электронной таблицы, добавление нового листа Excel в книгу, добавление новых ячеек, форматирование ячейки Excel. , проверка данных ячеек, поддержка условного форматирования, объединение и разъединение ячеек рабочего листа, встроенные изображения и фотографии, копирование рабочих листов, копирование строк или столбцов и многое другое.
Начало работы с Xlsx2Go
Рекомендуемый способ установки Xlsx2Go в ваш проект — использовать GitHub. Пожалуйста, используйте следующую команду для плавной установки.
Установите Xlsx2Go через GitHub
go get https://github.com/LucienLS/xlsx2go.git
Создание электронной таблицы XLSX через Go API
Библиотека с открытым исходным кодом Xlsx2Go позволяет программистам создавать электронные таблицы Excel XLSX внутри своих собственных приложений с помощью команд Go. Вы также можете легко открыть, изменить или удалить существующую электронную таблицу. Вы также можете использовать несколько важных функций, таких как вставка новых строк и столбцов на лист, установка значения ячейки по умолчанию, применение форматирования к диапазону ячеек и многое другое.
Создание и изменение файла Excel LS через 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)
}
}
Управление ячейками и строками на листе Excel
Бесплатная библиотека Xlsx2Go включает несколько важных функций, связанных с управлением ячейками и строками в электронных таблицах Excel. Вы можете легко вставлять новые строки и ячейки, объединять строки и ячейки, добавлять комментарий к ячейке Excel, получать все ячейки в строке, создавать новые ячейки, выбирать диапазон ячеек, применять стили к диапазону ячеек, добавлять гиперссылки в ячейку, установить время и дату в ячейке и многое другое.
Вставить столбцы и Росса в таблицу в Go Apps
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(), ","))
}
Добавьте Росса, Колонны, & Спецификации в рабочей таблице
Иногда у пользователя или организации есть несколько рабочих листов с похожей структурой (строки и столбцы), и он хочет объединить информацию в один большой рабочий лист. Функция добавления помогает разработчикам добавлять один или несколько листов к существующему или объединять все в один новый лист. Библиотека Xlsx2Go предоставляет функции для простого программного добавления столбцов, строк и листов листа.
Добавьте Росс, Колонны и Листы через 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(), ","))
}
Управляющая таблица Формат через Go API
Бесплатная библиотека Xlsx2Go позволяет разработчикам программного обеспечения добавлять стили для форматирования своих электронных таблиц с помощью команд Go. Разработчики могут легко создать новый формат, чтобы установить стили шрифта, цвет шрифта, цвет фона и многое другое. Вы можете установить форматирование как для диапазона ячеек, так и для всего рабочего листа. Вы также можете легко установить форматирование по умолчанию для строки и столбца. Вы можете легко добавлять изображения и фотографии на рабочий лист
Применить Форматирование для Прозрачной таблицы через 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)
}