使用関数:COUNTIF、IF
アンケートに設置したチェックボックスのチェック数に上限を設けている場合、それを上回ってチェックされた時に注意を促すメッセージが表示されるようにします。COUNTIF関数でチェックされた数を数え、IF関数で上限を超えた時の動作を指定します。
COUNTIF関数でTRUEを数える
▶チェックボックスの設置・基本の終章で「リンクするセル」に「TRUE」と「FALSE」を表示させました。「TRUE」はチェックが入ったということ、「FALSE」はチェックされていないということです。
チェックが入った「TRUE」の数をCOUNTIF関数で取得することで、いろいろな応用が利きます。例えば、忘れ物チェックシートで「全て確認」のマークを表示させるとか、「賛成」「反対」を集計するとか、男女の割合や出席率を表示させるとかに使えますね。
COUNTIFは「数式」タブの「関数ライブラリ」→「その他の関数」→「統計」に属す関数で、指定した範囲内で条件と合致するデータの個数を求めます。
ダイアログを開いて、最初の引数「範囲」に「TRUE」「FALSE」の並ぶセル範囲を指定します。
次の引数「検索条件」に「TRUE」と入れます。数式の結果に「4」と返りましたね。
数式は「=COUNTIF(C17:G20,TRUE)」となります。「C17からG20のセル範囲で、TRUEが幾つあるか数える」
この数式の「=」を除いた部分をコピーしておきましょう。
IF関数でチェック数の超過を警告
コピーした数式をIF関数の「論理式」に入れ子して組み立てます。
ここでは、チェックの数に「3つまで」という上限を設けているケースで、4以上チェックが付いた時点で注意喚起のメッセージが表示されるようにします。
メッセージの表示位置を16行目に決めて、文字数分を範囲選択し、右クリック→「セルの書式設定」→「配置」→「横位置」を「選択範囲内で中央」にしておきます。
ついでに「フォント」も目立つ感じにしておきましょう。とりあえず、色を赤にして太字に設定してみました。
セル範囲を選択したままで、「数式」タブ「関数ライブラリ」→「論理」から「IF」をクリック。
引数「論理式」にコピーしておいたCOUNTIFの数式をペースト。続けて、「>3」と入力します。下図だと前が切れてて判りにくいですが、「COUNTIF(C17:G20,TRUE)>3」と入っています。「TRUEの数が3より多ければ・・・」というIF文です。
比較記号(><=)の使い方は▶IF関数の使い方|基本|「論理式」の書き方いろいろに詳しく
「真の場合」に警告メッセージを入れます。「偽の場合」は何も表示させないということで空白を意味する「""」(ダブルクォーテーション2つ)を入れます。
最終的な数式は「=IF(COUNTIF(C17:G20,TRUE)>3,"NG! 規定の数を超えて選んでいます","")」。「範囲内のTRUEの数が3より大きければ、NG! 規定の数を超えて選んでいますと表示され、3以下なら何も表示されない」
既に範囲内で4つチェックを入れているので、警告文が表示されています。
TRUEとFALSEの文字色を白にし、枠線を非表示にして最終的な動作と見栄えを確認します。チェックを一つ外して3つにすれば、警告文は消えます。
チェックボックスの設置・基本