科学や計算関連

【Excel】エクセルでデータ・セル・文字列を比較する方法(比較機能・内容比較)

エクセルでセルの内容を比較する方法
当サイトでは記事内に広告を含みます

Excelでは、二つの表やセルに入力されたデータを比較し、同じ値か異なる値かを確認できます。

売上表の更新前後を照合したい場合、名簿の変更箇所を探したい場合、文字列の一致を判定したい場合など、内容比較が必要になる場面は少なくありません。

比較の目的に合わせて数式、条件付き書式、検索機能を使い分けると、目視だけでは見落としやすい差分も効率よく確認できます。

セル同士を比べる基本式は「=A2=B2」です。

大文字と小文字まで区別したいときはEXACT関数を使います。

複数行の差分は条件付き書式で色分けすると確認しやすくなります。

この記事では、エクセルでデータ・セル・文字列を比較する方法を、サンプル表と数式を交えて解説します。

1行目には見出しがあり、データは2行目から入力されているものとして進めましょう。

 

エクセルでセルの内容を比較する方法

商品名 旧データ 新データ 比較結果
りんご 120 120 TRUE
みかん 150 180 FALSE

それではまず、同じ行にある二つのセルを数式で比較する方法について解説していきます。

値、日付、文字列は、比較演算子を使うだけで一致判定できます。

比較結果を表示するD2セルには、次の数式を入力します。

=B2=C2

この式では、B2とC2が同じならTRUE、違えばFALSEが返されます。

比較対象のセル番地は、1行目の見出しではなく2行目の実データを指定することが基本です。

 

TRUEとFALSEによる一致判定

セル比較の結果は、初期設定ではTRUEまたはFALSEで表示されます。

TRUEは一致、FALSEは不一致を意味する論理値です。

数値の120と120、日付として同じ値、完全に同一の文字列であればTRUEになります。

一方で、数値が異なる場合だけでなく、余分な空白や全角半角の違いがある場合もFALSEになることがあります。

比較結果がFALSEだったときは、表示上の見た目だけで判断せず、数式バーで実際の入力内容を確認しましょう。

【操作のポイント】比較式は等号を二つ続けて入力します。等号が一つだけでは数式の開始と認識されるため注意が必要です。

 

一致と不一致を文字で表示するIF関数

TRUEやFALSEでは意味が伝わりにくい表では、IF関数で表示内容を変えると便利です。

=IF(B2=C2,”一致”,”不一致”)

この数式をD2に入力すると、B2とC2が同じ場合は一致、異なる場合は不一致と表示されます。

IF関数を使うと、比較結果を報告書やチェックリストで読みやすい言葉に置き換えられます

数式を入力した後は、D2セル右下のフィルハンドルを下方向へドラッグして、対象行にコピーしましょう。

空白行まで判定したくない場合は、先にB列が空白かどうかを確認する式を加える方法もあります。

=IF(B2=””,””,IF(B2=C2,”一致”,”不一致”))

【操作のポイント】文字列は必ず半角の二重引用符で囲みます。引用符が全角だと数式エラーになることがあります。

 

数式を下の行へコピーする操作

比較する行数が多い場合は、数式を一つずつ入力する必要はありません。

D2セルを選択してから右下にある小さな四角へポインターを合わせ、十字の形になった状態でダブルクリックします。

隣接するデータ範囲に合わせて、Excelが数式を最終行まで自動コピーします。

数式内のB2とC2は、下の行ではB3とC3のように自動調整されます。これを相対参照と呼びます。

比較列を追加した後に元データを並べ替える可能性があるなら、二つの範囲を同時に選択して並べ替える運用が安全です。

エクセルでセルの内容を比較する方法

【操作のポイント】オートフィル前に途中の空白行がないか確認します。空白があるとコピー範囲が意図より短くなるかもしれません。

 

エクセルで文字列を比較するEXACT関数

文字列A 文字列B EXACT結果
Excel excel FALSE
東京 東京 TRUE

続いては、文字列の表記差まで細かく確認できるEXACT関数を確認していきます。

 

EXACT関数の書式と基本動作

EXACT関数は、二つの文字列が完全に同一かどうかを判定する関数です。

=EXACT(B2,C2)

この式は、文字の並び、大文字と小文字、記号を比較して、同じならTRUEを返します。

通常の「=B2=C2」と異なり、EXACT関数は英字の大文字と小文字を区別します

