C# - Excel - 如何获得autofilter()方法的标准

时间:2010-10-22 21:57:15

标签: c# .net excel excel-2003

我想使用autoFilter()方法过滤某些行 我已经成功激活了所选范围(整个表格)上的autoFilter()方法,没有任何问题 我在选定范围内使用的方法如下所示:

range.AutoFilter(5, myCriteria, Excel.XlAutoFilterOperator.xlAnd, missing, true);

其中:

5是列索引,
myCriteria是要过滤的对象。

当我在调用方法之前知道myCriteria是什么时,这很好。

但是,如果我不知道要使用什么标准,我希望从特定列中的可用值(例如,列#5)获取它

请注意,当您在Excel中手动使用自动过滤器时,会出现一个包含可用选项的下拉菜单 例如,如果有很多行,那么列#5可能包含0,5,10,15,20等值,但我事先无法知道。

艰难的方法是遍历该列中的所有值并构建唯一值列表。

有一种快速简便的方法吗?

(我必须将Excel 2003与“Microsoft Excel 11.0对象库”一起使用)

由于

1 个答案:

答案 0 :(得分:0)

您可以通过编程advanced filter以编程方式使用Unique Records Only,但这会在表格中为您提供一个列表。

然而,如果你考虑一下,它是否有意义?您为什么要使用此列表中的随机值过滤列表?

如果用户想要进行选择,他们将为您提供过滤的值 如果要以编程方式过滤某些记录,那么再次,您已经知道过滤条件将是什么。如果不这样做,则不会 来过滤列表。