Excel関数は、実務上は SUMIFSとVLOOKUP がわかっていれば、あとは必要な範囲は応用できそうです。それ以上、複雑な関数(数学的、統計的、財務的)は、どうしても必要になったら調べるぐらいでよいのかもしれません。
確か MOS Excel のエキスパートが、この辺がラインになっているね。
とはいえ、たまにPMT関数(財務)やCUBE関数(データベース)みたいな、難しいのも出題されていた気がするよ。職種を選びそうな関数だけど。
1. 期待されるExcel関数と応用
Twitterで「期待されるもの」「できそう感」「近づいてはいけない」「うっかりさん」という関数の分類を見かけました。
どんな分類なのか、意図を考えるために、それぞれ用例を並べました。
期待されてるもの:
— 光希桃 (@mikimomo_as) May 2, 2023
SUMIFS
VLOOKUP
できそう感:
XLOOKUP
OFFSET
INDIRECT
SUMPRODUCT
SUBTOTAL/AGGREGATE
TEXTJOIN
近づいてはいけない:
MMULT
FILTERXML
SEQUENCE
LAMBDA
LOOKUP
うっかりさん:
ArrayFormula
IMPORTRANGE
QUERY#Excel
関数名 | 用例 | 解釈 |
---|---|---|
SUMIFS | =SUMIFS(B2:B10, A2:A10, “Apple”, C2:C10, “>10”) | A列が“Apple”でC列が10より大きいセルのB列の値の合計を返す |
VLOOKUP | =VLOOKUP(“Tom”, A2:D10, 3, FALSE) | A列で“Tom”に一致するセルを探し、その行のC列の値を返す |
できそう感(表の活用) | ||
XLOOKUP | =XLOOKUP(“Tom”, A2:A10, C2:C10) | A列で“Tom”に一致するセルを探し、その行のC列の値を返す |
OFFSET | =OFFSET(A1, 2, 3, 4, 5) | A1から下に2行、右に3列ずらしたセルから始まる4行5列の範囲を返す |
INDIRECT | =INDIRECT(“B”&A1) | A1の値が5なら、B5の参照を返す |
SUMPRODUCT | =SUMPRODUCT(A1:A5, B1:B5) | A1からA5までのセルとB1からB5までのセルの要素ごとの積(A1×B1、A2×B2など)の合計を返す |
SUBTOTAL | =SUBTOTAL(9, A1:A10) | A1からA10までのデータの合計を求める。フィルターがかかっている場合は、表示されているデータだけを対象とする |
AGGREGATE | =AGGREGATE(14, 6, A1:A10) | A1からA10までのデータの最大値を求める。エラー値や隠れた行や列は無視する |
TEXTJOIN | =TEXTJOIN(“,”, TRUE, A1:A5) | A1からA5までのテキスト値をカンマで区切って連結する。空白や重複した値は除外する |
近づいてはいけない(最近追加された関数) | ||
MMULT | =MMULT(A1:B2, C1:D2) | A1からB2までの配列とC1からD2までの配列の行列積を返す |
FILTERXML | =FILTERXML(<books><book>Excel</book><book>Word</book></books>, “//book”)) | XML文字列からbook要素の値を抽出する |
SEQUENCE | =SEQUENCE(3, 4) | 3行4列の連番を生成する |
LAMBDA | =LAMBDA(x, y, x + y) | xとyを引数にして、x + yを返すカスタム関数を作成する |
LOOKUP | =LOOKUP(10, A1:A10, B1:B10) | A1からA10までのセルで10に一致するか、それより小さい最大の値を持つセルを探し、その行のB列の値を返す |
うっかりさん(Google SpreadSheet関数) | ||
ArrayFormula ※ | =ArrayFormula(A1:A5 * B1:B5) | A1からA5までのセルとB1からB5までのセルの要素ごとの積(A1×B1、A2×B2など)を配列として返す |
IMPORTRANGE ※ | =IMPORTRANGE(“https://docs.google.com/spreadsheets/d/abcd1234”, “Sheet1!A1:C10”) | 指定したURLのスプレッドシートからSheet1のA1からC10までのデータをインポートする |
QUERY ※ | SQL風のクエリ言語で指定した範囲やインポートしたデータに対して集計やフィルターなどを行う。 |
SUMIFS と VLOOKUP が「期待されるもの」というのは、実際に一番活用される関数の中で比較的難しいものだからでしょう。
「近づいてはいけない」に分類されている関数は、比較的 最近追加された関数が多いです。MMULT や SEQUENCE、LAMBDAなど、プログラミングっぽい関数です。
「うっかりさん」は、Google SpreadSheet関数で、Excel関数ではないものです。
そうすると、残った「できそう感」は、XLOOKUP, OFFSET, INDIRECT, SUMPRODUCT, SUBTOTAL, AGGREGATE, TEXTJOIN です。確かに、SUMIFS や VLOOKUP を基礎として、より複雑な関数です。でも、考え方にそんな飛躍はない関数です。
まとめると、Excelの関数は とりあえず SUMIFS と VLOOKUP まで使えたら「御の字」で、あとは応用して「できそう感」のグループまで使えれば十分。それ以上は、「実務で使う」というより「Excelの使い方の探求」になってくる感じですね。
確かに、SUMIFSとVLOOKUP まで理解しているなら、ちゃんとExcel関数を勉強したんだなって思えるよね。
それにしても、Excelって本当にいろんな関数があるよね。
こちらもどうぞ。