diff --git a/LICENSE b/LICENSE index a22e6975ff..188105c1a4 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ BSD 3-Clause License -Copyright (c) 2016-2025 The excelize Authors. +Copyright (c) 2016-2026 The excelize Authors. Copyright (c) 2011-2017 Geoffrey J. Teale All rights reserved. diff --git a/adjust.go b/adjust.go index 05695736f9..3ae4f179e6 100644 --- a/adjust.go +++ b/adjust.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/calc.go b/calc.go index 3b6e73b29d..ea3359be65 100644 --- a/calc.go +++ b/calc.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/calcchain.go b/calcchain.go index 9a3a9ed49b..f63f7ddc08 100644 --- a/calcchain.go +++ b/calcchain.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/cell.go b/cell.go index 54266bc73b..699d62c442 100644 --- a/cell.go +++ b/cell.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/chart.go b/chart.go index 610f7d069a..e7d61df969 100644 --- a/chart.go +++ b/chart.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/col.go b/col.go index 791edcd4ad..1e78734e38 100644 --- a/col.go +++ b/col.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // @@ -299,6 +299,13 @@ func (f *File) SetColVisible(sheet, columns string, visible bool) error { } ws.mu.Lock() defer ws.mu.Unlock() + ws.setColVisible(minVal, maxVal, visible) + return err +} + +// setColVisible provides a function to set the visibility of a single column +// or multiple columns by given column number. +func (ws *xlsxWorksheet) setColVisible(minVal, maxVal int, visible bool) { colData := xlsxCol{ Min: minVal, Max: maxVal, @@ -310,7 +317,7 @@ func (f *File) SetColVisible(sheet, columns string, visible bool) error { cols := xlsxCols{} cols.Col = append(cols.Col, colData) ws.Cols = &cols - return nil + return } ws.Cols.Col = flatCols(colData, ws.Cols.Col, func(fc, c xlsxCol) xlsxCol { fc.BestFit = c.BestFit @@ -322,7 +329,6 @@ func (f *File) SetColVisible(sheet, columns string, visible bool) error { fc.Width = c.Width return fc }) - return nil } // GetColOutlineLevel provides a function to get outline level of a single diff --git a/crypt.go b/crypt.go index 8f5b6b5f01..53eb74e3f7 100644 --- a/crypt.go +++ b/crypt.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/crypt_test.go b/crypt_test.go index a3f0c6d11d..397cdfd065 100644 --- a/crypt_test.go +++ b/crypt_test.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/datavalidation.go b/datavalidation.go index 3d1d794f0f..486deb8d2a 100644 --- a/datavalidation.go +++ b/datavalidation.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/datavalidation_test.go b/datavalidation_test.go index 519badb13e..1d3b15a3fc 100644 --- a/datavalidation_test.go +++ b/datavalidation_test.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/date.go b/date.go index 16a1a5dc84..c8923d690d 100644 --- a/date.go +++ b/date.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/docProps.go b/docProps.go index cca7817ac8..2db772323a 100644 --- a/docProps.go +++ b/docProps.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/docProps_test.go b/docProps_test.go index 7b2f11dde1..45b40c7b9b 100644 --- a/docProps_test.go +++ b/docProps_test.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/drawing.go b/drawing.go index ab9da2eb51..42a45d6cb8 100644 --- a/drawing.go +++ b/drawing.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/drawing_test.go b/drawing_test.go index f81f5d0b11..de32a43b49 100644 --- a/drawing_test.go +++ b/drawing_test.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/errors.go b/errors.go index 5ac857f7ee..b29f456b94 100644 --- a/errors.go +++ b/errors.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // @@ -136,6 +136,9 @@ var ( // ErrSparklineType defined the error message on receive the invalid // sparkline Type parameters. ErrSparklineType = errors.New("parameter 'Type' value must be one of 'line', 'column' or 'win_loss'") + // ErrStreamSetColVisible defined the error message on set columns + // visibility in stream writing mode. + ErrStreamSetColVisible = errors.New("must call the SetColVisible function before the SetRow function") // ErrStreamSetColStyle defined the error message on set column style in // stream writing mode. ErrStreamSetColStyle = errors.New("must call the SetColStyle function before the SetRow function") diff --git a/excelize.go b/excelize.go index f6faa1c6e9..92dd15f011 100644 --- a/excelize.go +++ b/excelize.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. diff --git a/file.go b/file.go index 084f1e5d9c..15249826ec 100644 --- a/file.go +++ b/file.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/go.mod b/go.mod index 34d69cc6e6..ec4a9c84e8 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module github.com/xuri/excelize/v2 go 1.24.0 require ( - github.com/richardlehane/mscfb v1.0.4 + github.com/richardlehane/mscfb v1.0.5 github.com/stretchr/testify v1.11.1 github.com/tiendc/go-deepcopy v1.7.2 github.com/xuri/efp v0.0.1 diff --git a/go.sum b/go.sum index 02c6498a8a..70684da9a2 100644 --- a/go.sum +++ b/go.sum @@ -2,9 +2,8 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/richardlehane/mscfb v1.0.4 h1:WULscsljNPConisD5hR0+OyZjwK46Pfyr6mPu5ZawpM= -github.com/richardlehane/mscfb v1.0.4/go.mod h1:YzVpcZg9czvAuhk9T+a3avCpcFPMUWm7gK3DypaEsUk= -github.com/richardlehane/msoleps v1.0.1/go.mod h1:BWev5JBpU9Ko2WAgmZEuiz4/u3ZYTKbjLycmwiWUfWg= +github.com/richardlehane/mscfb v1.0.5 h1:OoQkDV2Bf2bIoSacCfJhSwm7BJN05fYFkwFUpxExtdY= +github.com/richardlehane/mscfb v1.0.5/go.mod h1:pe0+IUIc0AHh0+teNzBlJCtSyZdFOGgV4ZK9bsoV+Jo= github.com/richardlehane/msoleps v1.0.4 h1:WuESlvhX3gH2IHcd8UqyCuFY5yiq/GR/yqaSM/9/g00= github.com/richardlehane/msoleps v1.0.4/go.mod h1:BWev5JBpU9Ko2WAgmZEuiz4/u3ZYTKbjLycmwiWUfWg= github.com/stretchr/testify v1.11.1 h1:7s2iGBzp5EwR7/aIZr8ao5+dra3wiQyKjjFuvgVKu7U= diff --git a/lib.go b/lib.go index af4cb2605b..d8783587ba 100644 --- a/lib.go +++ b/lib.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // @@ -876,23 +876,23 @@ func floatToFraction(x float64, numeratorPlaceHolder, denominatorPlaceHolder int // floatToFracUseContinuedFraction implement convert a floating-point decimal // to a fraction using continued fractions and recurrence relations. func floatToFracUseContinuedFraction(r float64, denominatorLimit int64) (num, den int64) { - p_1 := int64(1) // LaTex: p_{-1} - q_1 := int64(0) // LaTex: q_{-1} - p_2 := int64(0) // LaTex: p_{-2} - q_2 := int64(1) // LaTex: q_{-2} + p1 := int64(1) // LaTex: p_{-1} + q1 := int64(0) // LaTex: q_{-1} + p2 := int64(0) // LaTex: p_{-2} + q2 := int64(1) // LaTex: q_{-2} var lasta, lastb int64 var curra, currb int64 for k := 0; ; k++ { // a_{k} = \lfloor r_{k} \rfloor a := int64(math.Floor(r)) // Fundamental recurrence formulas: p_{k} = a_{k} \cdot p_{k-1} + p_{k-2} - curra, currb = a*p_1+p_2, a*q_1+q_2 - p_2 = p_1 - q_2 = q_1 - p_1 = curra - q_1 = currb + curra, currb = a*p1+p2, a*q1+q2 + p2 = p1 + q2 = q1 + p1 = curra + q1 = currb frac := r - float64(a) - if q_1 >= denominatorLimit { + if q1 >= denominatorLimit { return lasta, lastb } if math.Abs(frac) < 1e-12 { diff --git a/merge.go b/merge.go index cf77ad2b4b..49f40d91dd 100644 --- a/merge.go +++ b/merge.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/numfmt.go b/numfmt.go index 1dd5354c65..b4aec4710f 100644 --- a/numfmt.go +++ b/numfmt.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/picture.go b/picture.go index f52832e4f5..b7ce6db16a 100644 --- a/picture.go +++ b/picture.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // @@ -152,7 +152,7 @@ func parseGraphicOptions(opts *GraphicOptions) *GraphicOptions { // object with the cell, the default value of that is 0. // // The optional parameter "ScaleX" specifies the horizontal scale of graph -// object. The value of ScaleY must be a floating-point number greater than 0 +// object. The value of ScaleX must be a floating-point number greater than 0 // with a precision of two decimal places. The default value of that is 1.0 // which presents 100%. // @@ -493,7 +493,7 @@ func (f *File) addMedia(file []byte, ext string) string { // returns the image contents as []byte data types. This function is // concurrency safe. Note that this function currently does not support // retrieving all properties from the image's Format property, and the value of -// the ScaleX and ScaleY property is a floating-point number greater than 0 with +// the ScaleX and ScaleY property is a floating-point number greater than 0 with // a precision of two decimal places. For example: // // f, err := excelize.OpenFile("Book1.xlsx") diff --git a/pivotTable.go b/pivotTable.go index fbf6aab7f6..69aa0f739b 100644 --- a/pivotTable.go +++ b/pivotTable.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/rows.go b/rows.go index 5a994c8d52..0ad54d7f52 100644 --- a/rows.go +++ b/rows.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/shape.go b/shape.go index 203238e244..7c4ef40690 100644 --- a/shape.go +++ b/shape.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/sheet.go b/sheet.go index e041705e95..5f716b5a55 100644 --- a/sheet.go +++ b/sheet.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/sheetpr.go b/sheetpr.go index f22d02ae9d..5ba91ffa1e 100644 --- a/sheetpr.go +++ b/sheetpr.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/sheetview.go b/sheetview.go index 3e2ecfdc1c..6bcb316738 100644 --- a/sheetview.go +++ b/sheetview.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/slicer.go b/slicer.go index 206393f011..0560947077 100644 --- a/slicer.go +++ b/slicer.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/sparkline.go b/sparkline.go index ea8aa9e0f1..5f8599162f 100644 --- a/sparkline.go +++ b/sparkline.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/stream.go b/stream.go index 46c6a3e46c..cf07340b78 100644 --- a/stream.go +++ b/stream.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // @@ -435,6 +435,31 @@ func (sw *StreamWriter) SetRow(cell string, values []interface{}, opts ...RowOpt return sw.rawData.Sync() } +// SetColVisible provides a function set the visibility of a single column or +// multiple columns for the StreamWriter. Note that you must call the +// 'SetColVisible' function before the 'SetRow' function. +// +// For example hide column D on Sheet1: +// +// err := sw.SetColVisible(4, 4, false) +// +// Hide the columns from D to F (included): +// +// err := sw.SetColVisible(4, 6, false) +func (sw *StreamWriter) SetColVisible(minVal, maxVal int, visible bool) error { + if sw.sheetWritten { + return ErrStreamSetColVisible + } + if minVal < MinColumns || minVal > MaxColumns || maxVal < MinColumns || maxVal > MaxColumns { + return ErrColumnNumber + } + if minVal > maxVal { + minVal, maxVal = maxVal, minVal + } + sw.worksheet.setColVisible(minVal, maxVal, visible) + return nil +} + // SetColStyle provides a function to set the style of a single column or // multiple columns for the StreamWriter. Note that you must call // the 'SetColStyle' function before the 'SetRow' function. For example set @@ -682,6 +707,9 @@ func (sw *StreamWriter) writeSheetData() { sw.rawData.WriteString(strconv.Itoa(col.Style)) sw.rawData.WriteString(`"`) } + if col.Hidden { + sw.rawData.WriteString(` hidden="1"`) + } sw.rawData.WriteString(`/>`) } _, _ = sw.rawData.WriteString("") diff --git a/stream_test.go b/stream_test.go index e58e85d676..e1b200d630 100644 --- a/stream_test.go +++ b/stream_test.go @@ -154,6 +154,21 @@ func TestStreamWriter(t *testing.T) { assert.NoError(t, file.Close()) } +func TestStreamSetColVisible(t *testing.T) { + file := NewFile() + defer func() { + assert.NoError(t, file.Close()) + }() + streamWriter, err := file.NewStreamWriter("Sheet1") + assert.NoError(t, err) + assert.NoError(t, streamWriter.SetColVisible(3, 2, false)) + assert.Equal(t, ErrColumnNumber, streamWriter.SetColVisible(0, 3, false)) + assert.Equal(t, ErrColumnNumber, streamWriter.SetColVisible(MaxColumns+1, 3, false)) + assert.NoError(t, streamWriter.SetRow("A1", []interface{}{"A", "B", "C"})) + assert.Equal(t, ErrStreamSetColVisible, streamWriter.SetColVisible(2, 3, false)) + assert.NoError(t, streamWriter.Flush()) +} + func TestStreamSetColStyle(t *testing.T) { file := NewFile() defer func() { diff --git a/styles.go b/styles.go index 17e97c4614..212b9f4d0e 100644 --- a/styles.go +++ b/styles.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/table.go b/table.go index 8409f64253..0eb0e1d95a 100644 --- a/table.go +++ b/table.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/templates.go b/templates.go index f70bb4ca9e..4a0f41889b 100644 --- a/templates.go +++ b/templates.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/vml.go b/vml.go index 77b55aebf4..c22d8fd3ba 100644 --- a/vml.go +++ b/vml.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/vmlDrawing.go b/vmlDrawing.go index a09df0ddf5..099f79937b 100644 --- a/vmlDrawing.go +++ b/vmlDrawing.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/vml_test.go b/vml_test.go index d55f2d60e1..91d5aedecd 100644 --- a/vml_test.go +++ b/vml_test.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/workbook.go b/workbook.go index 86ddfc2e03..eb717c3985 100644 --- a/workbook.go +++ b/workbook.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlApp.go b/xmlApp.go index 5cc035d5f8..aa171a4862 100644 --- a/xmlApp.go +++ b/xmlApp.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlCalcChain.go b/xmlCalcChain.go index 238e4acb17..19b51999d3 100644 --- a/xmlCalcChain.go +++ b/xmlCalcChain.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlChart.go b/xmlChart.go index 12b6ec2412..80b1c05cc3 100644 --- a/xmlChart.go +++ b/xmlChart.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlChartSheet.go b/xmlChartSheet.go index 9a4bbd08cc..4cb75f9c87 100644 --- a/xmlChartSheet.go +++ b/xmlChartSheet.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlComments.go b/xmlComments.go index 7497df7c83..07d06f87ea 100644 --- a/xmlComments.go +++ b/xmlComments.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlContentTypes.go b/xmlContentTypes.go index 8a61651111..de564ed222 100644 --- a/xmlContentTypes.go +++ b/xmlContentTypes.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlCore.go b/xmlCore.go index 7ce8d2cca7..e270f2c0f8 100644 --- a/xmlCore.go +++ b/xmlCore.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlCustom.go b/xmlCustom.go index fdc2855bc5..4afe40b075 100644 --- a/xmlCustom.go +++ b/xmlCustom.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlDecodeDrawing.go b/xmlDecodeDrawing.go index c0bed96beb..bc59b42222 100644 --- a/xmlDecodeDrawing.go +++ b/xmlDecodeDrawing.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlDrawing.go b/xmlDrawing.go index 51141490a7..b321ff743b 100644 --- a/xmlDrawing.go +++ b/xmlDrawing.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlMetaData.go b/xmlMetaData.go index 296152a11b..41eaa5d04c 100644 --- a/xmlMetaData.go +++ b/xmlMetaData.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlPivotCache.go b/xmlPivotCache.go index 6e9b760db3..4218eeb01b 100644 --- a/xmlPivotCache.go +++ b/xmlPivotCache.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlPivotTable.go b/xmlPivotTable.go index 1a6ca90b37..a1ecaf4d9e 100644 --- a/xmlPivotTable.go +++ b/xmlPivotTable.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlSharedStrings.go b/xmlSharedStrings.go index ef87f583f9..c5b0ed5097 100644 --- a/xmlSharedStrings.go +++ b/xmlSharedStrings.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlSlicers.go b/xmlSlicers.go index 138cb9391b..7e4d0d837b 100644 --- a/xmlSlicers.go +++ b/xmlSlicers.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlStyles.go b/xmlStyles.go index ddc384b889..1a87dc9ff4 100644 --- a/xmlStyles.go +++ b/xmlStyles.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlTable.go b/xmlTable.go index c6fb345c23..4d1a4523ca 100644 --- a/xmlTable.go +++ b/xmlTable.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlTheme.go b/xmlTheme.go index a9f3d6f326..8e658b2a2a 100644 --- a/xmlTheme.go +++ b/xmlTheme.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlWorkbook.go b/xmlWorkbook.go index 7491576d1d..0fb86c9d44 100644 --- a/xmlWorkbook.go +++ b/xmlWorkbook.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. // diff --git a/xmlWorksheet.go b/xmlWorksheet.go index db5b489e61..98b4c2a5ba 100644 --- a/xmlWorksheet.go +++ b/xmlWorksheet.go @@ -1,4 +1,4 @@ -// Copyright 2016 - 2025 The excelize Authors. All rights reserved. Use of +// Copyright 2016 - 2026 The excelize Authors. All rights reserved. Use of // this source code is governed by a BSD-style license that can be found in // the LICENSE file. //