我有一个电子表格,我在工作中使用它来跟踪退回的契约(Contract)。我已经设置了一个颜色键,这样我就可以快速浏览工作表以查看哪些契约(Contract)仍需要退回给我们以及该帐户属于哪个客户经理。
客户经理的姓名缩写在 A 栏中列出;从那里我想根据在 A 中输入的姓名首字母为该行中的单元格范围(A:H)着色。现在我有以下代码,但我不喜欢电子表格的外观整行着色:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Target.Column <> 1 Then Exit Sub
Select Case Target
Case "MKH"
Target.EntireRow.Interior.ColorIndex = 36
Case "MAH"
Target.EntireRow.Interior.ColorIndex = 39
Case "MJM"
Target.EntireRow.Interior.ColorIndex = 34
Case "JVE"
Target.EntireRow.Interior.ColorIndex = 35
Case Else
Target.EntireRow.Interior.ColorIndex = 0
End Select
附言我们办公室的大多数员工仍在使用 Office 2003,因此不能选择条件格式。
最佳答案
如果您的问题是如何为行的一部分而不是整个行着色,这应该有效:
Range("A" & Target.Row, "H" & Target.Row).Interior.ColorIndex = 10
关于excel - 使用 VBA 为 Excel 中的一系列单元格着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3335931/