Home » ExcelVBA Rangeオブジェクト » 条件付き書式 » 条件付き書式の背景色を取得するExcelマクロ

条件付き書式の背景色を取得するExcelマクロ

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

アクセスログを眺めていて、
「excel2010 vba 条件付き書式 セルの背景色取得」
という検索キーワードで、このサイト・インストラクターのネタ帳へ辿り着いた方がいらっしゃることに気づきました。

条件付き書式で指定したセルの塗りつぶし背景色を、

条件付き書式の塗りつぶし色を取得するExcelマクロ

取得したいということでしょうか。

いつものように参考になりそうなシンプルなマクロを作ってみました。

[スポンサードリンク]

条件付き書式のセルの塗りつぶし色(セルの背景色)を取得して、イミディエイトウィンドウに出力するマクロです。

条件付き書式のセルの塗りつぶし背景色を取得するサンプルマクロ

以下のSubプロシージャを実行すると、アクティブシートで設定されている条件付き書式の、セルの塗りつぶし背景色を表す数値が、イミディエイトウィンドウに出力されます。
Sub 条件付き書式の背景色を取得する()
 Dim fc As FormatCondition
 For Each fc In Cells.FormatConditions
  Debug.Print fc.Interior.Color
 Next fc
End Sub

オブジェクトブラウザーやローカルウィンドウを確認しておきましょう

For Each~Nextループを使い慣れている方にとって、全体の構造は特に難しいところはないプロシージャです。

おそらく課題は、以下のような、条件付き書式関連のオブジェクト構造でしょう。
 Rangeオブジェクト
  └FormatConditionsコレクションオブジェクト
    └FormatConditionオブジェクト
      └Interiorオブジェクト

オブジェクトブラウザーを使って、FormatConditionオブジェクトのInteriorプロパティで、Interiorオブジェクトを取得するオブジェクト式の意味を、確認したり、

条件付き書式の塗りつぶし色を取得するExcelマクロ

メニュー[表示]-[ローカルウィンドウ]からローカルウィンドウを表示しておいて、ショートカットキー[F8]で上記のSubプロシージャをステップ実行して、オブジェクト変数・fcの中身を見て、

条件付き書式の塗りつぶし色を取得するExcelマクロ

FormatConditonオブジェクトから、具体的にどのような情報を取得できるかを確認したりすることを、おすすめしておきす。

[スポンサードリンク]

Home » ExcelVBA Rangeオブジェクト » 条件付き書式 » 条件付き書式の背景色を取得するExcelマクロ

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

.