「vba・条件付き書式してあるセルに線を引く方法」
という検索キーワードに気づきました。
条件付き書式の設定されているセルを、VBAを使って目立たせたいということです。
条件付き書式設定済みのセルを目立たせるサンプルマクロ
以下のSubプロシージャを実行すると、アクティブシートで条件付き書式の設定されているセルに、緑色の斜め罫線が引かれます。
On Error GoTo ErrHndl
Dim rng As Range
Set rng = Cells.SpecialCells(xlCellTypeAllFormatConditions)
With rng.Borders(xlDiagonalUp)
.Color = RGB(0, 255, 0)
.LineStyle = xlContinuous
.Weight = xlThick
End With
Exit Sub
Err.Clear
MsgBox "アクティブシートに、条件付き書式は設定されていません。"
End Sub
サンプルマクロについて
RangeオブジェクトのSpecialCellsメソッドの引数に、条件付き書式を意味する定数xlCellTypeAllFormatConditionsを指定して、
Dim rng As Range
Set rng = Cells.SpecialCells(xlCellTypeAllFormatConditions)
該当するセルを表すRangeオブジェクトを取得し、オブジェクト変数rngにセットします
その後、取得したRangeオブジェクトに対して、罫線を引く処理を行っています。
With rng.Borders(xlDiagonalUp)
.Color = RGB(0, 255, 0)
.LineStyle = xlContinuous
.Weight = xlThick
ここでは定数xlDiagonalUpを使って、右上がりの斜め罫線にしています。
条件付き書式の設定されているセルが存在しないときに、
Dim rng As Range
Set rng = Cells.SpecialCells(xlCellTypeAllFormatConditions)
を実行すると、実行時エラーが発生しますから、
On Error GoTo ErrHndl
ErrHndl:
Err.Clear
MsgBox "アクティブシートに、条件付き書式は設定されていません。"
と、エラートラップを入れています。
Home » Excel VBA Rangeオブジェクト » 条件付き書式 » 条件付き書式設定済みのセルを目立たせるExcelマクロ