Excel

【Excel】エクセルで個数を数える(〇や○や文字などの条件:関数:同じものは数えない:重複なし)方法【カウント】

当サイトでは記事内に広告を含みます

今回は、エクセル文字や文字列の個数を数える方法について説明します。

次のようなエクセルを例に、出席者の数、同じ名前の個数、重複しない名前の数を求めていきましょう。

 

エクセルで丸の個数を数える(〇や○)方法【関数】

まず出席者の(出欠が〇となっている数を数えてみましょう。

指定した範囲に含まれる文字の数を数える関数、COUNTIFです。COUNTIF、「COUNTIF(セル範囲,検索対象)」いう形で使います

検索対象は、文字列数値、セルの参照を入力することが可能です。それでは、使ってみましょう。

 

セルD2に、「COUNTIF(」を入力②B列を選択、③「,)」を入力すると、以下のような状態になります。

 

 

実行を押すと、計算結果が返ってきます。

 

エクセルでは、○が6個あるように見えますが、なぜか結果は3になっています。
なぜでしょう。

実は、とても分かりにくいのですが、○には二種類あるのです。「丸」と入力し、変換候補を出してみます。漢数字の〇と記号の○の二つが出てきます。先ほどのエクセルには、この二種類の○が混ざって入力されていたのです。

 

それでは、出席者数を正しく数えるために、漢数字の〇と記号の○の両方を数えるようにしたいと思います。漢数字の〇の個数記号の○の個数の和をとればよいので、次のように入力しましょう。

 

①セルD2に、「COUNTIF(B:B,)(記号のを入力、

続けて、「+」を入力、

「COUNTIF(B:B,)」(漢数字の○)を入力すると、以下のような状態になります。

 
実行を押すと、計算結果が返ってきます。

 

今度は、正しく出席者数「6」計算されていることがわかります。

 

なお、COUNTIFで和を取る以外の方法として、事前にエクセルの置換機能を使い、〇(漢数字)を〇(記号)に変換しておく対処も有効です。

また、エクセルに出欠を入力するときに、「リスト入力」の機能を使って、表記ゆれが起こらないようにしておく方法もお勧めです。

 

エクセルで指定文字の個数を数える方法【関数:文字列】

次に、「鈴木」の出現回数を数えてみましょう。

選択した範囲に含まれる文字の個数を数える場合、COUNTIFで対応可能です

それでは、早速やってみましょう。

①セルD2に、「COUNTIF(」を入力、②A列を選択、③「,鈴木)」を入力すると、以下のような状態になります。

 

実行を押すと、計算結果が返ってきます。

 

正しく、「鈴木」の出現数2」が求められていることがわかります。

 

エクセルで同じものは数えない(重複除外)で個数のカウントする方法【種類の個数を各々求める】

先ほどのエクセルでは、同じ名前を持つセルが複数存在しています。

次は、同じものは数えない(重複除外)、名前の数を数える方法について、二つのやり方説明します。

 

【方法1】エクセルのバージョンが、Excel2019以降、もしくは、Office365である場合は、UNIQUE関数+COUNTA関数を使うことができます。

 

Step1UNIQUE関数は、選択範囲の中から、重複しない値の一覧を求めることができますA列の各要素に対してUNIQUE関数を適用してみましょう。

 

D2セルに、「UNIQUE(A2:A15)」を入力すると、以下のような状態になります

 

 
実行を押すと、D列に重複のない名前の一覧が表示されることがわかります。

 

Step2次に、COUNTA関数を使い名前の数を数えます。COUNTA関数は選択範囲内の空白以外の数(文字、数字問わず)求める関数です。E2に「COUNTA(」と入力し、D2からD12のセルを選択すると、以下の状態になります。

 

最後に閉じ括弧「)」を入力し、実行を押すと、重複しない名前のが求められます

 

Step1とStep2をまとめて計算

Step1とStep2は、まとめて計算することができます。以下のようにUNIQUE関数を、COUNTA関数の引数とします。

 

実行を押すと、先ほどと同じ結果になっていることが分かると思います。

【方法2UNIQUE関数が使えない場合は、COUNTIF関数とSUM関数を使います。

Step1COUNTIF関数は、先ほど説明したように、検索対象が選択範囲の中に幾つあるかを数えるものですA列の各要素に対してCOUNTIF関数を適用してみましょう。

D2のセルに、「COUNTIF(A2:A15, A2:A15)」を入力します。
実行を押すと、以下のようになります。A列の各行の値が、A列中に幾つあるかが求められてます
Step2E列に1/名前の数=1/Dを計算します

 

Step3F2セルに、E列の和を計算します。F2セルの値が、同じものは数えない(重複除外した)、名前の数になります。

 

Step1~Step3を、一つの関数で表すと、以下のようになります。

 

実行を押すと先ほどと同じ結果になることがわかると思います。

 

まとめ

いかがでしたでしょうか。エクセルは、複数の関数を組み合わせることにより、色々な計算を行うことができます。ぜひ、試してみましょう。