1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|

# Excelize
[](https://travis-ci.org/Luxurioust/excelize)
[](https://codecov.io/gh/Luxurioust/excelize)
[](https://godoc.org/github.com/Luxurioust/excelize)
[](https://opensource.org/licenses/BSD-3-Clause)
[](https://gitter.im/xuri-excelize/Lobby)
## Introduction
Excelize is a library written in pure Golang and providing a set of function that allow you to write to and read from XLSX files. The full API docs can be viewed using go’s built in documentation tool, or online at [godoc.org](https://godoc.org/github.com/Luxurioust/excelize).
## Basic Usage
### Installation
```
go get github.com/Luxurioust/excelize
```
### Create XLSX files
Here is a minimal example usage that will create XLSX file.
```
package main
import (
"fmt"
"github.com/Luxurioust/excelize"
)
func main() {
xlsx := excelize.CreateFile()
xlsx = excelize.NewSheet(xlsx, 2, "Sheet2")
xlsx = excelize.NewSheet(xlsx, 3, "Sheet3")
xlsx = excelize.SetCellInt(xlsx, "Sheet2", "A23", 10)
xlsx = excelize.SetCellStr(xlsx, "Sheet3", "B20", "Hello")
err := excelize.Save(xlsx, "~/Workbook.xlsx")
if err != nil {
fmt.Println(err)
}
}
```
### Writing XLSX files
The following constitutes the bare minimum required to write an XLSX document.
```
package main
import (
"fmt"
"github.com/Luxurioust/excelize"
)
func main() {
xlsx, err := excelize.Openxlsx("~/Workbook.xlsx")
if err != nil {
fmt.Println(err)
}
xlsx = excelize.SetCellInt(xlsx, "Sheet2", "B2", 100)
xlsx = excelize.SetCellStr(xlsx, "Sheet2", "C11", "Hello")
xlsx = excelize.NewSheet(xlsx, 3, "TestSheet")
xlsx = excelize.SetCellInt(xlsx, "Sheet3", "A23", 10)
xlsx = excelize.SetCellStr(xlsx, "Sheet3", "b230", "World")
xlsx = excelize.SetActiveSheet(xlsx, 2)
if err != nil {
fmt.Println(err)
}
err = excelize.Save(xlsx, "~/Workbook.xlsx")
}
```
## Contributing
Contributions are welcome! Open a pull request to fix a bug, or open an issue to discuss a new feature or change.
## Licenses
This program is under the terms of the BSD 3-Clause License. See [https://opensource.org/licenses/BSD-3-Clause](https://opensource.org/licenses/BSD-3-Clause).
|