Vba で counta 関数を使用する方法 (例付き)
VBA でCountAメソッドを使用すると、特定の範囲内の空白以外のセルの数をカウントできます。
このメソッドを実際に使用する一般的な方法は次のとおりです。
SubCountARange ()
Range(" C1 ") = WorksheetFunction.CountA(Range(" A1:A10 "))
End Sub
この特定の例では、範囲A1:A10内の空でないセルの数をカウントし、結果をセルC1に表示します。
メッセージ ボックスに空白以外のセルの数を表示したい場合は、次の構文を使用できます。
SubCountARange ()
'Create variable to hold results of CountA
Dim counta As Single
'Calculate number of non-empty cells in range
counta = WorksheetFunction.CountA(Range(" A1:A10 "))
'Display the result
MsgBox " Number of Non-Empty Cells in Range: " & counta
End Sub
次の例は、Excel の次の値の列でこれらの各メソッドを実際に使用する方法を示しています。
例 1: 範囲内の空白以外のセルをカウントし、結果をセルに表示します。
A1:A10の範囲内の空白以外のセルの数を計算し、その結果を特定のセルに表示するとします。
これを行うには、次のマクロを作成できます。
SubCountARange ()
Range(" C1 ") = WorksheetFunction.CountA(Range(" A1:A10 "))
End Sub
このマクロを実行すると、次の出力が表示されます。
セルC1に値7が含まれていることに注目してください。
これは、 A1:A10 の範囲内に空ではないセルが 7 つあることを示しています。
例 2:範囲内の空白以外のセルをカウントし、結果をメッセージ ボックスに表示します。
代わりに、範囲A1:A10内の空白でないセルの数をカウントし、結果をメッセージ ボックスに表示するとします。
これを行うには、次のマクロを作成できます。
SubCountARange ()
'Create variable to hold results of CountA
Dim counta As Single
'Calculate number of non-empty cells in range
counta = WorksheetFunction.CountA(Range(" A1:A10 "))
'Display the result
MsgBox " Number of Non-Empty Cells in Range: " & counta
End Sub
このマクロを実行すると、次の出力が表示されます。
メッセージ ボックスは、範囲A1:A10に空白でないセルが7 つあることを示しています。
列全体の空白以外のセルの数をカウントしたい場合は、代わりに「A:A」と入力できることに注意してください。
これにより、列 A すべての空でないセルの数が計算されます。
注: VBA CountAメソッドの完全なドキュメントはここにあります。
追加リソース
次のチュートリアルでは、VBA で他の一般的なタスクを実行する方法について説明します。
VBA: AVERAGEIF 関数と AVERAGEIFS 関数の書き方
VBA: SUMIF 関数と SUMIFS 関数の書き方
VBA: COUNTIF 関数と COUNTIFS 関数の書き方