c# – 如何识别哪些单元/列设置了过滤器?

我正在使用Microsoft Interop来读取数据.

在excel-sheet中,多个随机列具有“过滤器”集.如何找出哪些单元格/列设置了过滤器?我想只加载有过滤器设置的列.

这是表格的样子

第1-5行,第1-10列[长文本描述工作表中的数据,我不想加载]

第1-10行,第1列[一些数据,未过滤,我不想加载]

第1-10行,第2-15行[仅为某些列设置过滤器,我想检测过​​滤器并加载整个列数据]

最佳答案 > Worksheet接口具有AutoFilter属性,该属性返回AutoFilter接口.

> AutoFilter接口具有Filters属性,该属性返回Filters接口.

> AutoFilter接口具有Range属性,该属性返回要过滤的范围.

> Filters接口是Filters的集合;这些顺序与AutoFilter.Range中的列顺序相同

> Filter接口具有On属性,指示是否正在过滤列.

点赞