1. Məhsullar
  2.   Elektron cədvəl
  3.   GO
  4.   Excelize  

Excelize  

 
 

Elektron Cədvəllər üçün Açıq Mənbəli Go Kitabxanası

Go API vasitəsilə Excel XLSX / XLSM / XLTM Cədvəl Fayllarında verilənləri oxuyun, yaradın, birləşdirin və filtrləyin.

Excelize, Microsoft Excel XLSX / XLSM / XLTM elektron cədvəl fayllarını oxumaq və yazmaq üçün funksionallıq təmin edən açıq mənbəli təmiz Go kitabxanasıdır. Tərtibatçılar Microsoft Excel™ 2007 və daha sonra yaradılan cədvəl sənədlərini öz proqramlarında oxuya və yaza bilərlər. Kitabxana çox istifadəçi dostudur və böyük cədvəl fayllarının oxunmasını dəstəkləyir. O, böyük həcmdə məlumatı olan iş vərəqindən məlumat yaratmaq və ya oxumaq üçün axın API təqdim etmişdir.

Kitabxana Excel fayllarının oxunması və yazılması, hüceyrə diapazonları ilə işləmək, Excel sətirlərinin idarə edilməsi, şərhlərin əlavə edilməsi, xanaların birləşdirilməsi, sətirlərin surətinin çıxarılması, şərti formatlaşdırma, mətn daxil etmək, cədvəllərin idarə edilməsi kimi Excel elektron cədvəl fayllarının manipulyasiyası və emalı ilə bağlı bir sıra vacib funksiyaları tam dəstəkləyir. Excel fayllarında şəkillər əlavə edin, yeni vərəqlər əlavə edin və s.

Previous Next

Excelize ilə işə başlamaq

Excelize-i quraşdırmanın tövsiyə olunan yolu GitHub-dandır, daha sürətli quraşdırma üçün aşağıdakı əmrdən istifadə edin.

GitHub Komandası vasitəsilə quraşdırın

 go get github.com/360EntSecGroup-Skylar/excelize 

Go Library vasitəsilə Excel XLSX faylı yaradın

Excelize proqramçılara öz Go proqramlarında Excel XLSX cədvəlini yaratmağa imkan verir. Vərəqi yaratdıqdan sonra siz həmçinin yeni vərəq yarada, xananın dəyərini təyin edə, sətir və sütunların sayını təyin edə, iş kitabının aktiv vərəqini təyin edə və s. edə bilərsiniz. Siz həmçinin vərəqə ad təyin edə və faylı seçdiyiniz yola saxlaya, yaradılmış vərəq üçün şrift növünü və mətn ölçüsünü təyin edə bilərsiniz. 

Go API vasitəsilə Excel XLSX faylı yaradın

package main
import (
    "fmt"
    "github.com/xuri/excelize/v2"
)
func main() {
    f := excelize.NewFile()
    // Create a new sheet.
    index := f.NewSheet("Sheet2")
    // Set value of a cell.
    f.SetCellValue("Sheet2", "A2", "Hello world.")
    f.SetCellValue("Sheet1", "B2", 100)
    // Set active sheet of the workbook.
    f.SetActiveSheet(index)
    // Save spreadsheet by the given path.
    if err := f.SaveAs("Book1.xlsx"); err != nil {
        fmt.Println(err)
    }
}

XLSX faylına diaqram daxil edin

Excel Diaqramları, iş vərəqinizin kiçik bir hissəsində böyük həcmdə məlumatları ümumiləşdirməklə məlumatların daha çox başa düşülməsini təmin edə bilən iş vərəqindəki məlumatların vizual təsvirləridir. Diaqramlar istifadəçilərə məlumatları müxtəlif formatlarda, məsələn, Bar, Sütun, Piroq, Xətt, Sahə və ya Radar və s. kimi vizual olaraq göstərməyə imkan verir. Excelize kitabxanası diaqramların yaradılmasını və həmçinin öz proqramlarınız daxilində yalnız bir neçə sətir kodu ilə nəzarəti dəstəkləyir. Bu, iş vərəqindəki məlumatlar əsasında qrafiklər qurmağa və ya heç bir məlumat olmadan diaqramlar yaratmağa imkan verir.

Go API vasitəsilə Excel Cədvəl Faylına Diaqram əlavə edin

package main
import (
    "fmt"
    "github.com/xuri/excelize/v2"
)
func main() {
    categories := map[string]string{
        "A2": "Small", "A3": "Normal", "A4": "Large",
        "B1": "Apple", "C1": "Orange", "D1": "Pear"}
    values := map[string]int{
        "B2": 2, "C2": 3, "D2": 3, "B3": 5, "C3": 2, "D3": 4, "B4": 6, "C4": 7, "D4": 8}
    f := excelize.NewFile()
    for k, v := range categories {
        f.SetCellValue("Sheet1", k, v)
    }
    for k, v := range values {
        f.SetCellValue("Sheet1", k, v)
    }
    if err := f.AddChart("Sheet1", "E1", `{
        "type": "col3DClustered",
        "series": [
        {
            "name": "Sheet1!$A$2",
            "categories": "Sheet1!$B$1:$D$1",
            "values": "Sheet1!$B$2:$D$2"
        },
        {
            "name": "Sheet1!$A$3",
            "categories": "Sheet1!$B$1:$D$1",
            "values": "Sheet1!$B$3:$D$3"
        },
        {
            "name": "Sheet1!$A$4",
            "categories": "Sheet1!$B$1:$D$1",
            "values": "Sheet1!$B$4:$D$4"
        }],
        "title":
        {
            "name": "Fruit 3D Clustered Column Chart"
        }
    }`); err != nil {
        fmt.Println(err)
        return
    }
    // Save spreadsheet by the given path.
    if err := f.SaveAs("Book1.xlsx"); err != nil {
        fmt.Println(err)
    }
}

