大量に情報が入力されているExcelにおいて、2つ以上のセルを目視だけで比較するのは非常に困難です。大文字と小文字の違い、僅かな数値・記号の違いは特に見落としやすく、ヒューマンエラーの原因となるため注意しましょう。

今回は、セル情報の比較に役立つEXACT関数について解説します。他関数との併用や似ている関数にも触れているのでお役立てください。

チャット一括管理アプリ「OneChat」が今なら初月無料!!

OneChatのダウンロードはこちらから

EXACT関数の基本的な使い方

excel exact

EXACT関数とは、2つのテキスト文字列を比較し、両者が完全に同一の場合は論理値TRUE、そうでない場合はFALSEを返す関数です。まずはEXACT関数の基本的な使い方を解説します。

EXACT関数の構文と引数

EXACT関数の基本構文は、「=EXACT(text1,text2)」です。「text1」でひとつ目の文字列を、「text2」で比較したいもうひとつの文字列を指定します。大文字と小文字が区別されるため、例えば「TIME」と「time」は別のセルだと判断されます。完全一致かどうか判断したいときに便利な関数です。

ただし、書式の違いは無視されるので注意しましょう。「2024/1/1」と「2024年1月1日」は同一セルだと判断されるため、見た目も含めて完全に揃えたいときは事前に書式を一致させておく必要があります。

基本的な使用例

excel exact

【1】比較したいセルを並べて、EXACT関数を入力します。「=EXACT(C4,D4)」で、C4とD4のセルを比較できます。

excel exact

【2】同じ内容を他のセルにコピーすることで、広範囲を一気に比較できます。アルファベットの大文字・小文字も別のものとみなされるため、「TRUE」と返されるのは完全に一致しているセルのみに変わります。

広範囲を比較する方法

excel exact

【1】EXACT関数では、セルひとつひとつだけでなく範囲を指定して比較することも可能です。表全体がもうひとつの表と完全に一致するか調べたいときや、セルの数が多すぎてひとつずつ比較するのが手間なときに役立てましょう。

今回は、上記のような2つの表を用意しています。ほぼ同じ表に見えますが、3行目の「数」の部分だけ僅かに異なります。

excel exact

【2】広範囲を比較したいときは、EXACT関数だけでなくAND関数も併用します。AND関数とは、複数の条件が全て満たされているかどうかを調べる関数です。

全ての条件を満たしていれば「TRUE(真)」、ひとつでも条件を満たしていなければ「FALSE(偽)」と結果を表示します。「=AND (logical1, [logical2], …)」で表すことができ、「logical1」はTRUEまたはFALSEとして評価できるテスト対象1つ目の条件を入力する部分です。「論理式1」として必須項目である一方、「logical2」は省略可能です。「logical3」いずれもTRUEまたはFALSEとして評価できるテスト対象となっている必要があるため注意しましょう。「logical4」…と最大255個の条件まで追加できます。

今回は、「=AND(EXACT(A3:C10,E3:G10))」と入力します。「A3からC10の範囲にある内容と、E3からG10の範囲にある内容とが完全に一致しているか」を問う関数として使えます。

excel exact

【3】指定範囲内に1セル分でも違いがあった場合、結果は「FALSE」と表示されます。指定する範囲が広すぎるとどこに差異があるかわかりにくくなってしまうため、細かく範囲を区切りながらチェックするなど工夫しながら使いましょう。

EXACT関数との使い分けに便利な関数

excel exact

次に、EXACT関数と似ている関数を紹介します。使い分けることでより便利に活用できるので試してみましょう。

DATEDIF関数を使って日付の差異を調べる

excel exact

【1】DATEDIF関数とは、2つの日付のシリアル値から期間を求め、その間の「年数」「月数」「日数」を求める関数です。入力された日付を起算日として経過日数を求めるときによく使われる関数ですが、差異を計算したいときにも役立ちます。

「=DATEDIF(C4,D4,”D”)」で、C4の日付からD4の日付までに経過した日数がわかります。

excel exact

