VBA代码-根据条件格式更改单元格值

时间:2020-04-09 15:38:36

标签: formatting conditional-statements cell

我将条件格式设置规则应用于以下范围M5:KI1525。 我想根据特定单元格的条件格式填充颜色输入单元格值。

深黄色格式的单元格必须输入值1。 浅黄色格式的单元格必须输入值2。

我想使用VBA代码来完成这项工作。我尝试了以下代码,但不幸的是,这无法一次在整个范围内工作(仅适用于活动单元格),并且它更改了所有格式化单元格的单元格值,而不是仅更改了暗黄色和浅黄色格式化的单元格。

Sub ChangeValueBasedOnConditionalFormatColor()
    Dim rg As Range
    Dim xRg As Range
    Set xRg = Selection.Cells
    Application.DisplayAlerts = False
    For Each rg In xRg
        With rg
            Select Case ActiveCell.DisplayFormat.Interior.Color
                Case Is = 49407 'Yellow
                    .Value = 0.3
                Case Is = 10086143 'Blue
                    .Value = 0.7
            End Select
        End With
    Next
    Application.DisplayAlerts = False
End Sub

我的代码基于How to change value based on cell color in Excel。 我不需要调整单元格的预设背景(填充)颜色,而是需要调整代码来检查单元格的条件格式填充颜色。

非常感谢您的帮助。

此致

Pjotr​​

0 个答案:

没有答案