API Go для обработки электронных таблиц Microsoft Excel XLSX

Библиотека Pure Go, поддерживающая создание, форматирование и манипулирование электронными таблицами MS Excel XLSX с легкостью через API Go с открытым исходным кодом.

Xlsx2Go — это чистая библиотека Go с открытым исходным кодом, которая обеспечивает очень простой способ работы с электронными таблицами Microsoft Excel XLSX с использованием команд языка Go. Библиотека очень стабильна, может выполнять быстрые операции и обеспечивает очень надежный способ работы с электронными таблицами XLSX с использованием Golang. С помощью всего пары строк кода вы можете управлять несколькими операциями, связанными с созданием, форматированием и манипулированием электронными таблицами.

Библиотека Xlsx2Go включает поддержку нескольких важных функций, связанных с обработкой электронных таблиц Excel, таких как создание новой электронной таблицы, открытие, изменение или удаление существующего файла электронной таблицы, добавление нового листа Excel в книгу, добавление новых ячеек, форматирование ячейки Excel. , проверка данных ячеек, поддержка условного форматирования, объединение и разъединение ячеек рабочего листа, встроенные изображения и фотографии, копирование рабочих листов, копирование строк или столбцов и многое другое.

Previous Next

Начало работы с 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)
}
 Русский