c# - 如何在 EPPlus 中过滤列(而不是行)?

标签 c# excel excel-interop epplus epplus-4

过滤特定列中的行就像 EPPlus 中的饼图一样简单:

private ExcelWorksheet prodUsageWorksheet;
. . .
prodUsageWorksheet.Cells["A6:A6"].AutoFilter = true;

这允许我过滤 A 列中的行:

enter image description here

我还需要过滤掉某些列,例如月份列(在屏幕截图中,9 月 15 日和 10 月 15 日,但通常会更多)。例如,我想使用 EPPlus 以编程方式生成以下内容:

enter image description here

取消选择“全选”,选择月份的子集,然后单击“确定”按钮使未选中的月份折叠。

查看一些遗留的 Excel Interop 代码,似乎是这样完成的:

fld = ((PivotField) pvt.PivotFields("Month"));
fld.Orientation = XlPivotFieldOrientation.xlColumnField;
fld.NumberFormat = "MMM yy";

具体来说,第二个代码块(方向设置为 xlColumnField)是带有排序/筛选按钮的列,操作时有条件地显示/隐藏各种列。

它是否根据数字格式确定哪些列是可显示/可隐藏的?也就是说,如果值为“Sep 15”或“Oct 16”?

我不知道,但我在代码中看不到任何其他更具体地设置列过滤限制的内容。

无论如何,如果 Excel Interop 是这样实现的,那么 EPPlus 中的等效项是什么?

最佳答案

这已在另一个帖子中提出。此外,这不是 EPPlus 的目的,因为列过滤更像是一种“动态”最终用户功能。

看看这个,看看它是否回答了你的问题:

Adding a specific autofilter on a column

关于c# - 如何在 EPPlus 中过滤列(而不是行)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39925460/

相关文章:

c# - 通过 Managed Wifi API 进行 WLAN 管理

excel - 如何从混合 Excel 单元格中提取带前导零的数字?

excel - 不要在单元格中显示公式

c# - 尝试将第三张工作表添加到电子表格时,为什么会出现 "Invalid index"?

c#,Microsoft Interop Excel,更改所选范围的字体样式

c# - 具有 Entity Framework 和空间数据的持久无知域

c# - Entity Framework : Database. ExecuteSqlCommand 方法

c# - 在后台运行时出现 Excel 互操作 COM 异常

c# - 在 .NET 中使用正则表达式提取 URL

vba - 从单行到列表(循环)