【问题标题】:vba conditional formatting select a rulevba条件格式选择规则
【发布时间】:2021-11-10 16:52:04
【问题描述】:

在 Excel 中,您可以轻松地使用选择规则栏下的条件格式>新规则>,您可以从 6 种可用模式中选择一种模式。但在 vba 中,您只能使用 Select 包含模式的单元格。我需要将其更改为第 6 个,选择自定义条件。有没有可能。也许问题是因为我使用了百分比?

我的代码很简单;

With ThisWorkBook.Worksheets(1).Range("A1").FormatConditions.Add(xlCellValue,xlGreaterEqual, "=$B3>=100%")
.AppliesTo=Range("A1")
.StopIfTrue=False
    With .Font
    .ColorIndex=4
    End With
End With

【问题讨论】:

    标签: excel vba conditional-formatting


    【解决方案1】:

    几个问题:

    • FormatConditions.Add(您的问题可能有错别字)
    • xlGreaterThan 不是有效选项。可能你的意思是xlGreaterEqual。有关选项列表,请参阅 docs
    • 100% 等同于 1
    Dim cond As FormatCondition
    Set cond = ThisWorkbook.ActiveSheet.Range("A3").FormatConditions.Add(xlCellValue, xlGreaterEqual, 1)
    

    编辑:

    如果要使用表达式,那么:

    With ThisWorkBook.Worksheets(1).Range("A1").FormatConditions.Add(Type:=xlExpression, Formula1:="=$B1>=1")
        .AppliesTo=Range("A1")
        .StopIfTrue=False
         With .Font
            .ColorIndex=4
         End With
    End With
    

    【讨论】:

    • 嗯..有趣。实际上我的代码有效。那么如何?它将条件格式添加到单元格,但颜色不会改变。我用 vba 添加了三个条件,都添加了。我会按照你提到的那样尝试并回来提供反馈。 xlGreatOrEqualThan
    • 好的,让我把我的代码带到这里。因为我添加了带有Statememnt的代码
    • 这是xlGreaterEqual,而不是xlGreatOrEqualThan。使用宏记录器可能会对您有所帮助。
    • 我已经编辑了代码,我的和你的有两个不同之处。调光和字体.Interior
    • xlCellValue,xlGreaterEqual, "=$B3>=100%" 更改为Type:=xlExpression, Formula1:="=$B1>=1"
    猜你喜欢
    • 1970-01-01
    • 2019-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-29
    • 1970-01-01
    • 2014-03-15
    相关资源
    最近更新 更多