Excel VBA 質問スレッド №2022 (未解決)

条件付き書式で色付けしたセルの合計を求める

投稿者 : 南     投稿日時 : 2024/10/10(Thu) 20:14:21     OS : 未指定     EXCEL : 未指定
L3セルからEB3セルの範囲を条件付き書式で、条件に合えば黄色に色付けするようにしています。
色の取得は
Sub TEST()
    Debug.Print Range("L3").DisplayFormat.Interior.ColorIndex
End Sub
で取得し、イミディエイトウィンドウで6でした。

これを元にL3セルからEB3セルの範囲のColorIndex6の数の合計をK3セルに求めたくて下記コードを作成しました。
結果は範囲内で色付けされたセルがあるのに、ゼロでした。
お気づきの箇所あればご教授いただけないでしょうか。よろしくお願いします。

Sub ColorIndex6のtest()
    Dim rng As Range
    Dim cell As Range
    Dim total As Double

    ' L3からEB3までの範囲を設定
    Set rng = Range("L3:EB3")
    
    ' 合計を初期化
    total = 0
    
    ' 各セルをループしてColorIndexを確認
    For Each cell In rng
        If cell.Interior.ColorIndex = 6 Then ' ColorIndexが6の場合
            total = total + cell.Value ' 値を合計
        End If
    Next cell
    
    ' K3セルに合計を出力
    Range("K3").Value = total
End Sub

スポンサーリンク
[返信 1] Re : 条件付き書式で色付けしたセルの合計を求める
投稿者 : ピロリ     投稿日時 : 2024/10/11(Fri) 00:43:43
Sub TEST() に記述している「.DisplayFormat」プロパティが漏れているからでしょう。

 If cell.Interior.ColorIndex = 6 Then
       ↓
 If cell.DisplayFormat.Interior.ColorIndex = 6 Then

[返信 2] Re : 条件付き書式で色付けしたセルの合計を求める
投稿者 : 南     投稿日時 : 2024/10/12(Sat) 09:11:14
ありがとうございます。おかげさまで解決しました。

当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2025-07-05 17:20:29 )
タイトルとURLをコピーしました