Excel faylında pivot cədvəlinin yaradılması

Excelize asanlıqla Excel cədvəlində pivot cədvəli yaratmaq imkanı verir. Pivot cədvəlləri Microsoft Excel-in ən güclü xüsusiyyətlərindən biridir. Excel cədvəlində məlumatlarınızı hesablamaq, ümumiləşdirmək və təhlil etmək üçün güclü vasitədir. AddPivotTable funksiyasından istifadə edərək sadə pivot cədvəli yarada bilərsiniz. Bundan əlavə, siz asanlıqla məlumat mənbəyini pivot cədvəlinə təyin edə və ya redaktə edə bilərsiniz.

Go Apps daxilində Excel faylında Pivot Cədvəl yaradın

func main() {
    f := excelize.NewFile()
    // Create some data in a sheet
    month := []string{"Jan", "Feb", "Mar", "Apr", "May",
        "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"}
    year := []int{2017, 2018, 2019}
    types := []string{"Meat", "Dairy", "Beverages", "Produce"}
    region := []string{"East", "West", "North", "South"}
    f.SetSheetRow("Sheet1", "A1", &[]string{"Month", "Year", "Type", "Sales", "Region"})
    for row := 2; row < 32; row++ {
        f.SetCellValue("Sheet1", fmt.Sprintf("A%d", row), month[rand.Intn(12)])
        f.SetCellValue("Sheet1", fmt.Sprintf("B%d", row), year[rand.Intn(3)])
        f.SetCellValue("Sheet1", fmt.Sprintf("C%d", row), types[rand.Intn(4)])
        f.SetCellValue("Sheet1", fmt.Sprintf("D%d", row), rand.Intn(5000))
        f.SetCellValue("Sheet1", fmt.Sprintf("E%d", row), region[rand.Intn(4)])
    }
    if err := f.AddPivotTable(&excelize.PivotTableOptions{
        DataRange:       "Sheet1!$A$1:$E$31",
        PivotTableRange: "Sheet1!$G$2:$M$34",
        Rows: []excelize.PivotTableField{
            {Data: "Month", DefaultSubtotal: true}, {Data: "Year"}},
        Filter: []excelize.PivotTableField{
            {Data: "Region"}},
        Columns: []excelize.PivotTableField{
            {Data: "Type", DefaultSubtotal: true}},
        Data: []excelize.PivotTableField{
            {Data: "Sales", Name: "Summarize", Subtotal: "Sum"}},
        RowGrandTotals: true,
        ColGrandTotals: true,
        ShowDrill:      true,
        ShowRowHeaders: true,
        ShowColHeaders: true,
        ShowLastColumn: true,
    }); err != nil {
        fmt.Println(err)
    }
    if err := f.SaveAs("Book1.xlsx"); err != nil {
        fmt.Println(err)
    }
}

XLSX Cədvəllərinə Şəkillər əlavə edin

Excelize kitabxanası yalnız bir neçə sətir Go əmrləri ilə Excel XLSX cədvəlinə şəkillər əlavə etmək üçün funksionallıq təmin edir. Siz həmçinin ehtiyaclarınıza uyğun olaraq şəkilləri dəyişdirə bilərsiniz. Siz miqyaslı və çap dəstəyi ilə şəkil əlavə edə bilərsiniz.

Go API vasitəsilə Excel İş Vərəqi Faylına Şəkil əlavə edin

package main
import (
    "fmt"
    _ "image/gif"
    _ "image/jpeg"
    _ "image/png"
    "github.com/xuri/excelize/v2"
)
func main() {
    f, err := excelize.OpenFile("Book1.xlsx")
    if err != nil {
        fmt.Println(err)
        return
    }
    defer func() {
        // Close the spreadsheet.
        if err := f.Close(); err != nil {
            fmt.Println(err)
        }
    }()
    // Insert a picture.
    if err := f.AddPicture("Sheet1", "A2", "image.png", ""); err != nil {
        fmt.Println(err)
    }
    // Insert a picture to worksheet with scaling.
    if err := f.AddPicture("Sheet1", "D2", "image.jpg",
        `{"x_scale": 0.5, "y_scale": 0.5}`); err != nil {
        fmt.Println(err)
    }
    // Insert a picture offset in the cell with printing support.
    if err := f.AddPicture("Sheet1", "H2", "image.gif", `{
        "x_offset": 15,
        "y_offset": 10,
        "print_obj": true,
        "lock_aspect_ratio": false,
        "locked": false
    }`); err != nil {
        fmt.Println(err)
    }
    // Save the spreadsheet with the origin path.
    if err = f.Save(); err != nil {
        fmt.Println(err)
    }
}
 Azəri