我正试着用EPPlus来实现这一点-
我看了示例这里
private static async Task CustomFilter(string connectionString, ExcelPackage p)
{
var ws = p.Workbook.Worksheets.Add("CustomFilter");
ExcelRangeBase range = await LoadFromDatabase(connectionString, ws);
range.AutoFilter = true;
var colCompany = ws.AutoFilter.Columns.AddCustomFilterColumn(6);
colCompany.And = true;
colCompany.Filters.Add(new ExcelFilterCustomItem("999.99",eFilterOperator.GreaterThan));
colCompany.Filters.Add(new ExcelFilterCustomItem("1500", eFilterOperator.LessThanOrEqual));
ws.AutoFilter.ApplyFilter();
range.AutoFitColumns(0);
}
然而,看起来eFilterOperator没有包含选项。这个是可能的吗?
发布于 2021-12-21 17:35:30
弄明白了,需要用星号。顺便说一句-如果该值以星号开头,则筛选器将显示为结束,而不是包含。
$xl = New-Object OfficeOpenXml.ExcelPackage $xls
$ws = $xl.Workbook.Worksheets.Add("Logs")
$table_range = $ws.Cells[1, 1, $ws.Dimension.End.Row, $ws.Dimension.End.Column]
$table = $ws.Tables.Add($table_range, 'Table1')
$filter = $table.AutoFilter.Columns.AddCustomFilterColumn($colinfo['File'].Index - 1)
$filter.Filters.Add( (New-Object 'OfficeOpenXml.Filter.ExcelFilterCustomItem' '*MAIN-Install.log*', 'Equal' ) )
$filter.Filters.Add( (New-Object 'OfficeOpenXml.Filter.ExcelFilterCustomItem' '*dsclog.log*', 'Equal' ) )
$table.AutoFilter.ApplyFilter()
https://stackoverflow.com/questions/70442842
复制相似问题