(本記事は、土屋 和人氏の著書『Excel[実践ビジネス入門講座]【完全版】』=SBクリエイティブ、2019年6月9日刊=の中から一部を抜粋・編集しています)
【本書からの関連記事】
(1)エクセルのよくあるエラーの意味と対処法 「#REF!」と「#VALUE!」の違いは?
(2)エクセル作業を高速化するショートカット5選 「Enter」と「Tab」がカギ
(3)エクセルで日時を1秒で入力できるショートカット
(4)絶対知っておきたいエクセルの基本関数3選 「IF、VLOOKUP、COUNTIF」ってどう使う?(本記事)
最初におぼえるべき最重要関数
本当に必要な関数はそれほど多くない
Excelには豊富な種類の関数がありますが、そのすべてを使っている人は、ほとんどいません。多くの人にとっては、その一部の、特に重要な関数だけ押さえておけば十分です。ここでは、覚えておくと必ず役立つ、最重要の関数を厳選して紹介します。まずは以下の関数の使い方から覚えることをお勧めします。
数値計算
関数名 | 説明 |
---|---|
SUM | 引数に指定した数値の合計を求める(p.210) |
COUNT | 引数に指定した数値の個数を求める |
COUNTA | 数値、文字列といった種類を問わず、 すべてのデータの個数を求める |
AVERAGE | 引数に指定した数値の平均を求める(p.211) |
MAX | 引数に指定した数値の中の最大値を求める |
MIN | 引数に指定した数値の中の最小値を求める |
RANK.EQ | 数値のグループの中の特定の数値について、 そのグループ内での順位を求める(p.216)。 以前のバージョンとの互換性を考慮する場合は、 同じ機能のRANK 関数も利用可能 |
LARGE | 引数に指定した数値の中で上位から指定した順番に当たる 数値を求める |
SMALL | 引数に指定した数値の中で下位から指定した順番に当たる 数値を求める |
COUNTIF | 指定した範囲の中で、1 つの条件を満たすデータの 個数を求める(p.224) |
COUNTIFS | 指定した範囲の中で、複数の条件を満たすデータの 個数を求める |
SUMIF | 指定した範囲の中で、1 つの条件を満たす数値の 合計を求める(p.227) |
SUMIFS | 指定した範囲の中で、複数の条件を満たす数値の 合計を求めます |
SUBTOTAL AGGREGATE |
対象のセル範囲のデータを集計するための関数。 集計方法を選択することが可能で、対象範囲内の小計の セルなどを除外して計算できる |
ROUND | 引数で指定した数値を、指定した桁で四捨五入する(p.214) |
ROUNDUP | 引数で指定した数値を、指定した桁で切り上げる |
ROUNDDOWN | 引数で指定した数値を、指定した桁で切り捨てる |
CEILING.MATH | 数値を基準値の倍数に切り上げる。 以前のバージョンとの互換性を考慮する場合は、 ほぼ同様の機能を持つ、CEILING 関数も利用可能 |
FLOOR.MATH | 数値を基準値の倍数に切り下げる。 以前のバージョンとの互換性を考慮する場合は、 ほぼ同様の機能を持つ、FLOOR 関数も利用可能 |
日付・時間計算
関数名 | 説明 |
---|---|
DATE | 年・月・日を表す数値から日付データを求める |
TIME | 時・分・秒を表す数値から時刻データを求める |
TODAY | 今日の日付データを返す |
NOW | 現在の日付・時刻データを返す |
YEAR | 日付データから年を返す |
MONTH | 日付データから月を返す |
DAY | 日付データから日を返す |
WEEKDAY | 日付データから曜日を表す数値を返す |
EDATE | 開始日から、指定した月数だけ後または前の日付を返す |
EOMONTH | 開始日から、指定した月数だけ後または 前の月末の日付を返す(p.93) |
WORKDAY WORKDAY.INTL |
いずれも開始日から、休日を除いて指定した日数だけ後 または前の日付を求める |
DATEDIF | 2つの日付の間隔(年・月・日など)を表す数値を求める |
集計・分析
関数名 | 説明 |
---|---|
IF | 条件を指定し、その真偽(TRUE / FALSE) に応じて別の計算を行う(p.218) |
IFERROR | 指定した式の結果がエラーでなければ その値をそのまま返す。 エラーであれば別の値を返す |
IFS (Excel 2019/365 のみ) |
複数の条件と返す値のセットを指定し、 先頭から判定していって、最初に真(TRUE)と 判定された条件に対応する値を返す |
AND | 複数の条件がいずれもTRUE の場合だけTRUE を返す |
OR | 複数の条件が1つでもTRUE ならTRUE を返す |
NOT | TRUE / FALSE を逆にした結果を返す |
LEFT | 文字列の左側から、指定した文字数分の 文字列を取り出す |
RIGHT | 文字列の右側から、指定した文字数分の 文字列を取り出す |
MID | 指定した位置から、指定した文字数分の 文字列を取り出す |
LEN | 文字列の文字数を返す |
FIND SEARCH |
いずれも文字列の中で、指定した文字列が 見つかった位置を表す数値を返す |
SUBSTITUTE | 文字列の中の特定の文字列を、指定した別の 文字列に置き換えた文字列を返す |
VLOOKUP | 表の左端列を検索し、見つかった行で、 指定した列にあるセルのデータを取り出す(p.220) |
MATCH | セル範囲を検索し、見つかったセルの位置を 表す数値を返す |
条件に応じて異なる計算をする(IF関数)
IF 関数の基本的な使い方
条件を設定し、その判定結果が「真(TRUE)」の場合と「偽(FALSE)」の場合で異なる計算を行いたい場合は、IF 関数を使用します。
ここでは、左隣のセルに入力されている金額が3000円以上の場合は2割の値引き額を表示し、3000円よりも小さい場合は1割の値引き額を表示します。
①値引き額を表示するセルF4を選択する。
②[数式]タブ→[論理]→[IF]をクリックする。
③[論理式]に「E4>=3000」を指定する。
④[値が真の場合]に「E40.2」を指定する。
⑤[値が偽の場合]に「E40.1」を指定して、ダイアログ下部の[OK]ボタンをクリックする。
MEMO
[論理式]には、計算の条件を指定します。今回は「E4>=3000」と指定しています。つまり、セルE4の値が「3000以上」であるか否かが、このIF関数の条件になります。
⑥セルF4に、セルE4の金額に応じた値引き額が表示される。
HINT
今回の例では、対象の金額が3000円以上の場合は2割引の金額、3000円以下の場合は1 割引の値引き額を表示しています。
⑦セルF4の数式を、セル範囲F5:F10にコピーすると、それぞれ左隣の金額に応じた値引き額が表示される。
論理式で使える比較演算子
引数[論理式]には、戻り値が「TRUE」または「FALSE」になる式を指定します。ここで使用している「>=」は「以上」を表す比較演算子です。つまり、この場合の戻り値は、指定値以上であれば「TRUE」、そうでなければ「FALSE」になります。
同様に、このような判定に利用できる比較演算子には、次のような種類があります。
比較演算子の種類
比較演算子 | 説明 | TRUE の例 | FALSE の例 |
---|---|---|---|
= | 左辺と右辺が等しい | 3=3 | 3=4 |
<> | 左辺と右辺が等しくない | 4<>5 | 4<>4 |
> | 左辺が右辺より大きい | 5>3 | 5>5 |
>= | 左辺が右辺以上 | 5>=5 | 5>=6 |
< | 左辺が右辺より小さい | 3<5 | 3<3 |
<= | 左辺が右辺以下 | 3<=3 | 3<=2 |
他の表からデータを取り出す(VLOOKUP関数)
VLOOKUP 関数の最も基本的な使い方
Excelには数値計算以外にもさまざま関数が用意されています。そのうちの1つに、「必要なデータを検索して取り出す関数」もあります。
例えば、商品の価格などをあらかじめ別表で用意しておき、売上記録の表に入力した商品名や商品ID からその価格を自動的に表示する、といった処理には、VLOOKUP関数を使用します。ここでは、1つ左のセルに記載されている商品名を元にして、その商品の価格を自動的に取り出す数式を入力してみます。
①セルC4を選択する。
②[数式]タブ→[検索/行列]→[VLOOKUP]をクリックする。
③[検索値]にセルB4を設定する。
④[範囲]にセル範囲G4:H12を設定したうえで、F4を押して絶対参照に変換する。
・$G$4:$H$12
⑤[列番号]に「2」、[検索方法]に「FALSE」と入力する。
⑥[OK]ボタンをクリックする。
MEMO
[列番号]には、検索先のうち、取り出す値(価格)が設定されている列番号を指定します。今回の例でここに仮に「1」を指定すると、商品名が取り出されます。また、引数[検索方法]に「FALSE」を指定すると、引数[検索値]と完全に一致するデータを検索します。ここに「TRUE」を指定した場合の処理内容については、次項で説明します。
⑦セルC4に商品名に対応する価格が表示される。
⑧セルC4の数式を、セル範囲C5:C10にコピーすると、各商品の価格が表示される。
HINT この例のように、他の表からデータを参照することを「表引き」といいます。言い方を変えるなら「VLOOKUP 関数は表引きをするための関数」ということもできます。
条件に合うデータの個数を求める(COUNTIF関数)
Aランクの人数を数える
対象のセル範囲の中で、指定した条件を満たすセルがいくつあるかを調べたい場合はCOUNTIF関数を使用します。
ここでは、セル範囲C4:C10の中にランクAの参加者が何人いるかを数えてみます。
①セルE4(カウントした結果を表示するセル)を選択する。
②[数式]タブ→[その他の関数]→[統計]→[COUNTIF]をクリックする。
③[範囲]にセル範囲C4:C10を指定する。
④[検索条件]に「"A"」と入力する(単に「A」と指定しても、自動的に「""」が付く)。
⑤[OK]ボタンをクリックする。
⑥セル範囲C4:C10の中で、セルの値が「A」であるセルの数が表示される。
500点以下の人数を数える
COUNTIF関数の検索条件の指定には、比較演算子も使用できます。ここでは、上記のセル範囲B4:B10 を対象に「得点が500 点以下の人数」をカウントしてみます。
前ページと同様の手順で、ここではセルE6(カウントした結果を表示するセル)を選択して、[数式]タブ→[その他の関数]→[統計]→[COUNTIF]をクリックし、[関数の引数]ダイアログを表示し、次の手順を実行します。
①[範囲]にセル範囲B4:B10を指定する。
②[検索条件]に「"<=500"」と指定する。
③[OK]ボタンをクリックする。
④セル範囲B4:B10の中で、得点が500以下であるセルの数が表示される。
使えるプロ技!
<ワイルドカードを使う>
検索条件の指定にワイルドカードを使用することもできます。ワイルドカードとは、任意の1文字、または0文字以上を表す特別な記号です。「?」は任意の1文字を表し、「*」は0文字以上の任意の文字列を表します。ここでは、氏名に「鈴木」を含む参加者の数をカウントしてみます。
①[範囲]にセル範囲A4:A10を指定する。
②[検索条件]に「"鈴木*"」と指定する。
③[OK]ボタンをクリックする。
④セル範囲A4:A10で、苗字が「鈴木」であるセルの数が表示される。
土屋 和人(つちや かずひと)
フリーランスのライター・編集者。ExcelやVBA関連の著書多数。「日経パソコン」「日経PC21」(日経BP社)などでExcel関連の記事を多数執筆。著書に『Excel でできる! Webデータの自動収集&分析実践入門』『今すぐ使えるかんたんEx Excelマクロ&VBAプロ技セレクション』『最速攻略Wordマクロ/VBA徹底入門』(技術評論社)、『Excel VBAパーフェクトマスター』(秀和システム)ほかがある。
【関連記事 MONEY TIMES】
仕事のストレス解消方法ランキング1位は?2位は美食、3位は旅行……
就職ランキングで人気の「三菱UFJ銀行」の平均年収はいくら?
職場で他人を一番イラつかせる行動トップ3
35歳以上で転職した人の52%が年収アップ!うち4割は100万円以上も増加
【初心者向け】ネット証券おすすめランキング(PR)