如何在小于 Epplus 的日期添加条件格式
How to add conditional formatting on date less than with Epplus
我需要使用 Epplus(最新版本 4.1.0)根据 日期 值设置条件格式。
我设置我的范围
var rng= new ExcelAddress(<startingRow>, <startingcolumn>,<endingRow>, <endingColumn>);
范围内的单元格被格式化为日期。我需要对日期 小于或等于今天
应用条件格式
我可以
var format1 = ws.ConditionalFormatting.AddToday(rng);
format1.Style.Fill.BackgroundColor.Color = Color.LightGreen;
以及与 AddLastWeek 和 AddLast7Days 类似的格式。
但这不是一个完整的解决方案,其他预定义的 Excel 日期条件也无济于事。
我需要
var format1 = ws.ConditionalFormatting.AddLessThan(rng).Formula;
format1.Formula = ???
我试图在公式中放入几个包含格式化日期的字符串,但它们被忽略了(没有错误,也没有格式化)。
在 Excel 中,我可以在管理条件格式表单中看到它们。
我发现如果我这样做
format1.Formula = "A1"
并且单元格 A1 包含 "today" 格式化为有效日期,但我更喜欢不涉及虚拟单元格的解决方案,因为稍后我将需要更多标准。
你能建议我解决这个问题的正确方法吗?
由于 EPPlus 没有内置函数,因此必须自己进行日期转换:
var ltecf = rng.ConditionalFormatting.AddLessThanOrEqual();
ltecf.Formula = DateTime.Now.Date.ToOADate().ToString(CultureInfo.InvariantCulture);
ltecf.Style.Fill.BackgroundColor.Color = Color.LightGreen;
我需要使用 Epplus(最新版本 4.1.0)根据 日期 值设置条件格式。
我设置我的范围
var rng= new ExcelAddress(<startingRow>, <startingcolumn>,<endingRow>, <endingColumn>);
范围内的单元格被格式化为日期。我需要对日期 小于或等于今天
应用条件格式我可以
var format1 = ws.ConditionalFormatting.AddToday(rng);
format1.Style.Fill.BackgroundColor.Color = Color.LightGreen;
以及与 AddLastWeek 和 AddLast7Days 类似的格式。
但这不是一个完整的解决方案,其他预定义的 Excel 日期条件也无济于事。
我需要
var format1 = ws.ConditionalFormatting.AddLessThan(rng).Formula;
format1.Formula = ???
我试图在公式中放入几个包含格式化日期的字符串,但它们被忽略了(没有错误,也没有格式化)。 在 Excel 中,我可以在管理条件格式表单中看到它们。 我发现如果我这样做
format1.Formula = "A1"
并且单元格 A1 包含 "today" 格式化为有效日期,但我更喜欢不涉及虚拟单元格的解决方案,因为稍后我将需要更多标准。
你能建议我解决这个问题的正确方法吗?
由于 EPPlus 没有内置函数,因此必须自己进行日期转换:
var ltecf = rng.ConditionalFormatting.AddLessThanOrEqual();
ltecf.Formula = DateTime.Now.Date.ToOADate().ToString(CultureInfo.InvariantCulture);
ltecf.Style.Fill.BackgroundColor.Color = Color.LightGreen;