[英]Highlight cell from another cells value (dyanmic range)
在挖掘了非常相似的帖子后,我無法找到滿足我獨特要求的解決方案。 到目前為止,我已經能夠使用這些線程構建一個公式,但我只是對有兩個 IF 語句感到困惑。
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Address = "$U$14" Then
Dim rng As Range, cell As Range, LastRow As Long
With Sheets("Sheet4")
LastRow = .Range("B" & .Rows.Count).End(xlUp).Row
End With
Set rng = Range("A2:A" & LastRow)
'If O2:O200 is BLANK then highlight corresponding row (xlUp) in Column A yellow
For Each cell In rng
cell.Interior.ColorIndex = 27
Next
Else
cell.Interior.ColorIndex = 2
End If
End Sub
我想要做的是對於從 O2 到 O & LastRow 的每個單元格,如果它是空白的,然后突出顯示 A 列中的相應行(xlUp) 。
(xlUp) - 因為我希望它突出顯示這個人的名字,而不僅僅是行,這意味着那個人還沒有收集到一個項目。
然后當點擊單元格 U14 時將其設置回正常。
對不起,它太草率了,我試着把我自己能想到的盡可能多的放進去。
感謝 Scott Craner 使用一些巧妙的條件格式解決了我的突出顯示問題,為了解決通過激活單元格來切換條件格式的能力,我做了以下事情以防萬一有人想知道:
我在刪除所有格式並選中“如果為真則停止”的功能上方設置了條件格式。 使用的公式是:
=NOT($U$12)
'U12 is the dedicated cell for displaying TRUE or FALSE, use any cell
然后,我使用以下 VBA 基本上將單元格切換為真或假,然后觸發無格式條件為真,如果選擇特定單元格,則為假:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Address = "$U$14" Or ActiveCell.Address = "$U$13" Then
Range("$U$12").Value = True
Else
Range("$U$12").Value = False
End If
End Sub
現在,每當我突出顯示單元格 U13 或 U14 時,A 列中尚未收集的所有名稱都將突出顯示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.