1. produkty
  2.   Tabulka
  3.   GO
  4.   unioffice
 
  

Open Source Go Library pro vytváření souborů Excel XLSX

Číst, psát, upravovat dokumenty Microsoft Excel XLSX prostřednictvím Open Source Go API. Přidejte do svých tabulek více grafů, obrázků a tabulek. 

Unioffice je knihovna s otevřeným zdrojovým kódem, která poskytuje vývojářům softwaru možnost generovat, upravovat a manipulovat s dokumenty Office Excel XLSX v rámci jejich vlastních aplikací Go. Knihovna je velmi stabilní a poskytuje nejvyšší stupeň produktivity s velmi malým úsilím a náklady.

Knihovna unioffice s otevřeným zdrojovým kódem plně podporuje několik důležitých funkcí souvisejících s vytvářením a úpravami tabulek Excel, jako je vytváření nových excelových listů od začátku, vytváření buněk s různými formáty čísel/datum/čas, formátování buněk Excel, podpora ověřování buněk, načítání hodnot buněk ve formátu Excel, podmíněné formátování, sloučení a zrušení sloučení buněk, ověření dat včetně rozevíracích seznamů, vložené obrázky a mnoho dalšího.

Previous Next

Začínáme s unioffice

Doporučený způsob unioffice do vašeho projektu je pomocí Github. Pro bezproblémovou instalaci použijte prosím následující příkaz.

Nainstalujte unioffice přes GitHub

go get github.com/unidoc/unioffice/
go build -i github.com/unidoc/unioffice/... 

Excel XLSX Creation přes Go API

Open source knihovna unioffice umožňuje počítačovým programátorům vytvářet Excel XLSX tabulky uvnitř jejich vlastních Go aplikací. Poskytuje vám možnost přidat nový list ke stávajícím dokumentům aplikace Excel a přiřadit listu název a uložit soubor do vámi zvolené cesty. Poskytuje také podporu pro několik důležitých funkcí, jako je přidávání nových řádků a sloupců do listu, definování počtu řádků a sloupců, nastavení výchozí hodnoty buňky a další. Můžete také snadno otevřít a upravit stávající tabulku.

Vytvořit jednoduchý soubor Excel přes knihovnu Go

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	// add a single sheet
	sheet := ss.AddSheet()
	// rows
	for r := 0; r < 5; r++ {
		row := sheet.AddRow()
		// and cells
		for c := 0; c < 5; c++ {
			cell := row.AddCell()
			cell.SetString(fmt.Sprintf("row %d cell %d", r, c))
		}
	}
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("simple.xlsx")
} 

Přidejte více grafů do souboru Excel XLSX

Knihovna unioffice poskytuje podporu pro přidávání grafů do tabulky aplikace Excel pomocí pouhých několika řádků kódu. Grafy můžete vytvářet na základě dostupných dat ve vašem listu i bez dostupnosti jakýchkoli dat. Grafy vám dávají možnost vizuálně zobrazovat data v různých formátech, jako je sloupec, sloupec, koláč, čára, plocha nebo radar atd. Vývojáři si mohou snadno vybrat z dostupných možností grafu a mohou ovládat jejich hodnoty.

