Page 134 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼条件付書式設定がTRUEのセルを選びたい ぉょょ 02/9/26(木) 15:04 ┗Re:条件付書式設定がTRUEのセルを選びたい こうちゃん 02/9/26(木) 20:54 ┗Re:条件付書式設定がTRUEのセルを選びたい ぉょょ 02/9/27(金) 11:34 ─────────────────────────────────────── ■題名 : 条件付書式設定がTRUEのセルを選びたい ■名前 : ぉょょ ■日付 : 02/9/26(木) 15:04 -------------------------------------------------------------------------
こんにちゎ〜。 条件付き書式設定で、 値が1の時にセルの背景を赤色にしている範囲と 値が2の時にセルの背景を赤色にしている範囲があるんですが 赤になっているセルのアドレスを取得することは可能でしょうか? For Each MyObject In Sheets("詳細").Cells.SpecialCells(xlCellTypeAllFormatConditions) If MyObject.FormatConditions(1).Interior.ColorIndex = 3 Then MsgBox "赤です!" & MyObject.Address Else MsgBox "赤じゃないよ!!" End If Next こう作ってみたんですが、条件付書式設定しているセルで値が1でも2でも ないセルまで、「赤です!」のメッセージが表示されてしまったので・・・ どなたか、よろしくお願いします。 |
ぉょょ さん、こんばんは >条件付き書式設定で、 >値が1の時にセルの背景を赤色にしている範囲と >値が2の時にセルの背景を赤色にしている範囲があるんですが >赤になっているセルのアドレスを取得することは可能でしょうか? > If MyObject.FormatConditions(1).Interior.ColorIndex = 3 Then この書き方ですと、条件付書式に設定した色が赤のセルはすべてTrueになってしまいます。 つまり条件付書式が設定してあるすべてのセルがTrueになってしまうので >こう作ってみたんですが、条件付書式設定しているセルで値が1でも2でも >ないセルまで、「赤です!」のメッセージが表示されてしまったので・・・ ということになります。 つまり、判定条件を、条件付書式の書式が赤で、条件に当てはまるセルの場合Trueと判定する必要があるのです。 「例えば式1と式2の間の値の場合背景を赤にする」条件付書式の場合は、例えばこんな感じで判定します。 Sub test2() Dim myobject As Range For Each myobject In Sheets("詳細").Cells.SpecialCells(xlCellTypeAllFormatConditions) If myobject.FormatConditions(1).Interior.ColorIndex = 3 _ And myobject.Value >= myobject.FormatConditions(1).Formula1 _ And myobject.Value <= myobject.FormatConditions(1).Formula2 _ Then MsgBox "赤です!" & myobject.Address Else MsgBox "赤じゃないよ!!" End If Next End Sub |
▼こうちゃんさん、ありがとうございます!! >> If MyObject.FormatConditions(1).Interior.ColorIndex = 3 Then >この書き方ですと、条件付書式に設定した色が赤のセルはすべてTrueになってしまいます。 >つまり条件付書式が設定してあるすべてのセルがTrueになってしまうので > >>こう作ってみたんですが、条件付書式設定しているセルで値が1でも2でも >>ないセルまで、「赤です!」のメッセージが表示されてしまったので・・・ > >ということになります。 おっしゃるとおりですね・・・。早速やってみます。 |