IF関数
表計算ソフトにおけるIF関数は、条件に応じて異なる計算式を返す関数です。一般的な書式は以下の通りです。
=IF(条件式, 真の場合の計算式, 偽の場合の計算式)
これをフローチャートで表現すると、ひし形の条件式を用いて以下のようになります。
![](https://it-school.te2software.com/wp-content/uploads/2023/09/表計算IFフローチャート1.png)
例えば、下の表のB2セルに入力された数値が90以上であれば「合格」、90未満であれば「不合格」と表示する場合、以下のように書くことができます。
=IF(B2>=90, "合格", "不合格")
これを以下の表のC2以下にコピーすると、自動で「合格」「不合格」が入力されます。
A | B | C | |
---|---|---|---|
1 | 学生 | 成績 | 合否 |
2 | 1 | 90 | 合格 |
3 | 2 | 80 | 不合格 |
4 | 3 | 95 | 合格 |
この場合、条件式は「B2>=90」となり、真の場合の計算式は「”合格”」、偽の場合の計算式は「”不合格”」となります。
フローチャートで表現すると以下のようになります。
![](https://it-school.te2software.com/wp-content/uploads/2023/09/表計算IFフローチャート2.png)
IF関数のネスト
IF関数のネストとは、IF関数の条件式の中に、さらにIF関数を含め、「入れ子」状態で使用することを指します。これにより、複雑な条件判定を行うことができます。
例えば、A1の値が70以上の場合は「〇」、50以上70未満の場合は「△」、50未満の場合は「✕」を表示する、という条件を設定する場合、以下のようにネストされたIF関数を使うことができます。
=IF(A1>=70, "〇", IF(A1>=50, "△", "✕"))
これをフローチャートで表現すると、以下のようになります。
![](https://it-school.te2software.com/wp-content/uploads/2023/09/表計算IFフローチャート3.png)
IF関数のネストは、より複雑な条件分岐を表現するために使用します。その実例を見てみましょう。
ある学生の成績に基づいて評価をするシステムを考えます。成績が90以上ならば「優」、80以上ならば「良」、70以上ならば「可」、それ以外ならば「不可」と評価したいとします。
これを表計算ソフトにおけるIF関数で表現すると以下のようになります。
=IF(成績>=90, "優", IF(成績>=80, "良", IF(成績>=70, "可", "不可")))
この式では、最初に成績が90以上かどうかを確認します。もし90以上なら「優」と評価します。90未満であれば次のIF関数に進み、成績が80以上かどうかを確認します。もし80以上なら「良」と評価します。80未満であればさらに次のIF関数に進み、成績が70以上かどうかを確認します。70以上なら「可」、それ以外(つまり70未満)なら「不可」と評価します。
これにより、一つのセルに複数の条件を組み合わせて評価することが可能になります。これがIF関数のネストの一例です。
![](https://it-school.te2software.com/wp-content/uploads/2023/10/表計算IFフローチャート4-1.png)
論理演算を用いた関数の応用
論理演算は、真(True)と偽(False)の2通りの値の間で行われる演算であり、論理積と論理和は、論理演算を行う際の演算子です。
以下は、「コンピュータと数学② 論理演算」で学んだ内容の復習です。
論理積(AND)は、二つの論理値がともに真の場合に真を返し、それ以外の場合は偽を返します。たとえば、「式 A AND B」は、Aが真でありかつBが真である場合に真を返し、それ以外の場合には偽を返します。
論理和(OR)は、二つの論理値のうち、どちらかが真の場合に真を返し、両方とも偽の場合に偽を返します。たとえば、「式 A OR B」は、Aが真であるかまたはBが真である場合に真を返し、両方とも偽の場合には偽を返します。
これらの論理演算は、複雑な条件式を表現するために使われます。たとえば、IF関数の条件式の中に、論理積や論理和を使うことができます。IF関数と論理積、論理和を組み合わせることで、より複雑な条件を表現することができます。
論理積を用いた例
ある英語の試験では、リーディングとリスニングの両方で80点以上取れば合格することができます。これは論理積で表すことができます。
例えば、D4のセルには以下の関数が入ります。
=IF(論理積(B4>=80, C4>=80), "合格", "不合格")
A | B | C | D | |
---|---|---|---|---|
1 | 学生 | リーディング | リスニング | 試験Aの結果 |
2 | 1 | 90 | 75 | 不合格 |
3 | 2 | 70 | 100 | 不合格 |
4 | 3 | 85 | 85 | 合格 |
![](https://it-school.te2software.com/wp-content/uploads/2023/09/表計算IF_AND.png)
論理和を用いた例
ある英語の試験では、リーディングとリスニングのどちらかで80点以上取れば合格することができます。これは論理和で表すことが可能です。
例えば、D2のセルには以下の関数が入ります。
=IF(論理和(B2>=80, C2>=80), "合格", "不合格")
A | B | C | D | |
---|---|---|---|---|
1 | 学生 | リーディング | リスニング | 試験Bの結果 |
2 | 1 | 85 | 30 | 合格 |
3 | 2 | 75 | 60 | 不合格 |
4 | 3 | 90 | 85 | 合格 |
![](https://it-school.te2software.com/wp-content/uploads/2023/09/表計算IF_OR.png)
関連用語
マクロ機能
マクロ機能は、一連の操作やタスクを自動化するためのスクリプトまたはプログラムです。
主に、Microsoft Officeのアプリケーション(Word、Excel、PowerPointなど)で使用されます。
マクロを使用すると、繰り返し行う作業を1クリックで実行できるため、時間の節約や効率の向上が期待できます。例えば、表計算ドキュメントでの複雑な計算、文書内の定型文の挿入、フォーマットの統一など、様々な作業をマクロで自動化することができます。
また、これらのアプリケーションには、マクロを作成するための専用のエディタが用意されており、簡単なプログラミング知識があれば誰でも作成することができます。
マクロは強力なツールですが、その実行可能性を悪用されるリスクもあるため、信頼できるソースからのマクロのみを使用することが重要です。
マクロウイルス
マクロウイルスは、マクロ機能を悪用したウイルスの一種で、主にMicrosoft Officeの文書やスプレッドシートに埋め込まれます。
ユーザーが感染したファイルを開くと、マクロウイルスが自動的に実行され、コンピューターに悪意ある操作を行います。これには、他のファイルへの感染拡大、個人情報の窃取、システム機能の妨害などが含まれます。
マクロウイルスの危険性は、一見正当な文書ファイルに隠れているため、ユーザーが知らず知らずのうちに感染させてしまうことにあります。このため、不審なファイルの開封を避け、アンチウイルスソフトウェアを使用し、Officeアプリケーションのセキュリティ設定を適切に管理することが重要です。
クロス集計は、二つ以上のカテゴリにわたるデータを表形式で分析する方法です。
一つのカテゴリを表の行に、もう一つを列に割り当て、その交差点にデータ(例えば、販売数、平均値など)を集計して表示します。
クロス集計を利用することで、異なるカテゴリ間の関係やパターンを簡単に把握できます。以下にクロス集計の例を示します。
学生の性別と専攻
学生の性別(行:男性、女性)と専攻(列:文学、科学、芸術、ビジネス)の人数の関係を調べたい場合。
文学 | 科学 | 芸術 | ビジネス | |
---|---|---|---|---|
男性 | 30 | 50 | 20 | 60 |
女性 | 50 | 30 | 70 | 40 |
会社員の年齢層と職位
会社員の年齢層(行:20代、30代、40代、50代)と職位(列:新入社員、主任、マネージャー、ディレクター)の人数の関係を調べたい場合。
新入社員 | 主任 | マネージャー | ディレクター | |
---|---|---|---|---|
20代 | 100 | 20 | 5 | 0 |
30代 | 50 | 80 | 30 | 5 |
40代 | 20 | 50 | 70 | 20 |
50代 | 5 | 20 | 40 | 70 |
製品の種類と地域別の売上データ
地域(行:東京、大阪、福岡など)と製品の種類(列:A、B、C)ごとの売上の関係を調べたい場合。
東京 | 大阪 | 福岡 | |
---|---|---|---|
製品A | 1000 | 800 | 600 |
製品B | 700 | 900 | 800 |
製品C | 500 | 600 | 700 |
ピボットテーブルは、表計算ソフトの強力な機能の一つで、大量のデータを簡単に要約し、分析するための強力なツールです。
ピボットテーブルを使用することで、ユーザーはデータをさまざまな角度から見ることができ、データのドリルダウンや再配置、集計が簡単に行えます。
ピボットテーブルは、クロス集計の概念をベースに、より動的で柔軟なデータ分析を可能にする機能を提供します。ユーザーは、行や列の位置を変えることで、データをさまざまな視点から分析したり、合計値、平均値、最大値、最小値など、異なる集計方法を選択してデータを要約したりすることができます。
例えば、ある会社の営業部が以下のようなデータを保持しているとします。(実際にはもっと大量のデータを扱うことが多いです。)
営業員名 | 取引先 | 取引金額 | 取引日 |
---|---|---|---|
田中 | A社 | 100万円 | 2023-01-01 |
佐藤 | B社 | 200万円 | 2023-01-02 |
鈴木 | A社 | 150万円 | 2023-01-03 |
田中 | C社 | 50万円 | 2023-01-04 |
佐藤 | A社 | 300万円 | 2023-01-05 |
鈴木 | B社 | 250万円 | 2023-01-06 |
このデータを利用して、営業員ごとの取引金額の合計を知りたい場合、ピボットテーブルを使用します。
ピボットテーブルを作成すると、以下のような表を得ることができます。
営業員名 | 取引金額の合計 |
---|---|
田中 | 150万円 |
佐藤 | 500万円 |
鈴木 | 400万円 |
このようにピボットテーブルを用いることで、大量のデータから特定の視点(この例では「営業員ごとの取引金額の合計」)で情報を集約・分析することが容易になります。
このような集約作業は、手動で行おうとすると膨大な時間がかかるため、ピボットテーブルの利用は効率的です。
ピボットテーブル(Pivot Table)の名称は、データを「回転」させて多角的に分析することから来ています。
ここでの「ピボット(Pivot)」は、回転軸や支点を意味する英単語であり、データの異なる角度からの視点を切り替えて分析することを指します。
ピボットテーブルは、大量のデータを簡単に整理し、要約し、クロス集計することができる強力なツールです。
ユーザーは、データの列を行や値に「回転」させることで、データをさまざまな方法で視覚化し分析できます。そのため、この機能は「ピボットテーブル」と命名されました。