【2】同様のDATEDIF関数を関数を適用することで、それぞれの経過日数がわかりました。結果が「0」であれば完全に同一の日付であり、それ以外の結果であれば日付に差があるとわかります。

excel exact

【3】DATEDIF関数は「=DATEDIF(開始日,終了日,単位)」で示せますが、単位は「年数」「月数」「日数」で変わります。「年数」のときは「Y」、「月数」のときは「M」、「日数」のときは「D」を入力しましょう。

ただし、差異を確認したいときは「日数」を示す「D」にするのがおすすめです。「年数」を示す「Y」や「月数」を示す「M」を入力した場合、日付に差異があっても同じ年内・月内であれば「0」が返ってきます。一方、「日数」を示す「D」であれば、±1日の範囲で細かく差異を表示できるので、一致・不一致をわかりやすく判定できます。

IF関数を使って指定書式で結果を返す

excel exact

【1】IF関数とは、指定した条件を満たしている時と満たしていない時で異なる値を表示させることができる関数です。IF関数とEXACT関数を使い分けることで、「TRUE」「FALSE」以外のわかりやすい表記で結果を返せます。例えばTRUEを「〇」に、FALSEを「×」にしたいときは、=IF(EXACT(C4,D4),”〇”,”×”)と表記します。

excel exact

【2】一致・不一致が記号で示されるため、直観的にわかりやすい一覧を作れます。なお、ここではEXACT関数を使ってアルファベットの大文字と小文字を区別しています。

「=」を使用した比較

excel exact

【1】最も簡単な手法として、「=」を使った比較があります。比較したい2つのセルに入力されている内容が一致していれば「TRUE」を、間違っていれば「FALSE」を返します。

ここでは「=C4=D4」と入力し、C4セルとD4セルの内容を比較しています。

excel exact

【2】同じ内容を他のセルにコピーすることで、広範囲を一気に比較できます。ただし、「=」で比較する場合、アルファベットの大文字と小文字は区別されません。「A」でも「a」でも合致とみなして「TRUE」を返すため、大文字・小文字を区別しなくてよいときに使いましょう。

よくある質問

ExcelのEXACT関数に関して「よくある質問」を紹介します。

EXACT関数と=の違いは?

EXACT関数と「=」の違いは、アルファベットの大文字と小文字の区別にあります。

「=」の場合、アルファベットの大文字と小文字は区別されないため、「A」でも「a」でも合致とみなして「TRUE」を返します。大文字・小文字を区別しなくてよいときに使いましょう。

一方、EXACT関数はアルファベットの大文字と小文字を区別できるので、「TRUE」と返されるのは完全に一致しているセルのみに限定されます。「=」での比較では不十分なときに役立ちます。

ExcelのEXACTとは?

「EXACT」は、もともと「正確な」「厳密な」「精密な」「几帳面な」の意味を持つ英単語です。Excelにおいて「EXACT関数」と表現する場合、2つのテキスト文字列を比較し、両者が完全に同一の場合は論理値TRUE、そうでない場合はFALSEを返す関数を意味します。

まとめ

EXACT関数はセルや範囲を指定して一致の有無を調べられる関数であり、アルファベットの大文字・小文字も区別できるのが特徴です。完全一致であれば「TRUE」と返してくれるので、似たデータが複数混在してしまったときや昨対比などこれまでのデータと比較したいときに活用しましょう。

その他、AND関数・IF関数・DATEIF関数などと組み合わせや使い分けをしながら利用するのもおすすめです。

Excel EXACT関数に関する重要用語

用語説明
EXACT関数2つのテキスト文字列を比較し、両者が完全に同一の場合は論理値TRUE、そうでない場合はFALSEを返す関数。アルファベットの大文字と小文字を区別できる。
AND関数複数の条件が全て満たされているかどうかを調べる関数。「=AND (logical1, [logical2], …)」で表す。
IF関数指定した条件を満たしている時と満たしていない時で異なる値を表示させることができる関数。
DATEDIF関数2つの日付のシリアル値から期間を求め、その間の「年数」「月数」「日数」を求める関数。