構文
構文は以下の通りです。
WorksheetFunction.CountIf(範囲, 条件)
解説
WorksheetFunctionは、ExcelVBAの組み込みオブジェクトで、Excelのワークシート関数をVBAから呼び出す際に使用します。CountIf関数は、指定された範囲内で、指定した条件に一致するセルの数を数える関数です。範囲は、数える対象のセル範囲を指定します。条件は、セルの値が満たすべき条件を文字列や数値で指定します。
プログラミング例
具体的なプログラミング例を紹介します。
Sub セル数を数える()
Dim セル範囲 As Range
Dim 数値の基準 As String
Dim 結果 As Long
' セル範囲を設定
Set セル範囲 = Worksheets("Sheet1").Range("A1:A10")
' 数値の基準を設定
数値の基準 = ">=10"
' CountIf関数で基準に合うセルを数える
結果 = WorksheetFunction.CountIf(セル範囲, 数値の基準)
' 結果を表示
MsgBox "10以上のセルの数: " & 結果
End Sub
Dim セル範囲 As Range
Dim 数値の基準 As String
Dim 結果 As Long
' セル範囲を設定
Set セル範囲 = Worksheets("Sheet1").Range("A1:A10")
' 数値の基準を設定
数値の基準 = ">=10"
' CountIf関数で基準に合うセルを数える
結果 = WorksheetFunction.CountIf(セル範囲, 数値の基準)
' 結果を表示
MsgBox "10以上のセルの数: " & 結果
End Sub
上記のプログラムは、セル範囲にはRangeを使って対象となるセル範囲(A1:A10)を設定します。数値の基準には、>=10(10以上という意味)を設定します。WorksheetFunction.CountIfを使って、指定したセル範囲内で基準に合うセルの数を数え、その結果を結果という変数に格納します。最後に、MsgBoxを使って、数えた結果をメッセージボックスで表示します。
まとめ
CountIf関数は、条件に一致するセルの数を範囲内から抽出するのに便利です。コードの流れとしては、範囲と条件を指定し、その条件に基づいて一致するセルの数を取得します。