Excel

【Excel】エクセルで値によって表示や文字を変える(複数条件・計算式や色も・IF関数・セルの値貼り付けを自動化する関数)

当サイトでは記事内に広告を含みます
いつも記事を読んでいただきありがとうございます!!! これからもお役に立てる各情報を発信していきますので、今後ともよろしくお願いします(^^)/

エクセルで「80点以上なら合格、それ以外は不合格と表示したい」「売上が目標を超えたら達成、未達なら未達成と自動で切り替えたい」「複数の条件に応じてランク分けを自動化したい」という場面に遭遇したことはないでしょうか。

セルの値によって表示内容を自動的に変えることができれば、手作業による入力ミスを防ぎながら、わかりやすい表を効率よく作成できます。

エクセルではIF関数・IFS関数・SWITCH関数・条件付き書式を組み合わせることで、値に応じた表示の自動切り替えを柔軟に実現できます。

この記事では、エクセルで値によって表示を変える方法(複数条件・IF関数・値貼り付けを自動化する関数)について、基本のIF関数から複数条件への対応・自動化まで、イメージ図を交えながら丁寧に解説していきます。

ぜひ参考にしてみてください。

【結論】エクセルで値によって表示を変えるにはIF関数が基本で、3つ以上の条件分岐にはIFS関数・SWITCH関数を使い、視覚的な色分けには条件付き書式を組み合わせるのが最も効果的

それではまず、エクセルで値によって表示を変える方法の全体像と、目的別に使うべき手段の結論について解説していきます。

条件分岐の方法には複数の選択肢があり、条件の数や種類によって使い分けることが重要です。

値によって表示を変える方法の目的別早見表

2つの条件で表示を変えたい → IF関数を使う。「80以上なら合格、それ以外は不合格」のように2択の分岐に最適。

3つ以上の条件で表示を変えたい → IFS関数(Excel2019以降)またはIF関数の入れ子(ネスト)を使う。複数の条件を順番に評価して対応する表示を返す。

特定の値と完全一致する条件で切り替えたい → SWITCH関数(Excel2019以降)を使う。「1なら優、2なら良、3なら可」のように値ごとに表示を対応させるのに向いている。

セルの色や文字色で視覚的に表示を変えたい → 条件付き書式を使う。値に応じてセルの背景色・文字色・アイコンを自動変更できる。

表示とともに値自体を計算に使いたい → CHOOSE関数や配列数式を活用する。

「2択ならIF関数、3択以上ならIFS関数かSWITCH関数」

という基本の使い分けを覚えておくだけで、ほとんどのケースに対応できます。

以下のイメージ図は、IF関数をC2セルに入力してオートフィルで下のセルに反映させている操作例を示しています。

IF関数の書式と引数の意味を理解する

IF関数は「もし〇〇ならAを表示し、そうでなければBを表示する」という条件分岐を実現する関数で、エクセルの中で最もよく使われる関数のひとつです。

IF関数の書式と引数の説明

=IF(論理式, 値が真の場合, 値が偽の場合)

引数の説明

論理式 → TRUEまたはFALSEで評価できる条件式(例 B2>=80)

値が真の場合 → 論理式がTRUEのときに表示する値や文字列

値が偽の場合 → 論理式がFALSEのときに表示する値や文字列

使用例

=IF(B2>=80,”合格”,”不合格”) → B2が80以上なら「合格」、それ以外は「不合格」

=IF(B2>0,”黒字”,”赤字”) → B2が0より大きければ「黒字」、そうでなければ「赤字」

=IF(A2=”東京”,”首都”,”地方”) → A2が「東京」なら「首都」、それ以外は「地方」

IF関数の第2・第3引数に文字列を指定する場合は必ずダブルクォーテーション「”」で囲むことが必要です。

数値を返す場合はクォーテーションは不要で「=IF(B2>=80,100,0)」のように直接数値を指定できます。

値が真の場合・偽の場合に計算式を入れる応用

IF関数の第2・第3引数には、文字列や数値だけでなく別の数式や計算式を指定することもできます。

これにより「条件を満たす場合は別の計算式で値を出す」という複雑な処理も1つの数式で表現できます。

IF関数の引数に計算式を入れる例

=IF(B2>=60,B2*1.1,B2*0.9)

→ B2が60以上なら1.1倍、未満なら0.9倍の値を返す

=IF(A2<>””,A2&”様”,”(空白)”)

→ A2が空白でなければ名前に「様」を付けて表示し、空白なら「(空白)」と表示する

=IF(TODAY()>DATE(2025,3,31),”期限切れ”,”有効”)

→ 今日の日付が2025年3月31日を過ぎていれば「期限切れ」と表示する

