【VBA】指定した文字列を含むデータの件数を取得する【COUNTIF関数】

VBAで
 ・指定した文字列を含むデータの件数を取得
できます!

VBAから
 ・ワークシート関数「COUNTIF関数」
を使用することで実現できます!

PR

VBAコード

ここでは例として、
 ・シート「sample」のB列「名前」が「みかんを含む」のを取得
します。

みかんを含むの件数は4件です。
みかんを含む件数4件です。
Option Explicit

Sub sample()

    Dim ws As Worksheet
    Dim startRange As Range
    Dim endRow As Double
    Dim endRange As Range
    Dim targetRange As Range
    Dim resultCount As Double

    '対象シートを取得
    Set ws = Worksheets("sample")
    
    '------------------------------------
    '「名前」列の対象範囲を取得
    '------------------------------------
    '開始セルを取得
    Set startRange = ws.Range("B3")
    '最終行を取得
    endRow = startRange.End(xlDown).Row
    '最終セルを取得
    Set endRange = ws.Cells(endRow, startRange.Column)
    '対象範囲を取得
    Set targetRange = ws.Range(startRange, endRange)
    
    '------------------------------------
    '指定した文字列を含むデータの件数を取得
    '------------------------------------
    resultCount = WorksheetFunction.CountIf(targetRange, "*" & "みかん" & "*")
    
    MsgBox ("指定した文字列を含むデータの件数:" & resultCount)

End Sub

「名前」列の対象範囲を取得します(19~25行目)。

「WorksheetFunctionオブジェクト」の「CountIf」メソッドにより、「指定した文字列を含むデータの件数を取得」を取得します(30行目)。
※「WorksheetFunctionオブジェクト」によりワークシート関数を使用できます。
※上記では文字列「みかん」を含む件数を取得しています。
※文字列「みかん」の前後に「*(アスタリスク)」を記載します。

PR

実行結果

指定した文字列を含むデータの件数を取得できました。

PR

参考①

条件に一致しないデータの件数を取得することもできます。

詳細は以下の記事をご確認ください。

PR

参考②

複数の条件を満たすデータの件数を取得することもできます。

詳細は以下の記事をご確認ください。