知りたいこと
条件付き書式のルールによって空白時に着色されたセルを、
VBAによって上書きする形で着色させることができるのでしょうか。
###コード/試したこと
まず、条件付き書式によって、
入力必須という意味を込めて、
A1:A3のセルが空白だった場合にピンクで着色させるルールを追加しました。
その後、下記コードを書いてみました。
A1,A2,A3のセルが空白だった場合に、
それぞれのセルの、注意メッセージ出力と赤で着色させる処理です。
※A1,A2,A3のセルは左から優先順位が高く、
A1が空白だった場合にはA2,A3の処理は行われません。
VBA/SelectCell
1 2 3Sub SelectCell() 4 Call EmptyCheck(Range("A1")) 5 Call EmptyCheck(Range("A2")) 6 Call EmptyCheck(Range("A3")) 7End Sub 8 9 10 11
VBA/EmptyCheck
1Function EmptyCheck(cell) 2 If cell = "" Then 3 Dim Address As String 4 Address = cell.Address 5 MsgBox (Address + "が空欄です") 6 7 '着色処理 8 cell.Interior.ColorIndex = 3 9 10 End 11 12 Else 13 cell.Interior.ColorIndex = 0 14 15 End If 16End Function
結果、VBAの着色処理の赤いセルが現れることはありませんでした。
これは条件付き書式のルールが、VBAよりも優先されているということなのでしょうが、
VBAの処理を優先させることは可能なのでしょうか。
ご回答お待ちしております。