c# - 如何使用 C# 在 Excel 自动化中卡住首行并应用筛选器

标签 c# excel vba office-interop export-to-excel

我有从 C# 创建 Excel 文档的自动化。我正在尝试卡住工作表的第一行并应用过滤器。这与在 Excel 2010 中相同,如果您选择“查看”>“卡住 Pane ”>“卡住顶行”,然后在选择“顶行数据”>“筛选”之后。我不知道如何应用过滤器,但以下是我尝试卡住顶行的方法,它只是卡住了整个工作表。有没有人能解决我的问题。数据过滤器问题是我需要更多帮助的地方,所以如果有人对此有解决方案,请赐教。

非常感谢, 知识点

        workSheet.Activate();
        Excel.Range firstRow = (Excel.Range)workSheet.Rows[1];
        firstRow.Activate();
        firstRow.Select();
        firstRow.Application.ActiveWindow.FreezePanes = true;

最佳答案

我想通了!

@Jaime 卡住顶行的解决方案非常有效。以下是我应用过滤器的解决方案:

谢谢, 知识点

// Fix first row
workSheet.Activate();
workSheet.Application.ActiveWindow.SplitRow = 1;
workSheet.Application.ActiveWindow.FreezePanes = true;
// Now apply autofilter
Excel.Range firstRow = (Excel.Range)workSheet.Rows[1];
firstRow.AutoFilter(1, 
                    Type.Missing, 
                    Excel.XlAutoFilterOperator.xlAnd, 
                    Type.Missing, 
                    true);

关于c# - 如何使用 C# 在 Excel 自动化中卡住首行并应用筛选器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5060488/

相关文章:

vba - VBA 范围自定义排序

vba - 返回从下拉框中选择的文本

vba 创建一个新工作表并更改名称

vba - 在运行任何程序之前和之后自动执行代码

c# - 等待和 Task.Wait 之间的区别

c# - hangfire 作业激活和 Autofac 的问题

c# - 在Linq查询中选择不重复

excel - 无需 VBA 查找最后一个非空单元格地址

sql - 在查询中添加行号

C# 如何保存运行时字体设置