FormatConditionsコレクションのAddメソッド(またはAddUniqueValuesメソッド)を使い、セル・範囲内で重複した/一意の値にのみ書式を変える条件付き書式を適用する方法についてです。
FormatConditions.Addメソッド
条件付き書式の作成(一意/平均)
FormatConditions.Add(Type:=xlUniqueValues).適用する書式
※DupeUniqueプロパティが1なら重複、0なら一意の値に書式設定
FormatConditions.Add(Type:=xlUniqueValues).適用する書式
※DupeUniqueプロパティが1なら重複、0なら一意の値に書式設定
FormatConditions.Addメソッドについての解説はこちらをご参照ください。
この記事では、条件付き書式でいう一位の値または重複する値だけを書式設定をマクロで設定しようと思います。
' vba
Range("A1:A10").FormatConditions.Add(Type:=xlUniqueValues).Interior.Color = RGB(250, 100, 120)
範囲の後ろにFormatConditions.Addを付け、引数のTypeはxlUniqueValuesまたは8を設定し、その後ろに適用したい書式を記入します。
実行すると、一意の値(初期値)に対して書式が適用されます。重複する値に対して書式を適用したい場合は、DupeUniqueプロパティを変更する必要があります(後述)。
FormatConditions.AddUniqueValuesメソッド
条件付き書式の作成(一意/平均)
FormatConditions.AddUniqueValues.適用する書式
※DupeUniqueプロパティが1なら重複、0なら一意の値に書式設定
FormatConditions.AddUniqueValues.適用する書式
※DupeUniqueプロパティが1なら重複、0なら一意の値に書式設定
' vba
Range("A1:A10").FormatConditions.AddUniqueValues.Interior.Color = RGB(250, 100, 120)
先ほどのコードのFormatConditions.Add(Type:=xlUniqueValues)は、FormatConditions.AddUniqueValuesと書いても同じ意味になります。
どっちでも同じ動きをするので、好きなほうを使えばOKです。
AddUniqueValuesメソッドは、一意/重複の条件付き書式専用のメソッドです。
AddUniqueValuesメソッドは、一意/重複の条件付き書式専用のメソッドです。
DupeUniqueプロパティ(一意/重複)
' vba
With Range("A1:A10").FormatConditions.AddUniqueValues
.DupeUnique = xlDuplicate
.Interior.Color = RGB(250, 100, 120)
End With
範囲内の条件付き書式の対象を重複/一意で切り替えるには、書式と同じようにしてDupeUniqueプロパティを指定します(参照:XlDupeUnique列挙型定数)。
値にxlDuplicateまたは1を指定すれば重複した値に書式が適用され、
値にxlUniqueまたは0を指定すれば、一意の値に書式が適用されます。
Excel(エクセル):条件付き書式
Excelの条件付き書式は、読んで字のごとく「特定の条件を満たした時にだけ指定した書式を適用する」機能です。また、セルの内容をより視覚的に表現する機能もいくつか用意されています。
書式には罫線、フォント、文字色、背景色などが含まれ、十分に...
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。
やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
コメント