ChantXu64
a34c81e1cc
This closes #1448 , speed up for checking merged cells ( #1500 )
2023-03-20 09:17:28 +08:00
xuri
65a53b3ec6
Breaking changes: replace the type `ShapeParagraph` with `RichTextRun`
...
- This removes the `Color` field from the type `Shape`, and uses the `Fill` instead of it
- Remove sharp symbol from hex RGB color
- Update unit tests
2023-02-27 00:05:36 +08:00
xuri
3e2406096f
This closes #1462 and closes #1464
...
- Support creating a conditional format with a "stop if true" rule
- Support set border color and create solid color for the color data bar
- Fix incorrect cell type when modifying string cell with the time number
- Update unit test for the add pivot table to avoid pivot table range overlap
2023-02-07 00:08:11 +08:00
xuri
85e0b6c56e
Support to create of 17 kinds of fill variants styles
...
- Update the unit tests
- Update the `SetHeaderFooter` function parameters name
- Update document for the `SetDocProps` and `SetCellHyperLink` functions
2023-02-01 00:11:08 +08:00
xuri
917e6e19d6
This roundup time value when a millisecond great than 500 to fix the accuracy issue
...
- Correction example in the documentation of set cell formula
- Rename the internal function `parseOptions` to `getOptions`
- Update unit tests
2023-01-20 03:10:04 +00:00
xuri
5429f131f8
This closes #1438 , fix cell data type issue for formula calculation engine
...
- Update dependencies module
- Update unit tests
2023-01-08 00:23:53 +08:00
xuri
b39626fae9
This fixed worksheet protection issue
...
- Update example code in the documentation
- Update unit tests
- Rename `PictureOptions` to `GraphicOptions`
- Adjust partial options fields data types for the `PictureOptions` and `Shape` structure
- Update dependencies module
2023-01-02 11:47:31 +08:00
xuri
f58dabd492
Breaking change: changed the function signature for 11 exported functions
...
* Change
`func (f *File) NewConditionalStyle(style string) (int, error)`
to
`func (f *File) NewConditionalStyle(style *Style) (int, error)`
* Change
`func (f *File) NewStyle(style interface{}) (int, error)`
to
`func (f *File) NewStyle(style *Style) (int, error)`
* Change
`func (f *File) AddChart(sheet, cell, opts string, combo ...string) error`
to
`func (f *File) AddChart(sheet, cell string, chart *ChartOptions, combo ...*ChartOptions) error`
* Change
`func (f *File) AddChartSheet(sheet, opts string, combo ...string) error`
to
`func (f *File) AddChartSheet(sheet string, chart *ChartOptions, combo ...*ChartOptions) error`
* Change
`func (f *File) AddShape(sheet, cell, opts string) error`
to
`func (f *File) AddShape(sheet, cell string, opts *Shape) error`
* Change
`func (f *File) AddPictureFromBytes(sheet, cell, opts, name, extension string, file []byte) error`
to
`func (f *File) AddPictureFromBytes(sheet, cell, name, extension string, file []byte, opts *PictureOptions) error`
* Change
`func (f *File) AddTable(sheet, hCell, vCell, opts string) error`
to
`func (f *File) AddTable(sheet, reference string, opts *TableOptions) error`
* Change
`func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error`
to
`func (sw *StreamWriter) AddTable(reference string, opts *TableOptions) error`
* Change
`func (f *File) AutoFilter(sheet, hCell, vCell, opts string) error`
to
`func (f *File) AutoFilter(sheet, reference string, opts *AutoFilterOptions) error`
* Change
`func (f *File) SetPanes(sheet, panes string) error`
to
`func (f *File) SetPanes(sheet string, panes *Panes) error`
* Change
`func (sw *StreamWriter) AddTable(hCell, vCell, opts string) error`
to
`func (sw *StreamWriter) AddTable(reference string, opts *TableOptions) error`
* Change
`func (f *File) SetConditionalFormat(sheet, reference, opts string) error`
to
`func (f *File) SetConditionalFormat(sheet, reference string, opts []ConditionalFormatOptions) error`
* Add exported types:
* AutoFilterListOptions
* AutoFilterOptions
* Chart
* ChartAxis
* ChartDimension
* ChartLegend
* ChartLine
* ChartMarker
* ChartPlotArea
* ChartSeries
* ChartTitle
* ConditionalFormatOptions
* PaneOptions
* Panes
* PictureOptions
* Shape
* ShapeColor
* ShapeLine
* ShapeParagraph
* TableOptions
* This added support for set sheet visible as very hidden
* Return error when missing required parameters for set defined name
* Update unit test and comments
2022-12-30 00:50:08 +08:00
Liron Levin
a57203a03a
This closes #1432 , fix panic formattedValue when style is negative ( #1433 )
2022-12-29 00:37:37 +08:00
xuri
45d168c79d
This closes #1391 , escape XML characters to avoid with corrupt file
...
- Update and improve unit test coverage
2022-11-15 22:08:37 +08:00
xuri
ac564afa56
Remove internal error log print, throw XML deserialize error
2022-11-13 00:40:04 +08:00
xuri
bd5dd17673
This is a breaking change, remove partial internal error log print, throw XML deserialize error
...
- Add error return value for the `GetComments`, `GetDefaultFont` and `SetDefaultFont` functions
- Update unit tests
2022-11-12 00:16:23 +08:00
March
8753950d62
Delete shared formula in calc chain when writing a formula cell ( #1387 )
2022-11-08 00:35:19 +08:00
Martin Martinez Rivera
75c912ca95
This closes #1384 , fix segmentation fault in `formattedValue` ( #1385 )
...
- Add nil pointer guard in cell format
- Add tests to verify the nil checks in formattedValue
Co-authored-by: Zach Clark <zachmclark@gmail.com>
2022-11-05 12:41:07 +08:00
xuri
db2d084ada
This closes #1204 , breaking changes for add comments
...
- Allowing insert SVG format images
- Unit tests updated
2022-11-02 08:45:06 +08:00
xuri
adf9d37d82
This closes #1379 , cleanup stream writer temporary files by the `Close` function
...
- Fix error on inserting columns or rows on the worksheet which contains one cell merged cell range
- Fix getting incomplete rich text cell value in some cases
- Unit tests updated
2022-10-26 00:04:23 +08:00
xuri
f44153ea46
This closes #1377 , stream writer writes inline string type for string cell value
...
- Add `CellTypeFormula`, `CellTypeInlineString`, `CellTypeSharedString` and remove `CellTypeString` in `CellType` enumeration
- Unit tests updated
2022-10-25 10:24:45 +08:00
xuri
14c6a198ce
Support get cell value which contains a date in the ISO 8601 format
...
- Support set and get font color with indexed color
- New export variable `IndexedColorMapping`
- Fix getting incorrect page margin settings when the margin is 0
- Update unit tests and comments typo fixes
- ref #65 , new formula functions: AGGREGATE and SUBTOTAL
2022-10-24 00:52:09 +08:00
GaoFei
3ece904b00
This closes #1369 , support set, and get font color with theme and tint ( #1370 )
2022-10-15 00:03:49 +08:00
charles.deng
2f5704b114
Stream writer support to set inline rich text cell ( #1121 )
...
Co-authored-by: zhengchao.deng <zhengchao.deng@meican.com>
2022-10-10 00:11:18 +08:00
xuri
efcf599dfe
This closes #1360 , closes #1361
...
- Fix default number format parse issue with a long string of digits
- Fix creating a sheet with an empty name cause a corrupted file
- The `GetCellStyle` function no longer return master cell style of the merge cell range
- Using the specialized name in variables and functions
2022-09-28 00:04:17 +08:00
xuri
3f702999e6
Using the specialized name in a variable and making comments clear
...
- Add JSON tags for `AppProperties`, `PivotTableOption` and `PivotTableField` structure
2022-09-18 00:07:15 +08:00
xuri
b6cc43d824
This makes 6 functions concurrency safety
...
- These 6 functions now support concurrency safe: SetColWidth, GetColWidth, SetColVisible, GetColVisible, SetColStyle and GetColStyle
2022-09-11 00:04:04 +08:00
Cooper de Nicola
0e9378fec2
This closes #1247 , add new function `SetSheetCol` for set worksheet column values ( #1320 )
...
Signed-off-by: cdenicola <cooper.denicola@instabase.com>
Co-authored-by: cdenicola <cooper.denicola@instabase.com>
2022-08-25 09:34:29 +08:00
xuri
551fb8a9e4
This closes #1244 and closes #1314 , improving the compatibility with Google Sheet
...
- Format code with `gofmt`
2022-08-13 11:21:59 +08:00
xuri
ebea684ae5
Fix potential file corrupted and change worksheet name case-insensitive
...
- Using sheet ID instead of sheet index when delete the cell in calculation chain
- Update documentation for exported functions
- Using `sheet` represent the sheet name in the function parameters
2022-07-18 00:21:34 +08:00
xuri
40ed1d1b81
Fix potential file corrupted when changing cell value or the col/row
...
- Remove shared formula subsequent cell when setting the cell values
- Support adjust table range when removing and inserting column/row
2022-07-16 12:50:40 +08:00
yeshu
18afc88759
This closes #1264 , fix can't modify cell content issue in some cases
...
Remove inline rich text when setting cell value and cell formulas
2022-07-01 00:46:23 +08:00
jialei
d490a0f86f
RichTextRun support set superscript and subscript by vertAlign attribute ( #1252 )
...
check vertical align enumeration, update set rich text docs and test
2022-06-13 23:38:59 +08:00
xuri
8f16a76781
This fixes a part of staticcheck issues and updates the code of conduct
...
Update example for set cell hyperlinks with `HyperlinkOpts`
2022-05-18 23:15:24 +08:00
xuri
19a0cf3cec
This closed #1163 , fix set cell value with column and row style inherit issue
2022-05-15 15:38:40 +08:00
xuri
eed431e0fc
This closes #1219 , fixes cell value reading issue, improves performance, and 1904 date system support
...
- Fix incorrect cell data types casting results when number formatting
- Support set cell value on 1904 date system enabled, ref #1212
- Improve performance for set sheet row and the merging cells, fix performance impact when resolving #1129
2022-05-02 12:30:18 +08:00
xuri
773d4afa32
This closes #1217 , support update cell hyperlink
...
Ref #1129 , make `SetRowStyle` overwrite style of the cells
2022-05-01 12:28:36 +08:00
xuri
856ee57c40
This closes #1212 , init support for 1900 or 1904 date system
2022-04-30 09:54:11 +08:00
xuri
0f93bd23c9
This closes #1213 , fix get incorrect rich text value caused by missing cell type checking
2022-04-29 13:53:09 +08:00
xuri
29d63f6ae0
ref #65 , new formula functions: HYPGEOM.DIST and HYPGEOMDIST
2022-03-30 00:01:38 +08:00
xuri
8a335225c7
Format code, update documentation and remove exported variable `XMLHeaderByte`
2022-03-24 00:19:30 +08:00
xuri
94f197c4fe
This improved formula calculate precision and added zero placeholder number format support
2022-03-19 00:05:47 +08:00
xuri
4220bf4327
ref #65 , new formula functions: LOGNORM.INV and LOGINV
...
* Update docs for the function `SetCellHyperLink`
2022-03-15 00:05:02 +08:00
xuri
07be993631
Fixed parsing decimal precision issue
2022-02-18 00:02:39 +08:00
xuri
f87c39c41d
This closes #1148 , resolve limitations when adding VBA project to the workbook
...
Added two exported functions `SetWorkbookPrOptions` and `GetWorkbookPrOptions` to support setting and getting the code name property of the workbook
Re-order fields of the workbook properties group to improve the compatibility
Go Modules dependencies upgrade
Put workbook related operating in new `workbook.go` source code
Library introduction docs block updated
2022-02-17 00:09:11 +08:00
xuri
4b64b26c52
Ref: #660 , #764 , #1093 , #1112 , #1133 This improve number format support
...
- Introduced NFP (number format parser) dependencies module
- Initialize custom dates and times number format support
- Dependencies module upgraded
2022-02-13 00:06:30 +08:00
xuri
3f8f4f52e6
This closes #1139 , `SetCellDefault` support non-numeric value
...
- Add default value on getting `View` property of sheet views
- Add examples and unit test for set sheet views
- Re-order field on sheet view options
- Fix incorrect build-in number format: 42
- Simplify code for the `stylesReader` function
2022-02-08 00:08:06 +08:00
xuri
156bf6d16e
This closes #1129 , make cell support inheritance columns/rows style
...
Correct cells style in merge range
Fix incorrect style ID returned on getting cell style in some cases
Unit test updated and simplified code
2022-01-27 22:37:32 +08:00
xuri
891e5baac1
ref #1096 , reduce memory usage by about 50% for large data spreadsheet
2022-01-11 00:31:11 +08:00
xuri
2245fccca0
Typo fix, rename exported constants, dependencies modules and copyright update
...
Rename exported constants `NameSpaceDublinCoreMetadataIntiative` to `NameSpaceDublinCoreMetadataInitiative`
2022-01-09 00:20:42 +08:00
xuri
9e64df6a96
Update create style example, using a pointer of the structure instead of JSON
2022-01-05 00:13:29 +08:00
xuri
e37e060d6f
This closes #1107 , stream writer will create a time number format for time type cells
...
Unit test coverage improved
2021-12-31 00:00:01 +08:00
vst
c5990ea348
Preserve horizontal tab character when set the cell value ( #1108 )
2021-12-30 00:36:04 +08:00
xuri
89b85934f6
This closes #1096 , memory usage optimization and another 4 changes
...
- Unzip shared string table to system temporary file when large inner XML, reduce memory usage about 70%
- Remove unnecessary exported variable `XMLHeader`, we can using `encoding/xml` package's `xml.Header` instead of it
- Using constant instead of inline text for default XML path
- Rename exported option field `WorksheetUnzipMemLimit` to `UnzipXMLSizeLimit`
- Unit test and documentation updated
2021-12-27 23:49:28 +08:00