Excel VBAで指定したセル範囲の背景色が付いたセルの合計を計算する

指定した範囲の背景色が設定されているセルのみ合計するVBAです。




Homeに戻る > Excel セルのTipsへ

Excel VBAで指定範囲をループで背景色が付いているかどうかチェックし、付いていれば加算していきます。

ループはForEach文を使用し、背景色の判定はInterior.ColorIndexの取得値で行います。

ここではシートに合計ボタンのクリックイベントで、合計を開始します。

関連する「SUMIFS関数で複数条件に一致するセルの合計を求める」を掲載しています、参照してください。




実行Excel画面

A列とB列データの月曜日に青色の背景をつけています。

これのB列データの合計を行います。

結果はE5セルに表示します。

合計を計算するシート

Excel VBA実行コード

Option Explicit

Private Sub CommandButton1_Click()
    Dim rg As Range
    Dim fkei As Double
    
    fkei = 0
    For Each rg In Range("B1:B100")
        '背景色が付いていれば
        If rg.Interior.ColorIndex <> xlNone Then
            fkei = fkei + rg.Value
        End If
        
    Next
    '合計をセルにセット
    Range("E5") = fkei
End Sub


Homeに戻る > Excel セルのTipsへ

■■■
このサイトの内容を利用して発生した、いかなる問題にも一切責任は負いませんのでご了承下さい
■■■
当ホームページに掲載されているあらゆる内容の無許可転載・転用を禁止します


Copyright (c) Excel-Excel ! All rights reserved