Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1145 / 13645 ツリー ←次へ | 前へ→

【76064】条件付き書式について ken 14/9/12(金) 13:08 質問[未読]
【76065】Re:条件付き書式について 独覚 14/9/12(金) 13:36 回答[未読]
【76066】Re:条件付き書式について ken 14/9/12(金) 14:19 お礼[未読]

【76064】条件付き書式について
質問  ken  - 14/9/12(金) 13:08 -

引用なし
パスワード
   いつもお世話になっています。
どうしても解らないので質問させて下さい。

セルに入力された数値を条件付き書式で色を赤に変更しています。
例えば=2>A1の場合FONT色を赤にする条件がA1〜A10に入っているとします。
条件付き書式により赤になっているセルが有ったら "規格外れです"のメッセージを出したいのです。
Sub test()
  Dim i As Integer
  For i = 1 To 10
    If Cells(i, 1).Font.Color = RGB(255, 0, 0) Then
      MsgBox "規格外れです"
      Exit For
    End If
  Next
End Sub
この場合直接FONT色を変更した場合はメッセージが出せますが条件付き書式だとダメみたいです。
条件付き書式の色を判断する事は可能でしょうか?
どなたかお教えください。

【76065】Re:条件付き書式について
回答  独覚  - 14/9/12(金) 13:36 -

引用なし
パスワード
   ▼ken さん:
Excelのバージョンはなんでしょう?
2010からはRangeオブジェクトにDisplayFormatというプロパティが追加されていて
表示形式・条件付き書式を問わずに現在のセルの書式などを調べられます。
(ただし、ユーザー定義関数では使えませんが)

Excelが2010以降であれば
>If Cells(i, 1).Font.Color = RGB(255, 0, 0) Then

>If Cells(i, 1).DisplayFormat.Font.Color = RGB(255, 0, 0) Then
としてみてください。

【76066】Re:条件付き書式について
お礼  ken  - 14/9/12(金) 14:19 -

引用なし
パスワード
   独覚 さん 早々の回答有難う御座います。

家のPCは2010で下記の記述で出来ました。
会社のPCは2010ですが保存形式は2003だと思います。
今日はお休みなので会社で試せませんが
やってみたいと思います。

有難う御座いました。

>>If Cells(i, 1).DisplayFormat.Font.Color = RGB(255, 0, 0) Then
>としてみてください。

1145 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free