データを数える「COUNTIF」関数の基本を覚える
<※本稿の元記事は、『エク達』に掲載した『データを数える「COUNTIF」関数の基本を覚える』という記事です。>本シリーズ『集計を極める』では、エクセルを使用していて集計するテクニックについて、いくつか取り上げていきたいと思っている。本稿で取り上げるのは、「COUNTIF関数」だ。
※本稿の元記事は、『エク達』に掲載した『条件付き集計で計算も楽々!SUMIFの基本を覚える』という記事です。『エクセルの達人(エク達)コンテンツ移管につきまして』でもお伝えしましたが、今後、少しずつ『エク達』側のコンテンツをこちらに転記していきます。基本的にはこれから当面、毎週土日の午後は、『エク達』のコンテンツをこちらに転載していく予定です<文体等については元記事のとおりです>。
『条件付き集計で計算も楽々!SUMIFの基本を覚える』では、「エクセル達人」の第一歩である「SUMIF関数」について取り上げた。今後の当シリーズでは、条件付集計など、徐々に高度な集計テクニックを紹介していきたいと考えている。
さて、集計テクニックを極めるに当たり、基礎となる関数がいくつかある。
そのひとつが、「COUNTIF関数」だ。
前回の『条件付き集計で計算も楽々!SUMIFの基本を覚える』で紹介したのが、こんなデータ(図表1)だ。
図表1 新型コロナウイルス感染症用のワクチン接種実績データ
これは、政府CIOポータルサイト『新型コロナワクチンの接種状況(一般接種(高齢者含む))概要』のページで手に入る「ワクチン接種記録システム(VRS)」の生データを加工したものであり、具体的なデータの取得方法や取り出し方については前稿をご参照頂きたい。
(※なお、該当する生データについては、PC環境があることが望ましいが、慣れれば誰にでも簡単に取得できる。)
このワークシートをしげしげと眺めてみよう。
構成要素は「都道府県」(数字2ケタのコード)、「男女の別」(Mが男性、Fが女性、Uが性別不祥)、「年齢」(『-64』が64歳以下、『65-』が65歳以上、『UNK』が年齢不詳)、「回数」はその接種が「1回目」か「2回目か」という区分だ。
前回のシートでは、日付ごとに接種回数を合計する、という作業をやったわけだが、今回は「データの数」そのものを集計する方法を紹介したい。
COUNTIFの具体的な書式は、次のとおり。
COUNTIF(範囲、検索条件)
ここでは「年齢」の部分で集計してみよう。
まずは、「-64」、「65-」、「UNK」の3つの文字列を空白のシートに入力する(図表2)。
図表2 年齢の3区分
次に、B列にデータ数を入力しよう(図表3)。
図表3 計算式の入力
B2セルに次の計算式を入力する。
=countif(Sheet1!C:C, A2)
数式バーを表示している人は、数式バーに数式が表示される(図表4)。
図表4 数式入力中
そして、エンターキーを入力すれば、該当する年齢階層のデータ数が一発で求まる(図表5)。
図表5 データ数の計算
「コントロールキー」を押しながら「D」を入力すれば、下のセルにそのままコピーできる(図表6)。
図表6 Ctrl+D
以上の「COUNTIF関数」は、前回の「SUMIF関数」とあわせて、是非とも業務にご活用いただきたい基本数式のひとつである。
2021/10/17 12:00追記
興味深いもので、『エク達』側に、同サイトが当『新宿会計士の政治経済評論』と同一著者のサイトであると表記をした瞬間、急にアクセスが激増したようです。それまで1日数件もなかったページビュー(PV)がいきなり一千件近くに膨れ上がり、個人的には多少驚いている次第です。
本文は以上です。
日韓関係が特殊なのではなく、韓国が特殊なのだ―――。
— 新宿会計士 (@shinjukuacc) September 22, 2024
そんな日韓関係論を巡って、素晴らしい書籍が出てきた。鈴置高史氏著『韓国消滅』(https://t.co/PKOiMb9a7T)。
日韓関係問題に関心がある人だけでなく、日本人全てに読んでほしい良著。
読者コメント欄はこのあとに続きます。当ウェブサイトは読者コメントも読みごたえがありますので、ぜひ、ご一読ください。なお、現在、「ランキング」に参加しています。「知的好奇心を刺激される記事だ」と思った方はランキングバナーをクリックしてください。
ツイート @新宿会計士をフォロー
読者コメント一覧
※【重要】ご注意:他サイトの文章の転載は可能な限りお控えください。
やむを得ず他サイトの文章を引用する場合、引用率(引用する文字数の元サイトの文字数に対する比率)は10%以下にしてください。著作権侵害コメントにつきましては、発見次第、削除します。
※現在、ロシア語、中国語、韓国語などによる、ウィルスサイト・ポルノサイトなどへの誘導目的のスパムコメントが激増しており、その関係で、通常の読者コメントも誤って「スパム」に判定される事例が増えています。そのようなコメントは後刻、極力手作業で修正しています。コメントを入力後、反映されない場合でも、少し待ち頂けると幸いです。
※【重要】ご注意:人格攻撃等に関するコメントは禁止です。
当ウェブサイトのポリシーのページなどに再三示していますが、基本的に第三者の人格等を攻撃するようなコメントについては書き込まないでください。今後は警告なしに削除します。なお、コメントにつきましては、これらの注意点を踏まえたうえで、ご自由になさってください。また、コメントにあたって、メールアドレス、URLの入力は必要ありません(メールアドレスは開示されません)。ブログ、ツイッターアカウントなどをお持ちの方は、該当するURLを記載するなど、宣伝にもご活用ください。なお、原則として頂いたコメントには個別に返信いたしませんが、必ず目を通しておりますし、本文で取り上げることもございます。是非、お気軽なコメントを賜りますと幸いです。
コメントを残す
【おしらせ】人生で10冊目の出版をしました
自称元徴用工問題、自称元慰安婦問題、火器管制レーダー照射、天皇陛下侮辱、旭日旗侮辱…。韓国によるわが国に対する不法行為は留まるところを知りませんが、こうしたなか、「韓国の不法行為に基づく責任を、法的・経済的・政治的に追及する手段」を真面目に考察してみました。類書のない議論をお楽しみください。 |
【おしらせ】人生で9冊目の出版をしました
日本経済の姿について、客観的な数字で読んでみました。結論からいえば、日本は財政危機の状況にはありません。むしろ日本が必要としているのは大幅な減税と財政出動、そして国債の大幅な増発です。日本経済復活を考えるうえでの議論のたたき台として、ぜひとも本書をご活用賜りますと幸いです。 |
これまで条件付きの集計をやるときには、もっぱらDSUMとかDCOUNTとかのデータベース関数を使っていたので、COUNTIFも、前回のSUMIFも存在すら知りませんでした。
2つ以上の条件を組み合わせたり、ある区間の値に限定して集計をおこなうといった使い方をする場合には、条件を記載したセル範囲が指定できるデータベース関数に頼るしかないと思いますが、条件として単純に数値、あるいは特定のセルの値を指定すれば足りるといった、普通やる集計の場合には、*IF関数の方が便利そうですね。これからは使ってみようと思います。
データベース関数は、引数の部分が正しく記述されているかどうか、十分吟味しておかないと、とんでもない値を出してくることがありますから。
>2つ以上の条件を組み合わせたり
関数を入れ子にして実現できます。でもエクセル関数だと途端に読みにくくなってすぐバグってしまうので、一旦ワーク用のセルに吐き出して、それを入力範囲にして次の関数に処理させるのが普通かな。