diff options
author | Ri Xu <xuri.me@gmail.com> | 2018-05-04 11:20:51 +0800 |
---|---|---|
committer | Ri Xu <xuri.me@gmail.com> | 2018-05-04 11:20:51 +0800 |
commit | 934ecec1a96bfd5a1ecf3f1f373332504971c5fd (patch) | |
tree | 70ddbceb026548dbe27f9e8eac393b199ad56cc7 | |
parent | 200437d7787d500e791016552036a74ef221f1f4 (diff) |
- Set name of table support in `AddTable()`, relate issue #216;
- godoc and go test has been updated
-rw-r--r-- | excelize_test.go | 2 | ||||
-rw-r--r-- | table.go | 13 | ||||
-rw-r--r-- | xmlTable.go | 1 |
3 files changed, 11 insertions, 5 deletions
diff --git a/excelize_test.go b/excelize_test.go index f2dd0d0..9587f33 100644 --- a/excelize_test.go +++ b/excelize_test.go @@ -756,7 +756,7 @@ func TestAddTable(t *testing.T) { t.Log(err) } xlsx.AddTable("Sheet1", "B26", "A21", ``) - xlsx.AddTable("Sheet2", "A2", "B5", `{"table_style":"TableStyleMedium2", "show_first_column":true,"show_last_column":true,"show_row_stripes":false,"show_column_stripes":true}`) + xlsx.AddTable("Sheet2", "A2", "B5", `{"table_name":"table","table_style":"TableStyleMedium2", "show_first_column":true,"show_last_column":true,"show_row_stripes":false,"show_column_stripes":true}`) xlsx.AddTable("Sheet2", "F1", "F1", `{"table_style":"TableStyleMedium8"}`) err = xlsx.Save() if err != nil { @@ -28,10 +28,12 @@ func parseFormatTableSet(formatSet string) *formatTable { // // Create a table of F2:H6 on Sheet2 with format set: // -// xlsx.AddTable("Sheet2", "F2", "H6", `{"table_style":"TableStyleMedium2", "show_first_column":true,"show_last_column":true,"show_row_stripes":false,"show_column_stripes":true}`) +// xlsx.AddTable("Sheet2", "F2", "H6", `{"table_name":"table","table_style":"TableStyleMedium2", "show_first_column":true,"show_last_column":true,"show_row_stripes":false,"show_column_stripes":true}`) // -// Note that the table at least two lines include string type header. The two -// chart coordinate areas can not have an intersection. +// Note that the table at least two lines include string type header. Multiple +// tables coordinate areas can't have an intersection. +// +// table_name: The name of the table, in the same worksheet name of the table should be unique // // table_style: The built-in table style names // @@ -122,7 +124,10 @@ func (f *File) addTable(sheet, tableXML string, hxAxis, hyAxis, vxAxis, vyAxis, Name: name, }) } - name := "Table" + strconv.Itoa(i) + name := formatSet.TableName + if name == "" { + name = "Table" + strconv.Itoa(i) + } t := xlsxTable{ XMLNS: NameSpaceSpreadSheet, ID: i, diff --git a/xmlTable.go b/xmlTable.go index 610950b..b238350 100644 --- a/xmlTable.go +++ b/xmlTable.go @@ -186,6 +186,7 @@ type xlsxTableStyleInfo struct { // formatTable directly maps the format settings of the table. type formatTable struct { + TableName string `json:"table_name"` TableStyle string `json:"table_style"` ShowFirstColumn bool `json:"show_first_column"` ShowLastColumn bool `json:"show_last_column"` |