IF関数とは IF関数は「 条件を指定して合っている時と間違っている時の処理を指定できる」関数です。 さらに関数を組み合わせることにより「条件を満たしていたら関数を行う」ということが可能です。 (この方法については少し難しいですが最後に解説しています) IF関数の使い方 IF関数の主な使い方は2つあります。 どちらの使い方でも解くことはできますが、IF関数に関しては別の関数を組み合わせることが多いので、1つ目のやり方で覚えるようにしましょう。 セルに直接入力して計算する IF関数を入力するときだけでなく、別の関数を入力するときも「セルに直接入力」することをオススメします。 そうすることによって、後から編集するときにどこを直せば良いか理解しやすいためです。 解き終わったらエンターキーを押して確定し、他のセルにオートフィルでコピーしてあげましょう。 このように商品名を指定してあげることにより解くことができるのですが、指定してあげる「炊飯器」がどこかに書いてある場合はそこを指定してあげても解く事が出来ます。 もしセルを指定する場合は、絶対参照を使わないとオートフィルを使ったときに動いてしまうので、必ず絶対参照($マーク(F4 を忘れないようにしましょう。 絶対参照がよく分からない方は、Excelを使ってく上で必須スキルですので「」を必ず読んで理解してください。 IF関数を初心者が使うときによくあるミスとしては、式を書かない(論理式)人が多いです。 まず最初に、何が成り立った時の話をしているのかを最初に必ず指定しましょう。 関数の挿入からIF関数を使う IF関数も他の関数と同様に、関数の挿入から簡単に入力する事が出来ます。 IF関数は、論理式を入れたり、ダブルクォーテーションを使ったりするので間違いが起こりやすいです。 その場合は、関数の挿入から解くことによって間違えずに解きやすくなります。 まず「数式」タブの中にある「関数の挿入」をクリックします。 その後、関数の挿入のウィンドウが開いたら、「関数の分類」を「論理」に変更し「IF」をクリックしてOKを押しましょう。 そうすると、IF関数のウィンドウが開かれます。 1、今回は合計金額が「50000以上」の場合は「達成」、違っていた場合は「未達成」と表示できるようにしていきます。 2、「合計金額が50000以上」かを調べたいので、隣のセルの「75000」を指定します。 この「75000」が「50000」以上かどうかを確かめていくことになります。 3、以上かどうかを調べるには不等号を使います。 そうすると、「E4が50000以上」かどうかを判断することができます。 この条件が合っていた時と、違っていた時の処理を入力していきましょう。 4、まずは合っていた時の処理を入力していきます。 (ダブルクォーテーションが入っているので注意してください。 ) 5、次は偽の場合です。 6、IF関数を使えば、合計金額が50000以上だった場合「達成」違っていたら「未達成」と表示されます。 7、オートフィルをすることによって、全体に反映させることができます。 オートフィルの中身をこんな感じです。 この場合だと「24000は50000以下」なので未達成が表示されています。 IF関数で条件が同じだった時のみ表示させる IF関数では以上や以下だけではなく、同じだった場合もよく使うことになります。 同じだった場合を表す時は不等号の「=(イコール)」を入力します。 今回は、値が真の場合の処理は「本部」にします。 値が偽の場合は、何も表示されないように設定がしたいので空白にします。 (ダブルクォーテーションを2つです) そうすると、人数が20人の所だけ「本部」それ以外のところは何も表示されないようになります。 偽の場合に何も表示させないことはよくあるので、IF関数を覚えるなら絶対に覚えておきましょう。 IF関数をVLOOKUP関数と組み合わせる( DIVエラーを無くす) IF関数は別の関数と組み合わせることが非常に多い関数です。 なぜなら、まだ入力していない場所に関数が入っていると「 DIVエラー」が出る可能性が大きいからです。 その中でも一番よく使われる関数が「IF関数+VLOOKUP関数」の組み合わせです。 VLOOKUP関数の使い方は解説が長くなってしまいますので「」を読んでください。 VLOOKUP関数の使い方には、エラーが出てしまう時の原因やIF関数を使ってどうやって組み合わせるかについて詳しく書いています。 またVLOOKUPだけでなく、単純にかけ算などにIF関数を組み合わせることもよくありますので、IF関数はかなり使う状況が多い関数です。 まとめ IF関数は「そのセルがそれだったら何をする、違ったら何をする」という条件を使いたいときに使う関数です。
次の=AND 論理式1, [論理式2],... となり、ANDのあとのカッコの中に入る条件がすべて「かつ」として条件設定されます。 IF関数の中に入ると、『もし(AND関数の論理式が全て当てはまれば)~~、そうでなければ~~』という条件式になります。 サンプルでの結果は下のようになり、メルマガの「配信対象」は3件抽出されました。 セミナーA・Bの受講希望者のリストですが、A またはBどちからを受講希望していればD列を「Y」とします。 ここで使われるのは OR関数です。 OR関数とは、理屈は前述の AND関数と同様で、いずれかの引数がTRUEのとき、TRUEを返す関数です。 AND関数が「かつ」で、 OR関数が「または」の条件式で使用されます。 さて、サンプルの結果を見てみると下のようになります。 次回は、「もし~(文字列)を含むなら~」という条件設定を IF関数と ある関数の組み合わせで実現します。 お楽しみに。 関連記事 併せて読んでおくとさらに便利 IF関数・COUNTIF関数 エクセルでIF関数の使い方を解説する Part 2 です。 今回は「もし~(文字列)を含むなら~」という条件設定を IF関数と COUNTIF関数の組み合わせで実現します。 集計・SUMIF関数 エクセルで月別に集計する方法です。 SUMIF関数を使って、1年間の日次 日別 売上げが羅列されたデータから、月別に集計した売上表を作成してみました。 HLOOKUP関数・VLOOKUP関数 「HLOOKUP関数」をご存知ですか? HLOOKUPとVLOOKUPとの違いについて解説します。 条件付き書式・TODAY関数 エクセルで今日の日付の色を変える方法について解説。 日付が変わっても常に 今日の日付のセルや行に色をつける 色を変える ことができると、視認性もよくとても便利です。
次の
データの入力作業を効率化に必須のVLOOKUP関数 「商品IDを入力したら、自動で商品名や価格も表示されたらいいのに」 「顧客コードを入力したら会社名や住所がパッと出るようにしたい」 これらと似たようなご相談を頻繁に頂きます。 要は、顧客や商品などを特定するキーをあるセルに入力すると、その顧客や商品に関する情報が別のセルに表示されるようにできればいいわけです。 このようなことができるのが VLOOKUP関数です。 「VLOOKUP」という関数名の一文字目の「V」は「Vertical」の頭文字で、「垂直に」という意味です。 「LOOKUP」は「探す」と訳せますから、この関数は「何かを縦方向に探す」というイメージで理解して頂きたいと思います。 <目次>• VLOOKUP関数の使い方 例えば次の表のA列からC列に、商品ID、商品名、価格を入力しなければいけないとき。 商品情報の入力シート 商品IDと商品名と価格の3項目を何行も入力するのはめんどくさいわけです。 なので、A列のセルに商品IDだけ入力すれば、B列のセルに商品名、C列のセルに価格が出てくるようにすればラクなわけですね。 それにはまず各商品IDに該当する商品名と価格の一覧表、いわゆるマスタを別途どこかに作成しておく必要があります。 こちらの例では、E列からG列にその商品マスタが用意してあります。 ではあらかじめ、A4セルに「A001」という商品IDを入力した状態でB列のセルに関数を入力してみましょう。 B4セルに次のVLOOKUP関数式を入れると、A4セルの商品IDに該当する商品名が出ます。 第一引数で指定したA4セルの値(「ここではA001」)を、第二引数で指定したE列からG列の 一番左の列…つまりE列で上から探し、見つかったらそのセル(ここではE4セル)から第三引数で指定した列目(2列目ということになります)の値を参照せよ。 …ということになります。 第四引数には「0」が入っていますが、これはこのあと解説します。 ちょっと乱暴な説明にはなりますが、まずは初めてこの関数を勉強する際は、第四引数はとりあえず0と打てばよいと覚えてください。 実は0か1が選べます。 また、第四引数は0ではなくFALSE、1ではなくTRUEと打つこともできますが、その辺は好みの問題です。 さらに単価を出したいC列のセルに入力する関数は、第三引数が「3」になります。 単価は、マスタであるE:G列の左端列から見て3列目にあるからですね。 さらに実際の入力では改めてB列とC列にそれぞれ一から入力するのでなく、B列に入力した式を使いまわせるようにB列には次のように絶対参照の設定を加えた式を入力し、C列にコピーして第三引数だけを2から3に修正するという手順がラクです。 さらにラクにするには第三引数に、指定したセル参照の列番号を返すCOLUMN関数を工夫して使うと2を3に書き換える必要さえなくなる…など、関数はいろいろ組み合わせることで仕事がどんどんラクになるのです。 絶対参照やCOLUMN関数などを使ったテクニックについては別の記事で解説致します。 VLOOKUP関数の4つの引数 では、VLOOKUP関数の4つの引数について理解していきましょう。 第一引数:「検索値」。 いわゆる、手がかり、キーとなる値ですね。 第二引数で指定した範囲の左端列で探す値です。 第二引数:「検索範囲」。 左端列で値を探す範囲。 マスタとして使う範囲です。 列全体で指定するのがポイントです。 第三引数:「列番号」検索値が検索範囲の左端列で見つかったら、そこから右側の何列目のセルを参照するかという指定。 第四引数:「検索の型」。 0にすると完全一致、1にする近似値一致となります。 詳しくはこのあと解説します。 この関数はまず、第一引数で指定した検索値を、第二引数で指定した検索範囲の一番左の列で上から下に向かって探していきます。 上記の例では検索範囲はF列からG列の範囲を指定していますから、その一番左にあるF列で探すわけです。 見つかった場合は、そのセル(上記B2セルの場合はA2セルの値、つまり"")が見つかったら、そのセル(上記例ではF3セル)から第三引数で指定した数の列目…上記の場合は第三引数は2ですから、F3セルから2列目であるG3セルの値を参照する、ということになるのです。 第二引数では、メンテナンス性を高める「列全体指定」がおすすめ VLOOKUP関数の第二引数(ここでは「E:G」)は列全体指定をおすすめしています。 理由はマスタの行数が増えても式を修正する必要がないからです。 「列全体指定は動作が重くなるからやめたほうがよい」というご意見もありますが、まず影響はありません。 上級者の方は名前の定義で可変対応……といったこともお考えになるかもしれませんが、他の方でも簡単に扱えるシンプルな数式で済むなら業務としてはそれがベストです。 完全一致か近似一致か。 第四引数「検索の型」の使い方 第四引数、「検索の型」について0にすると完全一致、1にする近似値一致と述べました。 実際にどのように使い分けるかというと、たとえば次のように購入金額別に顧客のランクを定めるようなケースが実在の某社で行われたことがあります。 購入金額が0~100万円の人はE• 購入金額が100万1円~200万円の人はD• 購入金額が200万1円~300万円の人はC• 購入金額が300万1円~400万円の人はB• 購入金額が400万1円~500万円の人はA• 購入金額が500万1円以上の人はS たとえば購入金額が100万円ちょうどの人はE。 購入金額が100万1円の人からDになります。 購入金額が350万円の人はB。 購入金額が420万円の人ならAになるわけです。 またテストの点数などでも同様に90点以上はA、80点~89点はBなどのように、一定の数値範囲ごとに評価やランクを設定する作業です。 このような時に、VLOOKUP関数の第四引数を1(またはTRUE)にする、「近似一致」という方法が使われます。 いわゆる「あいまい検索」ですね。 まず、次のシートのE:F列のようなマスタを用意しておきます。 大事なポイントは、E列の購入金額が必ず大きい順、つまり昇順で並んでいることが必須ということです。 C4セルにVLOOKUP関数を入力 この状態で、C4セルに次の式を入力し、6行目までコピーするとこのように各購入金額に該当するランクが入力されます。 しかし第四引数を1(またはTRUE)にすると、検索範囲の左端列において、第一引数の「検索値」の数値以下の最大値にヒットするようになるのです。 検索値と完全一致する値か、それを超えない最大値にヒットするということです。 詳しくは「IFERROR関数でエラー値をわかりやすく表示させよう」「IF関数の使い方 条件によって処理を変える自動判定」をご覧ください。 VLOOKUP関数で、検索列より左側の値を参照できる? よく頂く質問なのですが、これはVLOOKUP関数ではできません。 このようなケースではOFFSET関数とMATCH関数で対応します。 記事「OFFSET関数の使い方~表の中で特定の値を参照する」で解説していますのでご参照ください。 VLOOKUP関数で部分一致による検索はできるか こちらもよく頂くご質問です。 これは可能です。 例えば検索値と完全に一致するセルを探すのではなく、「A」という文字を含んだセルを探したいという場合は、次のようにワイルドカード文字(検索する際にどんなパターンにもマッチする特殊文字)である「*」(アスタリスク)と組み合わせます。 VLOOKUPの頭文字「V」が「Vertical」(垂直)のVなら、HLOOKUPの頭文字の「H」は「Horizontal」(水平)のHです。 次のように、マスタが横方向になっているようなケースではHLOOKUP関数で対応することになります。 しかし根本的にはマスタは縦方向のデータベース表形式で作成するべきなので、本来はそこから改善したいケースではあります。 HLOOKUP関数の例 C4セルに次の式を入力して、6行目までコピーした結果です。 IF関数のネストが増えてきたらVLOOKUP関数で簡略化を IF関数を解説した記事「」で、IF関数のネストが増えてきたらVLOOKUP関数に切り替えましょうということを紹介しました。 たとえば先ほどのような購入金額レンジごとにランクを設定するような作業は、多くの方が最初にIF関数で一つずつ設定していくことを発想されると思います。 しかしそうではなく、先ほどの例のようにあらかじめデータを変換するマスタを別途用意しておけば、シンプルなVLOOKUP関数で済んでしまうわけです。 【関連記事】•
次の