日付・時刻・TODAY関数・NOW関数などとIF関数を組み合わせることで、日付や時間によって表示が自動的に変わるリアルタイム判定も実現できます。

複数条件で表示を変えるIFS関数・ネストIF・SWITCH関数の使い方

続いては、3つ以上の条件に応じて異なる表示を返したい場合に使うIFS関数・IFのネスト・SWITCH関数の具体的な使い方を確認していきます。

条件の数が増えると数式が複雑になりやすいため、それぞれの特徴を理解して使い分けることが大切です。

IFS関数で複数条件を簡潔に記述する

IFS関数はExcel2019以降で使える関数で、複数の条件を並べて書くことができます。

IF関数をネスト(入れ子)にする方法と比べて、数式が読みやすくメンテナンスしやすい点が大きなメリットです。

IFS関数の書式と使用例

=IFS(論理式1, 値1, 論理式2, 値2, 論理式3, 値3, …)

使用例(点数に応じて5段階のランク表示)

=IFS(B2>=90,”S”,B2>=80,”A”,B2>=70,”B”,B2>=60,”C”,B2<60,”D”)

→ 90以上は「S」、80以上は「A」、70以上は「B」、60以上は「C」、60未満は「D」と表示

IFS関数での注意点

条件は上から順に評価されるため、範囲が広い条件(>=90)を先に書く

どの条件にも一致しない場合に「TRUE,”その他”」を最後に追加することでデフォルト値を設定できる

IFS関数はExcel2016以前では使えないため、古いバージョンとの互換性が必要な場合はIF関数のネストを使う必要があります。

以下のイメージ図は、IFS関数で5段階ランクを判定する数式を入力してオートフィルで展開している様子を示しています。

📗
Microsoft Excel — IFS関数で5段階ランク判定(オートフィル)
ホーム
数式
データ
名前ボックス
C2

fx
=IFS(B2>=90,”S”,B2>=80,”A”,B2>=70,”B”,B2>=60,”C”,B2<60,”D”)

A(氏名)
B(点数)
C(IFS関数によるランク判定)
1
氏名
点数
ランク(S/A/B/C/D)
2
田中
92
IFS関数 → S
3
鈴木
75
↑ オートフィルで反映 → B
4
山田
55
↑ オートフィルで反映 → D
5
↕ フィルハンドルをドラッグ
▲ C2にIFS関数を入力→フィルハンドルをC4までドラッグ。条件は大きい順に並べることが重要。

IF関数のネスト(入れ子)で複数条件を実現する

Excel2016以前の環境や、IFS関数を使えない状況では、IF関数を入れ子にする「ネスト」の方法が使われます。

ネストとは、IF関数の第3引数(偽の場合)にさらにIF関数を入れる構造のことです。

IF関数のネストで3段階分岐を実現する例

=IF(B2>=80,”合格”,IF(B2>=60,”要再試験”,”不合格”))

→ 80以上は「合格」、60以上80未満は「要再試験」、60未満は「不合格」

5段階分岐のネストIF例

=IF(B2>=90,”S”,IF(B2>=80,”A”,IF(B2>=70,”B”,IF(B2>=60,”C”,”D”))))

→ IFS関数と同じ結果を得られるが、閉じ括弧の数に注意が必要

ネストIFの注意点

エクセルでは最大64段階までネストできる

閉じ括弧の数が条件の数と一致していないとエラーになる

条件が多い場合はIFS関数を使う方が読みやすい

ネストIFは括弧のバランスが崩れやすいため、条件が3〜4つ以上になるとIFS関数への移行を検討することをおすすめします。

SWITCH関数で値と表示の対応を一覧形式で記述する

SWITCH関数はExcel2019以降で使える関数で、「特定の値(数値・文字列)に応じて対応する表示を返す」という処理に特化しています。

IF関数やIFS関数が範囲条件(以上・以下・より大きいなど)に向いているのに対し、SWITCH関数は完全一致する値ごとに対応する表示を定義するのに最適です。

SWITCH関数の書式と使用例

=SWITCH(式, 値1, 結果1, 値2, 結果2, …, 既定値)

使用例(数値コードに対応するステータス名を表示)

=SWITCH(A2,1,”新規”,2,”処理中”,3,”完了”,4,”キャンセル”,”不明”)

→ A2が1なら「新規」、2なら「処理中」、3なら「完了」、4なら「キャンセル」、それ以外は「不明」

使用例(曜日番号に対応する曜日名)

=SWITCH(WEEKDAY(A2),1,”日”,2,”月”,3,”火”,4,”水”,5,”木”,6,”金”,7,”土”)

→ 日付セルの曜日番号を曜日の文字に変換する

