我如何过滤EPPlus中的列(而不是行)?

在EPPlus中过滤特定列中的行非常简单:

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

这允许我筛选列A中的行:

在这里输入图像说明

我还需要过滤某些列,比如月份列(在屏幕截图中,9月15日和10月15日,但通常是多个)。 例如,我想用EPPlus编程生成以下代码:

在这里输入图像说明

取消select“全部select”,select一个月的子集,然后单击“确定”button,不select折叠。

看一些传统的Excel Interop代码,似乎在那里,它是这样做的:

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

具体而言,第二个代码块(方向设置为xlColumnField )是运行sorting/filterbutton的列,在操作时,该列有条件地显示/隐藏各种列。

是否根据数字格式确定哪些列是可显示/可隐藏的? 也就是说,如果价值是“9月15日”或“10月16日”?

我不知道,但我不能看到代码中更具体地设置列过滤的限制。

无论如何,如果这是Excel Interop如何完成它的话,EPPlus中的等价物是什么?

这已经在另一个post中被问到。 此外,这不是EPPlus的目标,因为列过滤更多是“dynamic”最终用户function。

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

在列上添加特定的自动筛选器