c# - 使用 EPPlus 在列上添加过滤器
问题描述
我想将带有条件的过滤器添加到由“YES”和“NO”值填充的列中。该条件将向我显示带有 YES 的行并隐藏该列中带有 NO 的行。
我尝试将下一个代码与我已经拥有的用于创建 excel 文件的代码一起使用。
private static async Task ValueFilter(string connectionString, ExcelPackage p)
{
var ws = p.Workbook.Worksheets.Add("ValueFilter");
ExcelRangeBase range = await LoadFromDatabase(connectionString, ws);
range.AutoFilter = true;
var colCompany = ws.AutoFilter.Columns.AddValueFilterColumn(0);
colCompany.Filters.Add("Walsh LLC");
colCompany.Filters.Add("Harber-Goldner");
ws.AutoFilter.ApplyFilter();
range.AutoFitColumns(0);
}
这是我已经拥有的代码,但不包含任何过滤器。
private static byte[] CreateExcelFile(string FileName, DataTable DataTable, string WorkSheet, string Title, string Author)
{
var File = new FileInfo(FileName);
try
{
using (var package = new ExcelPackage(File))
{
ExcelWorksheet workSheet = package.Workbook.Worksheets.Add(WorkSheet);
workSheet.Cells["A1"].LoadFromDataTable(DataTable, true);
workSheet.Cells.Style.VerticalAlignment = ExcelVerticalAlignment.Justify;
workSheet.Cells.AutoFitColumns(10, 75);
package.Workbook.Properties.Title = Title;
package.Workbook.Properties.Author = Author;
package.Workbook.Properties.Author = Author;
return package.GetAsByteArray();
}
}
catch (Exception)
{
throw;
}
}
那么如何结合这两个代码,以便在生成我的 excel 文件时有一个过滤器?或者有没有更简单的方法来使用 epplus 过滤列?
解决方案
推荐阅读
- objective-c - 如何让 Xcode 识别 Objective-C 命令以连接到 Firebase?
- angular - Angular 5 + HttpClient 不会在 GET 上发送标头
- date - 在一天中的不同时间安排多个功能
- powershell - 如何通过 powershell 处理 Active Directory 异常?
- algorithm - 以最类似于基于 PQ 的排序方式进行的算法
- vba - VBA 对于每个 - 循环顺序
- mysql - 如何在 RDS MySql 中克隆和创建新数据库
- java - 您可以在不手动编辑 pom.xml 的情况下设置主清单吗?
- angular - 从 PrimeNG 数据表中获取数据
- python - 如何在 nltk Python 中使用 sentiwordnet 获取 ngram 的同义词