For Each…NextでFlag(フラグ)をつかってセルの表示形式を調べて分岐処理を行い、セルの塗りつぶしをするコードを紹介します。
Sub 表示形式が標準のセルを水色で塗りつぶす()
Dim search_Cell As Range
Dim Flag As Boolean
For Each search_Cell In Range("A1:G21")
If search_Cell.NumberFormatLocal = "G/標準" Then '表示形式が標準の場合は。
search_Cell.Interior.ColorIndex = 8 'セルを水色で塗りつぶします。
Flag = True
End If
Next search_Cell
If Flag = True Then 'ループ終了後にメッセージを表示します。
MsgBox "セルの書式設定の表示形式が「標準」のセルを水色で塗りつぶしました。"
Else
MsgBox "セルの書式設定の表示形式が「標準」のセルはありません。"
End If
End Sub
指定したセル範囲内の表示形式を右から左に調べていき、条件によってセルの塗りつぶしを行うプログラムですが、条件式を変更すればいろいろなセル操作をすることができます。