ログインID、商品コード、英字を含む管理番号など、表記そのものに意味があるデータの確認に向いています。

【操作のポイント】EXACT関数は数値を比較することもできますが、文字列の厳密な照合に使うと役割が明確です。

 

大文字小文字と全角半角の違い

Excelという文字列とexcelという文字列は、人の目にはほぼ同じでもEXACT関数では不一致です。

また、全角のAと半角のA、半角スペースと全角スペースも別の文字として扱われます。

データを比較する前に、表記ルールをそろえることが差分確認の精度を高める近道です

余分な半角スペースが混ざりやすいデータにはTRIM関数、全角半角を整理したいデータにはJIS関数やASC関数を組み合わせる方法があります。

=EXACT(TRIM(B2),TRIM(C2))

この式なら、文字列の前後や連続した半角スペースを整理してから比較できます。

【操作のポイント】住所や氏名では表記の揺れにも業務上の意味がある場合があります。自動補正の前に元データを保存しましょう。

 

部分一致を確認するSEARCH関数

完全一致ではなく、指定した文字が含まれるかを確認したい場合はSEARCH関数を使います。

=IF(ISNUMBER(SEARCH(B2,C2)),”含まれる”,”含まれない”)

この数式は、C2の中にB2の文字列が含まれているかを判定します。

SEARCH関数は大文字小文字を区別しないため、柔軟な部分一致検索に適しています。

一方で、大文字小文字も区別する部分一致にはFIND関数を使います。

完全一致、部分一致、表記の厳密比較は似ていても目的が異なります

エクセルで文字列を比較するEXACT関数

【操作のポイント】検索文字列が見つからないとSEARCH関数はエラーになります。IFERROR関数を組み合わせると表を整えやすくなります。

 

条件付き書式による差分の色分け

A列 B列 判定
田中 田中太郎 不一致
佐藤 佐藤 一致

続いては、数式の結果を見ながら差分セルだけを自動で色分けする方法を確認していきます。

 

比較する範囲の選択

条件付き書式では、先に色を付けたい範囲を選択します。

たとえばB列の新データだけを強調するなら、B2からB100のようにデータ範囲を選択します。

次にホームタブの条件付き書式から新しいルールを選び、数式を使用して書式設定するセルを決定を選択します。

選択範囲の先頭行と、数式内の行番号を合わせることが、正しい色分けの重要なポイントです。

【操作のポイント】列全体を選択すると見出し行や空白セルまで書式が及ぶ場合があります。必要なデータ範囲だけを選びます。

 

不一致セルを強調する数式

B列の値がA列と異なるときに色を付ける場合は、次の数式をルールに入力します。

=$A2<>$B2

不等号の組み合わせは、等しくないという意味です。

列記号の前に付けたドル記号は列を固定し、各行でA列とB列を比較するために使います。

行番号にはドル記号を付けないため、3行目以降では自動的にA3とB3へ変わります

書式ボタンから塗りつぶし色を選択してOKを押すと、不一致のセルだけが目立つようになります。

条件付き書式による差分の色分け

【操作のポイント】数式の比較対象と選択範囲を逆にしないようにします。B列を塗るならB列を選択してからルールを作成します。

 

一致セルを色分けする応用

一致しているデータだけを確認したい場合は、数式を「=$A2=$B2」に変更します。

照合済みの行を緑色にし、確認が必要な不一致を赤系の色にするなど、二つのルールを設定する運用もできます。

色だけに頼ると印刷時に区別しにくいため、判定列に一致または不一致も表示しておくと安心です。

条件付き書式は元の値を変更せず、見た目だけを変える機能です

差分を修正した瞬間に色が自動更新されるため、突合作業の途中確認にも役立ちます。

【操作のポイント】同じ範囲に複数のルールがあると優先順位が影響します。条件付き書式のルールの管理で順番を確認しましょう。

 

複数表のデータを照合するXLOOKUP関数

商品コード 入力表の商品名 マスター照合
A001 りんご りんご
A002 みかん みかん

続いては、別の表から対応するデータを取り出して内容比較する方法を確認していきます。

比較表.xlsx – Excel ● □ ×
ファイル ホーム 挿入 ページ レイアウト 数式 データ 校閲 表示
貼り付け 太字 B 罫線 配置 オートSUM
fx =XLOOKUP(A2,マスター!A:A,マスター!B:B,”未登録”)
A B C
1 商品コード 商品名 照合結果
2 A001 りんご りんご
➤ C2に数式を入力し、下へオートフィルします

 

