c# - C#中的EXCEL条件格式
问题描述
我有一个名为“First Price”的列(excel 列:AG)和一个名为“First Price Override”的列(excel 列:AH)和一个名为“First Price Override 2”的列(excel 列:AI)。
我需要在 C# 中编写一些条件格式来检查 AH 或 AI 列中的值。如果他们在此单元格中输入了值,则 AG 列(与输入的值相关联的行 - 需要将字体样式删除线设置为 true)
我该怎么做呢?
var orfirstpricerange1 = Worksheet.Range["AH:AH"];
var orfirstpricerange2 = Worksheet.Range["AI:AI"];
var firstpricerange = Worksheet.Range["AG:AG"];
firstpricerange.Font.Strikethrough = true;
我已经完成了上述操作,但不知道如何将它们组合在一起以使用条件格式。
解决方案
//firstpricerange.Font.Strikethrough = true;
上面会将整个列的格式设置为“删除线”。我评论它是因为你不想让每个单元格都被删除。
Excel.FormatCondition format = (Excel.FormatCondition)(Worksheet.get_Range("AG:AG",
Type.Missing).FormatConditions.Add(Excel.XlFormatConditionType.xlExpression, Excel.XlFormatConditionOperator.xlEqual,
"=AH1=AI1", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing));
format.Font.Strikethrough = true;
“Excel”是指using Excel = Microsoft.Office.Interop.Excel;
当前,当 AH 中的值等于 AI 中的值时,列 AG 获得删除线。
推荐阅读
- facebook-graph-api - 我可以在不登录的情况下获取访问令牌吗?
- python - 在 Tkinter Python 程序中看不到图片
- snakemake - 尽管 conda 环境中存在包,但在蛇形管道中找不到命令错误
- python - Xpath 返回空列表,但 Xpath 表达式正确并在浏览器控制台上测试
- angular - Angular 9 - 来自商店的 Datorama Akita 显示值
- ruby-on-rails - nil:NilClass 在rails中的未定义方法“错误”
- typescript - Redux DevTools 现在在 State 视图中显示 typescript Map 对象
- r - 如何在 Ubuntu 16.04 中从 R 版本 3.4.4 (2018-03-15) ——“有人依靠”升级到 R 3.5
- python - 我需要用python去掉字符的“”
- excel - 选择/突出显示用户窗体列表框中的每一对