gpt4 book ai didi

c# - 高级过滤器 excel 与 c#

转载 作者:太空宇宙 更新时间:2023-11-03 16:32:44 25 4
gpt4 key购买 nike

我需要在 excel 表中做一个过滤器,我想知道是否可以做这样的过滤器

 List<string> listFilter = new List<string>();
listFilter.Add("3");
listFilter.Add("4");

object _missing = System.Reflection.Missing.Value;
Microsoft.Office.Interop.Excel.Range oRng1 = xlWorkSheet.Range["A1", "A1048576"];
oRng1.AutoFilter(1, listFilter, Microsoft.Office.Interop.Excel.XlAutoFilterOperator.xlAnd, _missing, true);
oRng1.Borders.LineStyle = Microsoft.Office.Interop.Excel.XlLineStyle.xlContinuous;

我知道这段代码不起作用,但我想在过滤器参数中做一个动态列表。谁能告诉我该怎么做?

最佳答案

我不确定传递列表,但你绝对可以传递数组:

string[] listfilter = new string[] { "2", "3", "4" };
xlWorksheet.get_Range("A1", "B50").AutoFilter(1, listfilter, Excel.XlAutoFilterOperator.xlFilterValues,
Missing.Value, true);

您可以找到XlAutoFilterOperator 的不同成员here .

尝试查找工作表中最后使用的行而不是为整个列设置过滤器可能也是一个想法,因为这可能会减慢速度:

int lastRow = xlWorksheet.Range["A:A"].Find("*", Missing.Value, Missing.Value, Missing.Value,
Excel.XlSearchOrder.xlByRows, Excel.XlSearchDirection.xlPrevious, false, Missing.Value,
Missing.Value).Row;

关于c# - 高级过滤器 excel 与 c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10317241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com