Vložte více grafů do souboru Excel přes Go API

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	sheet := ss.AddSheet()
	// Create all of our data
	row := sheet.AddRow()
	row.AddCell().SetString("Item")
	row.AddCell().SetString("Price")
	row.AddCell().SetString("# Sold")
	row.AddCell().SetString("Total")
	for r := 0; r < 5; r++ {
		row := sheet.AddRow()
		row.AddCell().SetString(fmt.Sprintf("Product %d", r+1))
		row.AddCell().SetNumber(1.23 * float64(r+1))
		row.AddCell().SetNumber(float64(r%3 + 1))
		row.AddCell().SetFormulaRaw(fmt.Sprintf("C%d*B%d", r+2, r+2))
	}
	// Charts need to reside in a drawing
	dwng := ss.AddDrawing()
	chrt1, anc1 := dwng.AddChart(spreadsheet.AnchorTypeTwoCell)
	chrt2, anc2 := dwng.AddChart(spreadsheet.AnchorTypeTwoCell)
	addBarChart(chrt1)
	addLineChart(chrt2)
	anc1.SetWidth(9)
	anc1.MoveTo(5, 1)
	anc2.MoveTo(1, 23)
	// and finally add the chart to the sheet
	sheet.SetDrawing(dwng)
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("multiple-chart.xlsx")
}
func addBarChart(chrt chart.Chart) {
	chrt.AddTitle().SetText("Bar Chart")
	lc := chrt.AddBarChart()
	priceSeries := lc.AddSeries()
	priceSeries.SetText("Price")
	// Set a category axis reference on the first series to pull the product names
	priceSeries.CategoryAxis().SetLabelReference(`'Sheet 1'!A2:A6`)
	priceSeries.Values().SetReference(`'Sheet 1'!B2:B6`)
	soldSeries := lc.AddSeries()
	soldSeries.SetText("Sold")
	soldSeries.Values().SetReference(`'Sheet 1'!C2:C6`)
	totalSeries := lc.AddSeries()
	totalSeries.SetText("Total")
	totalSeries.Values().SetReference(`'Sheet 1'!D2:D6`)
	// the line chart accepts up to two axes
	ca := chrt.AddCategoryAxis()
	va := chrt.AddValueAxis()
	lc.AddAxis(ca)
	lc.AddAxis(va)
	ca.SetCrosses(va)
	va.SetCrosses(ca)
}

Vložit obrázky do tabulek XLSX

Knihovna unioffice plně podporuje zahrnutí obrázků do tabulek XLSX pomocí pouhých několika řádků kódu Go. Podporuje úpravu obrázků a také mazání existujících obrázků v listu XLSX. Poskytuje také možnosti vložení obrázku a nastavení jeho vlastností, jako je velikost, poloha atd., stejně jako podpora tisku.

Vložte obrázky do souboru Excel přes Go API

func main() {
	ss := spreadsheet.New()
	defer ss.Close()
	// add a single sheet
	sheet := ss.AddSheet()
	img, err := common.ImageFromFile("gophercolor.png")
	if err != nil {
		log.Fatalf("unable to create image: %s", err)
	}
	iref, err := ss.AddImage(img)
	if err != nil {
		log.Fatalf("unable to add image to workbook: %s", err)
	}
	dwng := ss.AddDrawing()
	sheet.SetDrawing(dwng)
	for i := float64(0); i < 360; i += 30 {
		anc := dwng.AddImage(iref, spreadsheet.AnchorTypeAbsolute)
		ang := i * math.Pi / 180
		x := 2 + 2*math.Cos(ang)
		y := 2 + +2*math.Sin(ang)
		anc.SetColOffset(measurement.Distance(x) * measurement.Inch)
		anc.SetRowOffset(measurement.Distance(y) * measurement.Inch)
		// set the image to 1x1 inches
		var w measurement.Distance = 1 * measurement.Inch
		anc.SetWidth(w)
		anc.SetHeight(iref.RelativeHeight(w))
	}
	if err := ss.Validate(); err != nil {
		log.Fatalf("error validating sheet: %s", err)
	}
	ss.SaveToFile("image.xlsx")
}

Použijte podmíněné formátování na buňky tabulky

Podmíněné formátování je užitečná funkce, která pomáhá uživatelům aplikace Excel použít formát na buňku nebo rozsah buněk na základě určitých kritérií. Knihovna unioffice poskytuje funkcionalitu, která umožňuje vývojářům softwaru aplikovat podmíněné formátování na jejich tabulky pomocí pouhých několika příkazů Go. Knihovna obsahuje podporu pro podmíněné formátování buněk, styly, přechody, ikony, datový pruh a další.

 Čeština