こんにちは、企画部のヨシヒコです。
前回のエクセルでの資料編に続き、今回は使用することも多い関数編をお送りします☆
①ヨシヒコ的良く使う関数
- sumif(s)
- countif(s)
- offset
- edate
- if
- iferror
- na
- match
- indirect
頭に浮かんだものをざっと挙げてみました。
この中で特に使うものでいうと、圧倒的に「sumif(s)」です。「エクセル使いならvlookup・・・」みたいな話はあちらこちらで聞く気がしますが、sumif(s)でほぼ代替可能です。
※ヨシヒコ的vlookupのマイナス面※
- 複数の条件指定が出来ない⇒sumifsなら出来る(sumifは出来ない)
- データをvlookupに合うように並べてないといけない⇒sumif(s)なら並びは問わない
百歩譲って、数字ではなく文字を引っ張ってくる必要があるなら使用もやむなしですが、「そもそも使わないで済む設計をすべき」というのが持論です。
ここまで言うのは、決してvlookupにトラウマがあるからではなく、覚えてみたら「なんだこれ汎用性低っ・・・」と衝撃を受けた記憶があるためです。。。
これに限らず全般的に言えることですが、エクセルは「一見かゆいところに手が届きそうだが、実際は届いてくれない」ことが多いので、その点を頭の片隅に置いて頂ければと・・・(夢を見るとえげつない現実を突き返してきます)
関数の用途をざっと分類すると、以下の感じになります。
- 集計用:sumif(s)/countif(s)/offset/edate/match/indirect
- エラー処理用:if/iferror/na※グラフにエラーが出ないようにする等
②関数のパターン把握のためのコツ
関数は一見複雑そうですが、何個かパターンを覚えれば、後は必要に応じてグーグル先生に聞けばだいたい解決します。
個人的には、以下を覚えておけば難題以外は事足りるかと考えてます。
- sumif(s)⇒セルの内容がベースになる関数
- offset(+match)⇒セルの位置がベースになる関数
- if(iferror)⇒条件分岐への理解
セルの内容がベースになる関数とは、「××の範囲内で○○と一致するものを探す」ものです。
一方、セルの位置がベースになる関数とは、「△△を始点に上下左右に□□動く」ものです。
先程からsumif(s)をごり押してますが、offsetもmatchと組わせることで非常に役立つことが多いため、覚えておいて損はない関数です。
if(iferror)に関しては、「○○=××ならば△△」という条件分岐を行う関数で、エラー処理等にも良く使うので、覚えておくとスマートなグラフ作りに寄与してくれます。
③関数とものすごく相性の悪い書式
やりがちな書式ですが「セルの結合」は関数ととてつもなく相性が悪いです。
2つのセルを結合した場合、一見2つともに同じ内容が入っているように見えますが、実は片方にしか入っていません。
結合したセルを参照する場合は、この罠を潜り抜けないといけないため、地味に面倒くさいことが多いです。
ヨシヒコも以前は「セルの結合=なんとなくカッコイイ」という呪縛にかかっていたため、良く使ってましたが、罠の対応に嫌気がさして使わなくなりました。
④関数も結局は設計で決まってしまう
資料と同じですが、関数も「設計」で決まってしまいます。ここで言う「設計」とは、関数で集計しやすいように、「どのようにデータを配置するか」ということです。
そして、どのようにデータを配置するべきかは「どの関数を使用するか」で決まってきます。
つまり、「どういうデータを集計する可能性があるか」をあらかじめ検討し、そのために「どの関数が適しているか」を考慮の上、「どのような状況でも対応できるようにデータを配置しておく」必要があります。(ヨシヒコはものぐさなので、だいたい「どうやってsumif(s)で集計しよう」と考えてます)
よく「この資料から○○を集計したいけど出来ない」と、悩むことがあるかと思いますが、関数を工夫してどうこうではなく、そもそもデータの配置が関数での集計に適していないため、そのような状態になっていることが多い印象です。
力技でしのぐこともできますが、大変なことが多いので、どのようなケースにも対応できるよう「設計」しておくことが非常に大事ですね。
以上、ヨシヒコのエクセルよもやも話~関数編~をお送りしました<(_ _)>
次回はあるかも・・・?ないかも・・・?