如何解决进行更改时如何更改多个,如何以Exel黄色突出显示一行,以红色突出显示单元格
在更改单元格时,我使用以下公式突出显示黄色行和红色单元格。问题是有时我们要对行进行多个更改,并希望所有具有更改的单元格都保持红色,但是当更改行中的第二个单元格时,此公式会擦除第一个红色单元格。我是否可以添加一些例外,以防止在进行第二次更改时已由红色单元格变为黄色?
Private Sub Workbook_SheetChange(ByVal Sh As Object,ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
Target.EntireRow.Interior.Color = vbYellow
Target.Interior.Color = vbRed
End Sub
解决方法
请尝试使用此代码。
{
"addresses": {
"http": "0.0.0.0"
}
}
未经测试上述过程。实际上,我想知道为什么要使用Workbook事件。但是,我确实测试了下面的功能,也许这就是您所需要的。
Private Sub Workbook_SheetChange(ByVal Sh As Object,ByVal Target As Range)
Dim Cl As Long ' last used column
With Target
If .CountLarge = 1 Then
' change .Row to longest used row number
' if your rows aren't of uniform length
If Sh.Cells(.Row,"A").Interior.Color <> vbYellow And _
Sh.Cells(.Row,"A").Interior.Color <> vbRed Then
Cl = Sh.Cells(.Row,Columns.Count).End(xlToLeft).Column
Sh.Range(Sh.Cells(.Row,1),Sh.Cells(.Row,Cl)).Interior.Color = vbYellow
End If
.Interior.Color = vbRed
End If
End With
End Sub
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。