【问题标题】:VB.Net: If Statement While Conditional FormattingVB.Net:条件格式时的 If 语句
【发布时间】:2017-07-18 15:47:43
【问题描述】:

我试图在我的条件格式示例中使用 if 语句。我已经能够成功地使用条件格式,但是在弄清楚如何在其中合并 if 语句时遇到问题。 if 语句是...

IF cell I2 is not empty AND cell b2 < 1 mark the cell red.

IF (AND(I2 &lt;&gt; "", B2 &lt; 1), Red?, not red?)

我觉得这里有两块拼图,但不知道如何将它们拼在一起。

条件格式代码:

protoWorksheet.Range("E2:E100").FormatConditions.Add(XlFormatConditionType.xlExpression, Type.Missing, "=E2=""Gap""").Interior.Color = RGB(255, 0, 0)

【问题讨论】:

  • 如果你只是在做一个条件格式公式,你不需要IF() 部分。您可以将公式设置为 =AND($I2&lt;&gt;"",$B2&lt;1) 只有当两个部分都解析为 TRUE 时才会应用条件格式。
  • @BruceWayne 我使用`protoWorksheet.Range("B2:B100").FormatConditions.Add(XlFormatConditionType.xlExpression, Type.Missing, "=AND( I2"",B2
  • 对于 O2空白尝试 I2&lt;&gt;""""(四个引号而不是两个)
  • @Brucewayne 该死的双引号总是让我……像魅力一样工作。抛出一个答案!
  • 如果这是 VBA,你有 wring 标签 - VBA IsNot VB.NET

标签: excel formula conditional-formatting


【解决方案1】:

在VBA中使用公式时,如果要使用双引号,则必须加倍:

"=AND($I2&lt;&gt;"""",B2&lt;1)"

否则,VBA 将读取到第二个单引号,并停止作为公式读取,因此之后的任何内容都可能引发错误。

如果您想包含一些文本,例如:"=AND($I2=""My Words"",B2&lt;1)"

【讨论】:

    猜你喜欢
    • 2019-04-29
    • 2013-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多