2011-11-03 64 views
0

我正在使用Excel工作表來分配工作,並且他們是團隊中的3-4個用戶。我想要做的是基於某些我希望爲用戶分配任務的值(此步驟已通過一些VBA和宏實現),下一步是爲每個用戶設置顏色代碼。因此,根據任務前出現的名稱,單元格顏色需要更改以反映用戶。根據Excel中的數據填充顏色工作表

基本上,每個用戶應該在他的名字出現任何任務時自動獲取顏色。該顏色對於該用戶將是一致的,並且不依賴於該任務。

+0

你並不需要爲這個宏,你可以使用條件格式。 –

+0

我有多個用戶需要分配多種顏色。這項工作不會有條件格式化嗎?因爲在這種情況下,我需要爲每個用戶提供一個條件? – gagneet

+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