3/04/2022

Excel。一部の文字が含まれているデータの合計を手早く算出したい【characters】

Excel。一部の文字が含まれているデータの合計を手早く算出したい

<SUMIF関数+ワイルドカード>

商品名に「定食」と定食が含まれている商品の合計を算出したい場合、どのようにしたらいいのでしょか?


次の表を用意してみました。


 

条件付きで合算する場合には、単一条件ならば、SUMIF関数。

複数条件ならばSUMIFS関数をつかうわけですが、検索条件が、「完全一致」でなければ、算出対象にはなりません。


B列の商品名をみると、「定食」という文字が入っている商品は、「A定食」「B定食」「A定食コーヒー付き」の3つあります。


出来れば、「分類」のような列に「定食」と入力されていれば、SUMIF関数で簡単に算出することができますが、この表にはありません。


「定食」という文字が含まれているものを算出したい場合には、「ワイルドカード」をつかうことで、手早く算出することができます。


F1に数式を設定します。

=SUMIF(B2:B11,"*"&E1&"*",C2:C11)


この数式で算出したのが、F1です。


SUMIF関数の引数で、ポイントになるのが、「検索条件」です。

最初の引数の「範囲」は、次の引数の「検索条件」が含まれているところになりますので、「B2:B11」。

今回は、オートフィルで数式をコピーする必要がないので、絶対参照は不要です。


2つ目の引数が、ポイントの「検索条件」です。

含まれるという条件にしたいので、ワイルドカードを、部分一致する文字を前後で囲みます。


よって、「検索条件」は「"*"&E1&"*"」とします。


E1には、「定食」という文字が入力されているので、それを使用していますが、「ワイルドカード」の「*(アスタリスク)」をE1の前後につけることで、「含まれる」という条件にすることができます。


注意点は「*(ワイルドカード)」を「”(ダブルコーテーション)」で囲む必要があります。

また、文字結合しますので、「&(アンパサンド)」をつかって接続します。


最後の引数は、「合計範囲」なので、「C2:C11」を設定します。


SUMIF関数など、検索条件がある数式の引数に、ワイルドカードを合わせてつかうことで、その文字を含むというような条件にすることができます。