Home » Excel VBA Rangeオブジェクト » 条件付き書式 » 条件付き書式設定済みのセルを目立たせるExcelマクロ

条件付き書式設定済みのセルを目立たせるExcelマクロ

対象:Excel2010, Excel2013, Windows版Excel2016

条件付き書式設定済みのセルを目立たせるExcelマクロ

「vba・条件付き書式してあるセルに線を引く方法」
という検索キーワードに気づきました。

条件付き書式の設定されているセルを、VBAを使って目立たせたいということです。

[スポンサードリンク]

条件付き書式設定済みのセルを目立たせるサンプルマクロ

以下のSubプロシージャを実行すると、アクティブシートで条件付き書式の設定されているセルに、緑色の斜め罫線が引かれます。

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

ErrHndl:
 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マクロ

Copyright © インストラクターのネタ帳 All Rights Reserved.

.