[英]VBA Excel automatic colour and value change
我正在嘗試為工作設置個人管理電子表格。 我列出了具有不同優先級的任務列表。
我要在此處執行的操作是,如果任務數*優先級達到某些閾值,則可用性單元格的顏色會更改,描述單元格的值也會更改,例如“忙”
這是我到目前為止的代碼,當我更改任務列表的值時如何實現它以自動更改
Sub Avail_flag()
TasksRange = ActiveSheet.Range("P3:P6")
availcells = Range("M8,N8")
busyflag = 0
medBusyFlag = 0
highBusyFlag = 0
imedBusyFlag = 0
If Range("p4") > 0 Then
medBusyFlag = 1
ElseIf Range("p4") > 2 Then
medBusyFlag = 2
ElseIf Range("p5") > 0 Then
highBusyFlag = 1
ElseIf Range("p5") > 2 Then
highBusyFlag = 2
ElseIf Range("p6") > 0 Then
imedBusyFlag = 1
End If
For Each sell In lRange
busyflag = (medBusyFlag + (highBusyFlagI * 2) + (imedBusyFlag * 3))
If busyflag > 0 Then
For Each cell In Range(availcells)
cell.Color = green
Next
cell("N8").Value = "Occupied"
ElseIf busyflag > 3 Then
For Each cell In Range(availcells)
cell.Color = orange
Next
cell("N8").Value = "Busy"
ElseIf busyflag > 5 Then
For Each cell In Range(availcells)
cell.Color = red
Next
cell("N8").Value = "Unavailable"
Else
For Each cell In Range(availcells)
cell.Color = white
End If
End Sub
這是電子表格的捕獲(如果有幫助的話),突出顯示的灰色部分是發生所有魔術的地方
您可以為工作表使用Change
事件:
Private Sub Worksheet_Change(ByVal Target As Range)
我去了條件格式,這是我以前從未聽說過的。 在查找並學習如何使用它之后,到目前為止,它似乎是最好的選擇。 謝謝@mehow的幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.