Excel VBA

【Excel VBA】【マクロ】【Tips】TrueとFalseの数を数えるツール(ワークシート関数をVBAで使用)

こんにちは!Lenocoです。本日も見てくださりありがとうございます。

今回はワークシート関数についてのTips回です!!!

TrueとFalseの数を数えるツール

Excelファイルの修正前と修正後を比較したいことってありますよね。
その時に、数式で「=」(イコール)を使用して1セルずつ比較する方もいると思います。

イコールの右側のセルと左側のセルが一致していたら「True」、不一致であれば「Flase」と表示されます。
比較するセル数が多いときは、TrueとFalseが何件あるのか確認したいですよね。
空いているセルに、ワークシート関数の「Countif」を入力し、それぞれ数える方法があります。

実はワークシート関数、VBAでも使用できるんです!
※一部使用できないものもあるので、以下のページで確認してください。

今回は、ワークシート関数「Countif」をVBAで使用し、
選択肢範囲のTrueとFalseが何件ずつあるかダイアログボックスに出すマクロをご紹介します。

コード

Sub CountTrueFalse()

    Dim falseCnt As Long
    Dim trueCnt As Long
    
    falseCnt = WorksheetFunction.CountIf(Selection, False)
    trueCnt = WorksheetFunction.CountIf(Selection, True)
    MsgBox "False:" & falseCnt & "件" & vbLf & "True:" & trueCnt & "件", vbInformation

End Sub

コードの説明

まず、falseCntとtrueCntという数値型の変数を用意します。それぞれ、Falseの件数、Trueの件数を保存する用です。
「WorksheetFunction.CountIf」でワークシート関数「Countif」を使用しています。
引数の一つ目に、範囲を指定します。今回は選択された部分の件数を見たいので、「Selection」としています。
引数の二つ目に、検索条件を指定します。Flaseの場合は「False」、Trueの場合は「True」といれます。
そして最後にメッセージボックスでそれぞれの件数を表示します。

さいごに

以上となりますが、とってもシンプルでしたね!
リボンやクイックアクセスツールバーに登録しておけば、範囲を選択してボタンを押すだけですぐにTrueFalseの件数が分かります。

Lenoco

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です