【问题标题】:Color Two Cells Excel VBA颜色两个单元格Excel VBA
【发布时间】:2017-04-27 15:52:30
【问题描述】:

我的代码当前在 Range("N2:N86") 中插入值时为该范围内的值着色。但是,每当在 Range("N2:N86") 中输入值时,我想添加一行额外的代码来着色或突出显示前列 Range("M2:M86")。

例如,如果我将 1 的值放入 N2,我希望 N2 和 M2 都以红色突出显示。谢谢

Dim rCell As Range
Dim inRng As Range
Dim rRng As Range

Set myRng = Range("N2:N86")
myRng.Locked = True

If Range("R4") < 0 Then
    For Each rCell In myRng
        If rCell.Value > 0 Then
            If rRng Is Nothing Then
                Set rRng = rCell
            Else
                Set rRng = Application.Union(rRng, rCell)
            End If
        End If
    Next

    rRng.Locked = False
    rRng.Interior.ColorIndex = 3
End If

【问题讨论】:

  • rRng.Offset(0,-1).Interior.ColorIndex = 3 怎么样?

标签: excel vba cells


【解决方案1】:

我不能 100% 确定您的要求,但您可以测试以下内容。 (当 N 列中的单元格值发生变化时,两列中的行颜色)

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Not Intersect(Range("N2:N86"), Target) Is Nothing Then
    Target.Interior.ColorIndex = 36
    Target.Offset(, -1).Interior.ColorIndex = 36
End If
Application.EnableEvents = True
End Sub

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-06-04
    • 1970-01-01
    • 2020-10-17
    • 2013-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多