Home > 即効テクニック > Excel VBA > セル操作関連のテクニック > 数式の自動入力−選択範囲下のセルにCount関数を一括入力する

即効テクニック

セル操作関連のテクニック

数式の自動入力−選択範囲下のセルにCount関数を一括入力する

(Excel 97/2000)
VBAで数式を入力する際にはRnageオブジェクトのFormula、もしくはFomulaR1C1プロパティーに数式を代入します。
ここでは選択範囲内で値が入力されたセルの個数を数えるためにCount関数を入力する方法を検討します。VBAでカウントした結果をセルに表示するだけでは、あとからデータが入力、消去された場合に対応できないため、VBAによる数式設定が役に立つこともあるでしょう。
以下のサンプルは1列、または複数列にわたるデータ範囲を選択した上で実行してください。選択範囲の1つ下のセルにCount関数を入力します。選択範囲が複数列(列全体を選択しないようにしてください)の場合には、数式を一括入力します。
Sub InputFormulas()

Dim MyRange As Range
Dim intRow As Long

Set MyRange = Selection

intRow = MyRange.Rows.Count

MyRange.Offset(intRow).Resize(1).FormulaR1C1 = _
    "=COUNT(R[-" & intRow & "]C:R[-1]C)"
    
End Sub