SWITCH関数はコードと名称の変換・ステータス管理・カテゴリ分類など、「特定の値ならこの表示」というルールが明確な場面で非常にすっきりした数式が書けます。

条件付き書式で値に応じてセルの色や表示を自動変更する方法

続いては、関数による文字表示の切り替えだけでなく、条件付き書式を使ってセルの背景色・文字色・アイコンを値に応じて自動的に変更する方法を確認していきます。

視覚的な強調は一覧表の読みやすさを大幅に向上させる効果的な手法です。

条件付き書式で値の大小に応じてセルを色分けする

条件付き書式は、セルの値が特定の条件を満たすときに自動的に書式(色・太字・アイコンなど)を変更する機能です。

IF関数と異なり、セルの値そのものは変えずに見た目だけを自動変更できる点が特徴です。

条件付き書式で80以上のセルを緑に色付けする手順

① 色付けしたいセル範囲(例 B2:B11)を選択する

②「ホーム」タブ →「条件付き書式」→「セルの強調表示ルール」→「指定の値より大きい」をクリックする

③ 入力欄に「79」(79より大きい、つまり80以上)を入力する

④ 書式のドロップダウンで「緑の塗りつぶし」などを選ぶ → OK

数式を使った詳細なルール設定

「条件付き書式」→「新しいルール」→「数式を使用して〜」を選択

=B2>=80 と入力して書式を設定 → OK

→ B2が80以上のセルだけが自動で色付けされる

複数の条件を組み合わせてより細かい色分けも可能です。

たとえば「90以上は赤・80以上は橙・70以上は黄」のように複数のルールを重ねて設定することで、ヒートマップのような視覚的に直感的な一覧表が作れます。

カラースケール・データバー・アイコンセットを活用した視覚化

条件付き書式には「カラースケール」「データバー」「アイコンセット」という3種類の視覚化機能が標準で用意されています。

機能名 表示内容 主な用途
カラースケール 値の大小をグラデーション色で表現 売上分布・温度変化などの連続値の可視化
データバー セル内に値の大きさを棒グラフで表示 数値の大小を棒の長さで直感的に把握
アイコンセット 矢印・信号・星などのアイコンを自動表示 前月比・達成状況・リスクレベルの判定

これらの機能は「ホーム」タブ →「条件付き書式」→「カラースケール」「データバー」「アイコンセット」から選択するだけで設定できます。

手動設定なしに値の大小が視覚的に伝わる表を作れるため、報告書やダッシュボードの作成に非常に効果的です。

条件付き書式でIF関数の結果に基づいて行全体を色付けする

「判定列が『不合格』の行全体を赤くしたい」など、特定の列の値に基づいて行全体の色を変えたい場合は、条件付き書式の数式設定で列参照を絶対参照にします。

判定列の値で行全体を色付けする条件付き書式の設定

① データ全体の範囲(例 A2:C11)を選択する

②「ホーム」タブ →「条件付き書式」→「新しいルール」→「数式を使用して〜」を選択する

③ 数式欄に以下を入力する

=$C2=”不合格”

→ C列(判定列)が「不合格」の行全体が色付けされる

ポイント

列のみ絶対参照($C2)にすることで、行は変化しながらC列を参照し続ける

列も行も絶対参照($C$2)にすると1行しか判定されないため注意

「$C2」のように列のみ絶対参照にする

のが行全体を色付けするための最重要ポイントです。

これを覚えておけば、IF関数の判定結果・ステータス列・フラグ列などを使って表の行全体を自動で色分けするさまざまな応用が可能になります。

CHOOSE関数・TEXT関数・ユーザー定義書式で表示を柔軟に制御する方法

続いては、IF関数・IFS関数以外の方法で値に応じた表示をコントロールできる、CHOOSE関数・TEXT関数・ユーザー定義書式の活用方法を確認していきます。

状況に応じてこれらを使い分けることで、より洗練された表が作れます。

CHOOSE関数でインデックス番号に対応する表示を返す

CHOOSE関数は、1から始まるインデックス番号に対応する値の一覧から表示内容を選択して返す関数です。

SWITCH関数と似ていますが、インデックスが数値(1・2・3…)に限定されるCHOOSE関数は、評価や段階の表示変換に向いています。

CHOOSE関数の書式と使用例

=CHOOSE(インデックス, 値1, 値2, 値3, …)

使用例(1〜5の評価番号を評価テキストに変換)

=CHOOSE(A2,”非常に不満”,”不満”,”普通”,”満足”,”非常に満足”)

→ A2が1なら「非常に不満」、2なら「不満」、3なら「普通」、4なら「満足」、5なら「非常に満足」

使用例(WEEKDAY関数と組み合わせて曜日を表示)

