- ベストアンサー
VBAでExcel関数を使って範囲内の5以上の数を数える方法と範囲を変更する方法
- VBAを使ってExcel関数のcountifを利用して範囲内の5以上の数を数える方法と、範囲を自由に変更する方法について説明します。
- VBAでのExcel関数利用方法について素人の方でもわかりやすく解説します。countif関数を使って範囲内の数値を条件でカウントする方法と、inputboxを使って範囲を変更できるようにする方法について詳しく説明します。
- VBAでExcel関数を活用する方法について詳しく解説します。countif関数を使用して範囲内の数値を条件でカウントする方法と、inputboxを使って範囲を自由に変更できるようにする方法を紹介します。Excelの関数をVBAで利用することで、より高度な操作が可能になります。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
その場合は次のようにします。 Range("E2") = Application.WorksheetFunction.CountIf(Range("a1:a" & 変数), ">5")
その他の回答 (1)
- peso
- ベストアンサー率41% (40/97)
>例えば、range("A1:D10")において 5以上の数を・・・ ワークシート関数を使うためには Application.WorksheetFunction.関数 とします。 例) Range("E1") = Application.WorksheetFunction.CountIf(Range("A1:D10"), ">5") 選択範囲にテキストボックスを使う場合は CountIf(Range("A1:D10"), ">5") の部分を CountIf(Range(テキストボックス名), ">5") にします。 また、 CountIf(Selection, ">5") にすると選択範囲が適用されます。
補足
pesoさんありがとうございます。大変たすかりました。大感激です。ところで下 のようなことはできるのでしょうか?追加で教えて頂けると助かります。 Sub Macro1() Dim 変数 変数 = InputBox("変数を入力してください") Range("E2") = Application.WorksheetFunction.CountIf(Range(変数), ">5") 'とやり A1:A13を入力すると出来ました!(大感激!!) 'ところで、テキストボックスにA1:A13に入力すると大変なので、A1:A×と固定してしまい 'テキストボックスに数字を入力するだけで範囲を指定させることはできないのでしょうか? '下のようにしてみましたが、デバックになってしまいました。 Range("E2") = Application.WorksheetFunction.CountIf(Range("a1:a変数"), ">5") End Sub
お礼
pesoさん どうも度々 ありがとうございました。なにぶんにも、VBA等のプログラムなるものは、右も左もわからないのでチンプンカンプンな質問でしたが、ごていねいにわかりやすく教えてくださいまして大変助かりました。