簡體   English   中英

VBA Excel自動更改顏色和值

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM