【VBA】テーブル化された表の条件の一致したセルの合計値を取得する

例えばテーブル「productテーブル」の
 ・列「productName」が”りんご”の
 ・列「price」の合計値
を取得できます!

合計値は500。


VBAから
 ・ワークシート関数「SumIf」
を使用することで、取得できます!

PR

VBAコード

ここでは例として、
 ・テーブル化された表「productテーブル」の
 ・列「productName」が”りんご”
 ・列「price」の合計値
します。

合計値は500。
Option Explicit

Sub sample()
    
    Dim productNameRange As Range
    Dim priceRange As Range
    Dim totalValue As Long
    
    With Worksheets("data").ListObjects("productテーブル")
        '列「productName」のセル範囲を取得
        Set productNameRange = .ListColumns("productName").Range
        '列「price」のセル範囲を取得
        Set priceRange = .ListColumns("price").Range
    End With
    
    '列「productName」が「りんご」の列「price」の合計値を取得
    totalValue = WorksheetFunction.SumIf(productNameRange, "りんご", priceRange)

    MsgBox ("りんごの合計値は『" & totalValue & "』です。")
    
End Sub

ワークシート関数「SumIf」の引数に以下を指定します。

第1引数・・・条件にしたいセル範囲
第2引数・・・条件の内容
第3引数・・・条件に一致した合計を取得したいセル範囲

PR

実行結果

テーブル化された表の条件の一致したセルの合計値を取得できました。

実行結果
PR

参考

上記で使用したワークシート関数「SumIf」の詳細については、公式サイトをご確認ください。

タイトルとURLをコピーしました