=CHOOSE(WEEKDAY(A2),”日”,”月”,”火”,”水”,”木”,”金”,”土”)

→ 日付から曜日名を取得する。TEXT関数でも実現可能。

CHOOSE関数は引数の個数が最大254個まで指定できるため、アンケートの選択肢変換・月次報告のカテゴリ名変換・コードと名称の対応など幅広い場面で活用できます。

以下のイメージ図は、CHOOSE関数を使って評価番号を評価テキストに変換している操作例を示しています。

📗
Microsoft Excel — CHOOSE関数で評価番号を表示テキストに変換(オートフィル)
ホーム
数式
データ
名前ボックス
B2

fx
=CHOOSE(A2,”非常に不満”,”不満”,”普通”,”満足”,”非常に満足”)

A(評価番号)
B(CHOOSE関数による評価テキスト)
1
評価番号(1〜5)
評価テキスト
2
5
=CHOOSE(A2,…) → 非常に満足
3
3
↑ オートフィルで反映 → 普通
4
1
↑ オートフィルで反映 → 非常に不満
5
↕ フィルハンドルをドラッグ
▲ B2にCHOOSE関数を入力→フィルハンドルをドラッグ。インデックス番号1〜5が評価テキストに自動変換される。

TEXT関数で数値の表示形式を値に応じて変換する

TEXT関数は、数値を指定した書式の文字列として変換する関数です。

日付を曜日付きで表示したり、数値にカンマや単位を付けて文字列として出力したりする際に便利です。

TEXT関数の書式と使用例

=TEXT(値, 表示形式)

使用例(数値に「円」を付けて表示)

=TEXT(A2,”#,##0円”) → 「150,000円」のように表示

使用例(日付から曜日を取得)

=TEXT(A2,”aaaa”) → 「月曜日」「火曜日」などを返す

=TEXT(A2,”aaa”) → 「月」「火」などの短縮形を返す

IF関数と組み合わせて単位を動的に変える例

=TEXT(A2,IF(A2>=10000,”#,##0万円”,”#,##0円”))

→ 10000以上なら「万円」単位で表示、未満なら「円」で表示

TEXT関数の結果は文字列のため数値計算には使えませんが、レポートや帳票で「○○円」「○○%」のように単位付きで表示したい場合にIF関数と組み合わせると非常に柔軟な表示制御ができます。

ユーザー定義書式で値に応じた表示を設定する

ユーザー定義書式は、セルの書式設定でカスタムの表示形式を設定する機能です。

プラスの値・マイナスの値・ゼロ・テキストにそれぞれ異なる表示を設定できます。

ユーザー定義書式で正・負・ゼロの表示を変える例

設定場所 → セルを右クリック →「セルの書式設定」→「表示形式」タブ →「ユーザー定義」→「種類」欄に入力

書式コード例(正値・負値・ゼロの3セクション区切り)

[緑]+#,##0;[赤]-#,##0;[青]0

→ プラスは緑で「+1,000」、マイナスは赤で「-500」、ゼロは青で「0」と表示

書式コード例(テキストセクション含む4セクション)

#,##0″円”;;0″円”;”(文字列)”

→ 正の値に「円」を付け、ゼロには「0円」、テキストには「(文字列)」を表示

ユーザー定義書式は実際の値を変えずに表示だけを変更できるため、計算にも使いながら見た目を整えたい場面で特に有効です。

正負の色分けや単位の自動付与など、IF関数を使わずに実現できる表示変換として覚えておくと便利でしょう。

まとめ エクセルで値によって文字や計算式や色を変える(IF関数・セルの値貼り付けを自動化する関数)

この記事では、エクセルで値によって表示を変える方法(複数条件・IF関数・値貼り付けを自動化する関数)について、IF関数・IFS関数・SWITCH関数・CHOOSE関数・TEXT関数・条件付き書式・ユーザー定義書式まで幅広く解説しました。

2択の条件分岐にはIF関数が基本で、3つ以上の条件にはIFS関数(Excel2019以降)かIF関数のネストを使い、特定の値との完全一致ならSWITCH関数が最も読みやすい数式になります。

インデックス番号に対応した表示変換にはCHOOSE関数、数値の書式変換にはTEXT関数やユーザー定義書式が適しています。

視覚的な強調には条件付き書式を組み合わせ、カラースケール・データバー・アイコンセットを活用することで直感的にわかりやすい表が完成します。

「2択ならIF関数、多条件ならIFS・SWITCH関数、視覚化には条件付き書式」という使い分けを基本に、目的に合わせた関数を組み合わせることが、値によって表示を自在に変える最短の近道です。

今回の内容を活用して、エクセルでのデータ表示の自動化をよりスムーズに進めていただけますと幸いです。