SUMIFの条件式にワイルドカードを使ってみよう
条件の合った行の数値だけを合計できる、SUMIFという関数があります。
メンテナンスしやすいファイルを目指して、検索条件にワイルドカードを使う練習をしてみましょう。
はじめる前に
まずはSUMIFの式がどういうものか。
検索条件を範囲から探し出し、合計範囲の数値を合計する。
という関数です。
次にワイルドカードとは何かというと、何が入っていてもOKという、特殊な条件指定ができる記号の事です。
どういう事かは、ここではまず*と?という2種類がある。という事だけ覚えておいてください。
あとは文章で説明するより、実際に使っているところを見た方が早いです。
実戦
実際にワイルドカードを使って、いろんな検索パターンを試してみましょう。
基本形
ワイルドカードを使うまえに、まず抑えるべきは基本形。
ワイルドカード(*)
条件式にはワイルドカードが使えます。
セイウチ* という条件にすることで、先頭がセイウチで始まっていれば、後ろはどうなっててもよいという条件になります。
ちなみに、*セイウチ* というように、前後を*で囲むことで、セイウチという文字さえ含まれてればいいという条件になります。
ワイルドカード(?)
ワイルドカードには*の他に、?もあります。
*はなんでもOKなのに比べ、?は1文字分なら何がはいっててもOKというものです。
名前のように文字数が可変する場合は使いにくいですが、コードのように桁数が決められてる場合に使えます。
下のサンプルのように、コード体系がしっかりルール決めされてる場合に有効です。
検索条件を他のセルに書く
先の例をもとに、各都道府県ごとに集計できる表を作ろうとすると
=SUMIF(D:D,"01????",E:E)
=SUMIF(D:D,"02????",E:E)
=SUMIF(D:D,"03????",E:E)・・・
というように、47都道府県分の式をすべて用意する事になります。
絶対にコード体系のルールが変わらない、集計の条件が変わらないということなら、それもいいでしょう。
ですが、万が一ルールが変わってしまった場合、この作り方ではメンテナンスしやすいとは言えません。
そこで、検索条件を別のセルに書きだすことで、メンテナンス性を良くしてみましょう。
大人の事情でセイウチ次郎くんには成田市に引っ越してもらいました。
とにかくこのように、検索条件を外に書き出しておけば、急に集計条件を変更してくれと頼まれた時にも簡単に変更がききますし、今後自分以外の人にメンテナンスしてもらう場合も、数式をいじらないで済むので、引き継ぎもしやすくなります。
ただ、このまま印刷するよーなんて事になると、ちょっと見た目が悪いですが。
まとめ
今度からこのエクセルは君が管理してくれ!
と言われて渡されたファイルが、無駄に長い式だらけだとイラっとしますよね。
今回紹介したワイルドカードを活用するなどして、簡潔な作りで、かつメンテしやすいファイルを作る事を意識し、次の世代に嫌われないようにしましょう。
コメント