diff options
author | Veniamin Albaev <albenik@gmail.com> | 2019-03-21 13:44:30 +0300 |
---|---|---|
committer | xuri <xuri.me@gmail.com> | 2019-03-21 18:44:30 +0800 |
commit | 7d197c6d8963c4d7b6ba12b1f37c4bf1c9d0dade (patch) | |
tree | fec8d3e32684f7974e2ee4801d4082487fccf6cc | |
parent | 70b1a29165867643e961ceef27592349a122ab7c (diff) |
Fixed PR #356 regression RemoveCol() broken (#365)
-rw-r--r-- | col.go | 9 | ||||
-rw-r--r-- | rows.go | 7 |
2 files changed, 9 insertions, 7 deletions
@@ -337,11 +337,12 @@ func (f *File) RemoveCol(sheet, col string) { xlsx := f.workSheetReader(sheet) for rowIdx := range xlsx.SheetData.Row { - rowData := xlsx.SheetData.Row[rowIdx] - for colIdx, cellData := range rowData.C { - colName, _, _ := SplitCellName(cellData.R) + rowData := &xlsx.SheetData.Row[rowIdx] + for colIdx := range rowData.C { + colName, _, _ := SplitCellName(rowData.C[colIdx].R) if colName == col { - rowData.C = append(rowData.C[:colIdx], rowData.C[colIdx+1:]...) + rowData.C = append(rowData.C[:colIdx], rowData.C[colIdx+1:]...)[:len(rowData.C)-1] + break } } } @@ -379,9 +379,10 @@ func (f *File) RemoveRow(sheet string, row int) { if row > len(xlsx.SheetData.Row) { return } - for i, r := range xlsx.SheetData.Row { - if r.R == row { - xlsx.SheetData.Row = append(xlsx.SheetData.Row[:i], xlsx.SheetData.Row[i+1:]...) + for rowIdx := range xlsx.SheetData.Row { + if xlsx.SheetData.Row[rowIdx].R == row { + xlsx.SheetData.Row = append(xlsx.SheetData.Row[:rowIdx], + xlsx.SheetData.Row[rowIdx+1:]...)[:len(xlsx.SheetData.Row)-1] f.adjustHelper(sheet, rows, row, -1) return } |