From 9baa1bbc9865bee1b3c8981ab98eb8c9049c40e4 Mon Sep 17 00:00:00 2001 From: xuri Date: Thu, 14 May 2020 22:36:00 +0800 Subject: Fix #637, improve the compatibility of the auto filter with Office 2007 - 2013 --- table.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/table.go b/table.go index 55901cd..ae47471 100644 --- a/table.go +++ b/table.go @@ -290,6 +290,20 @@ func (f *File) AutoFilter(sheet, hcell, vcell, format string) error { return err } ref := cellStart + ":" + cellEnd + wb := f.workbookReader() + d := xlsxDefinedName{ + Name: "_xlnm._FilterDatabase", + Hidden: true, + LocalSheetID: intPtr(f.GetSheetIndex(sheet)), + Data: fmt.Sprintf("%s!%s", sheet, ref), + } + if wb.DefinedNames != nil { + wb.DefinedNames.DefinedName = append(wb.DefinedNames.DefinedName, d) + } else { + wb.DefinedNames = &xlsxDefinedNames{ + DefinedName: []xlsxDefinedName{d}, + } + } refRange := vcol - hcol return f.autoFilter(sheet, ref, refRange, hcol, formatSet) } -- cgit v1.2.1