根据Excel工作表中的数据填充颜色

时间:2011-11-03 02:11:30

标签: excel vba excel-vba

我正在使用Excel工作表来分配工作,他们在团队中有3-4个用户。我想要做的是基于某些值,我希望将一个任务分配给用户(这个步骤已经通过一些VBA和宏实现),下一步是为每个用户着色代码。因此,根据任务前面显示的名称,单元格颜色需要更改以反映用户。

基本上,每个用户在他的名字遇到任何任务时都应自动获得颜色。该颜色对于该用户将是一致的,并且不依赖于任务。

1 个答案:

答案 0 :(得分:1)

如果名字在第一栏:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim clr As Long, c As Range, v

    For Each c In Target.Cells
        If c.Column = 1 Then
            v = c.Value
            clr = -1
            If Len(v) > 0 Then
                Select Case v
                Case "Fred": clr = vbRed
                Case "Jeff": clr = vbBlue
                Case "Jane": clr = vbYellow
                End Select
            End If
            If clr > 0 Then
                c.Interior.Color = clr
            Else
                c.Interior.ColorIndex = xlNone
            End If
        End If
    Next c
End Sub