条件付き書式の一覧を、リストボックスに表示する

女性陣の、この言葉が切っ掛けだった。

「条件付き書式って、知らない間に増殖してない?」
「そうそう。1個だけ残して、後は消したいよね」

これだ。早速、挑戦してみよう。
f:id:Infoment:20181220220311p:plain
そもそも全部消したいのなら、この呪文を唱えればいい。

Cells.FormatConditions.Delete

問題は、大量に増殖した中の1個だけを残したい場合だ。
そのためには、残したい一個を目で見て確認したい。

そこで、ユーザーフォームに条件付き書式を表示してみることにした。
まず題材となるは、以前紹介した「カレンダー」のシート。
f:id:Infoment:20181220220524p:plain
infoment.hatenablog.com
こちらには、曜日に合わせて文字色を変える条件付き書式が、ふんだんに盛り込まれている。

条件付き書式は、FormatConditionsコレクションで設定されている。そこでまず、お試しでこんなものを作成してみた。
f:id:Infoment:20181220220912p:plain

ユーザーフォーム初期化時に、リストボックスに、条件付き書式の「式」の部分を表示してみる。

Private Sub UserForm_Initialize()
    Dim f As FormatCondition
    For Each f In ActiveSheet.Cells.FormatConditions
        ListBox1.AddItem f.Formula1
    Next
End Sub

結果が↓こちら。シート内から、条件付き書式を全て引っ張り出してきた。
f:id:Infoment:20181220221133p:plain

なかなか良い感じだ。
見切り発車で広げたこの風呂敷。上手く畳めれば、ご喝采を。

これでまた一歩、野望に近づいた。

参考まで。