エクセルで、2つの文字列がまったく同じかどうかを、大文字・小文字まで区別して調べるには EXACT関数を使います。「Excel」と「Excel」なら =EXACT(A3,B3) で TRUE、「Excel」と「excel」なら FALSE です。
ふつうの「=」の比較は大文字・小文字を区別しないので、パスワードやコードの照合のように厳密に比べたいときに EXACT関数を使います。この記事では、EXACT関数の基本、「=」との違い、スペースや全角・半角の違い、一致したときの表示、大文字・小文字を無視して比べる方法までを、1つの表で説明します。下の練習ツールで、文字を書き換えて結果の変わり方を試せます。
まず動かしてみよう|この記事のサンプルをその場で試せます
練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。
EXACT関数の書き方
同じなら TRUE、少しでも違えば FALSE を返します。書式(太字や色)の違いは比べません。
EXACT関数の使い方|やりたいこと別の式
| 比べるもの | 式(例) | 結果 |
|---|---|---|
| 「Excel」と「Excel」 | =EXACT(A3,B3) | TRUE |
| 「Excel」と「excel」 | =EXACT(A4,B4) | FALSE |
| 同じ2つを「=」で比べる | =A5=B5 | TRUE |
| 後ろにスペースがある | =EXACT(A6,B6) | FALSE |
| 全角「ABC」と半角「ABC」 | =EXACT(A7,B7) | FALSE |
| スペースを消してから | =EXACT(A8,TRIM(B8)) | TRUE |
| 一致なら「OK」 | =IF(EXACT(A9,B9),”OK”,”違います”) | 違います |

2つの文字列がまったく同じか比べる
同じ「Excel」なので TRUE です。
「=」での比較との違い(大文字・小文字)
「Excel」と「excel」を比べると、=EXACT(A4,B4) は FALSE ですが、=A5=B5 は TRUE になりました。「=」は大文字・小文字を区別しないためです。
| 比べ方 | 大文字・小文字 | 「Excel」と「excel」 |
|---|---|---|
| EXACT関数 | 区別する | FALSE |
| =(イコール) | 区別しない | TRUE |
▶ この式(D4)を、上の練習ツールで試す / この式(D5)を、上の練習ツールで試す
スペースや全角・半角の違いも見分ける
後ろにスペースが1つある「Excel 」とは FALSE、全角の「ABC」と半角の「ABC」も FALSE でした。見た目が同じでも一致しないときは、これらを疑います。スペースが原因なら、TRIM関数で消してから比べます。
結果は TRUE です(TRIM関数の使い方)。
▶ この式(D6)を、上の練習ツールで試す / この式(D7)を、上の練習ツールで試す / この式(D8)を、上の練習ツールで試す
一致したら「OK」と表示する
「pass123」と「Pass123」は先頭の大文字・小文字が違うので、結果は 違います です。入力したコードやパスワードの確認に使えます(IF関数の使い方)。
大文字・小文字を無視して比べる
両方を UPPER関数で大文字にしてから比べると、「ABC」と「abc」は TRUE になります。スペースや全角・半角の違いは見分けたまま、大文字・小文字だけ無視できます(UPPER関数・LOWER関数の使い方)。
EXACT関数がうまくいかないときの確認表
| 症状 | 考えられる原因 | 対処 |
|---|---|---|
| 同じに見えるのに FALSE | スペース・全角半角・大文字小文字の違い | LEN関数で文字数を比べる。TRIM・ASC関数でそろえる。 |
| 数値と文字の数字を比べたい | EXACT関数はどちらも文字として比べる | 「123」と 123 は TRUE。「=」では FALSE になる。 |
| 範囲の中に同じ文字があるか調べたい | EXACT関数は2つを比べるだけ | =SUMPRODUCT(–EXACT(範囲,文字))>0 で調べる。 |
| 大文字・小文字を区別したくない | EXACT関数は区別する | 「=」で比べるか、UPPER関数でそろえる。 |
EXACT関数のよくある質問
VLOOKUP関数で大文字・小文字を区別して探せる?
VLOOKUP関数は区別しません。区別したいときは =INDEX(結果の範囲,MATCH(TRUE,EXACT(検索の範囲,値),0)) のように EXACT関数を組み合わせます。
重複チェックで大文字・小文字を区別したい
=SUMPRODUCT(--EXACT($A$3:$A$10,A3))>1 のようにすると、まったく同じ文字が2つ以上あるかを調べられます。
あわせて読みたい:文字の比較の関連記事
練習用ファイル:練習用Excelファイル(.xlsx・無料)
