Excel 自动筛选范围:保持范围不变/避免自动添加行

我有一个问题将 Excel 自动过滤器限制在设置范围内并在该范围下方显示粘性底行...

这很有效(我使用的是 Python xlsxwriter):

worksheet.autofilter('A1:D111')

它导致 Excel (Office 365) 中的筛选器列表范围为 $A$1:$D$111。

但是,如果我在自动筛选范围下方写一个单元格:

worksheet.write(111, 3, 'Total filtered selection', format_string) #adds string to Excel row 112

然后这一行也包含在过滤器范围中(过滤器现在由于某种原因以 $D112 结束......见图)。

因此,在更改过滤器时,底行不会粘在选择的底部,这是我想要显示选择的总数(使用=SUBTOTAL(101, E1:E111)它仅按预期包含过滤的行)。

我究竟做错了什么?谢谢!


http://img.mukewang.com/6177df9d00012c7402350239.jpg

繁星coding
浏览 694回答 1
1回答

慕沐林林

通过对图表系列使用相同的范围,自动筛选范围保持不变:正如 dwirony 所建议的,将新数据(行)添加到自动筛选器似乎是 Excel 的标准行为。通过这种方式,我的底行显示了小计,并在重新应用过滤器时隐藏了该行,从而扩展了过滤器范围。但是,如果您将图表系列应用于与自动过滤器范围相同的单元格范围,则自动过滤器将保持不变!即我的自动筛选范围是“A1:D111”,并在将内容添加到第 112 行时更改为“A1:D112”。但是,如果我为范围“A1:D111”创建图表系列并将内容添加到第 112 行,则自动筛选范围将保持不变。PS 注意:我还尝试通过定义命名范围(不使用它)来保持范围固定,但这无济于事/过滤器仍然自动添加命名范围之外的新行。在 xlsx 作家中:workbook.define_name('Filterrange', '={}!$A$1:$D$111'
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python