XLOOKUP関数で基準表を参照する式

XLOOKUP関数は、指定した検索値を別表で探し、対応する値を返す関数です。

=XLOOKUP(A2,マスター!A:A,マスター!B:B,”未登録”)

この式ではA2の商品コードをマスターシートのA列で検索し、見つかった行のB列の商品名を返します。

見つからない場合には未登録と表示されるため、登録漏れも同時に確認できます。

照合の基準には、氏名よりも重複しにくい社員番号や商品コードを使うと正確です

【操作のポイント】検索範囲と戻り範囲は同じ行数にします。片方だけ長い範囲にすると意図しない結果になることがあります。

 

参照結果と入力値を比較する方法

マスターから取得した値と入力表の値を比較すれば、名称の誤入力も確認できます。

=IF(B2=C2,”一致”,”要確認”)

たとえばB列を入力された商品名、C列をXLOOKUPの検索結果とすると、異なる行だけ要確認と表示されます。

コード照合と名称照合を分けると、どこに誤りがあるかを判断しやすくなります

ExcelのバージョンによってXLOOKUP関数が使えない場合は、VLOOKUP関数やINDEX関数とMATCH関数の組み合わせを検討しましょう。

【操作のポイント】XLOOKUP関数の検索モードを省略すると完全一致で検索されます。コードの照合では完全一致を基本にします。

 

フィルターを使った不一致データの抽出

判定列に要確認や不一致が表示されたら、フィルターで該当行だけを抽出できます。

見出し行を選択してデータタブのフィルターを有効にし、判定列の一覧から不一致だけを選択します。

大量の行がある表でも、修正すべきデータだけを一覧で確認できるでしょう。

修正が終わったらフィルターを解除し、判定列がすべて一致になったかを再確認します。

【操作のポイント】抽出後に貼り付けや削除を行う際は、非表示行にも影響しないかを確認してから操作します。

 

比較結果の確認とエラー対策

確認項目 主な原因 対処
FALSEが多い 空白や形式の違い TRIMや表示形式を確認
#N/A 検索値がない 元表とコードを確認

続いては、比較結果が想定どおりにならないときの確認事項を解説していきます。

 

数値と文字列として保存された数字

同じ123に見えても、片方が数値、もう片方が文字列として保存されている場合があります。

セル左上の緑色の三角形や、左寄せ表示は文字列の数字である目安です。

VALUE関数で数値へ変換するか、エラー表示のメニューから数値に変換を選択します。

比較前にデータ型をそろえると、見た目では分からない不一致を減らせます

【操作のポイント】先頭のゼロが必要な郵便番号やコードは、数値に変換すると情報が失われるため文字列のまま扱います。

 

空白文字と表示形式の確認

セルが空白に見えても、半角スペース、改行、数式による空文字が含まれていることがあります。

LEN関数で文字数を確認し、TRIM関数やCLEAN関数で不要な文字を整理すると原因を見つけやすくなります。

=LEN(B2)

日付や時刻では、表示形式が同じでも内部の時刻部分が異なることもあります。

必要に応じてINT関数で日付部分だけを比較するなど、比較したい粒度を明確にしましょう。

【操作のポイント】空文字を返す数式セルは、完全な空白セルとは別に扱われる場合があります。

 

比較前のバックアップと元データ管理

照合中に置換や文字列整形を行うと、元の値を戻したくなることがあります。

作業前にファイルを別名保存し、元データ用シートを残しておくと安心です。

比較作業では、修正前のデータと修正後のデータを区別して保管することが重要です

更新日、担当者、比較対象のファイル名を別の列に記録しておけば、後から確認する際にも役立ちます。

【操作のポイント】共有ファイルでは上書き保存の前に、比較結果と修正内容を関係者へ共有する運用が安全です。

 

まとめ エクセルで文字列・セル・データを比較する方法

エクセルでデータを比較する基本は、二つのセルを等号二つで結ぶ「=B2=C2」です。

一致と不一致を分かりやすく表示するならIF関数、英字の大文字小文字まで厳密に確認するならEXACT関数を使います。

複数行の差分は条件付き書式で色分けし、別表との照合はXLOOKUP関数で行うと効率的です。

比較対象のデータ型、空白、表記ルールをそろえることが、正しい内容比較につながります

数式と色分け、フィルターを組み合わせ、見落としの少ないチェック表を作っていきましょう。