Excel情報521 関数--Excel 文字列を比較する方法(完全一致・部分一致)
【テーマ】
Excelには文字列が一致しているかを調べる機能が複数あります。その機能には完全一致を調べるものと部分一致を調べる、あいまい検索があります。今回は文字列比較機能のそれぞれの特徴を紹介します。
【方法】
完全一致については比較演算子とEXACT関数を紹介いたします。部分一致についてはワイルドカード文字を使用した条件式の使用例を一部紹介します。
【参考】
ワイルドカードについては、「バックナンバー249」をご参照ください。VLLOKUP関数については「バックナンバー242」をご参照ください。MATCH関数については「バックナンバー342」をご参照ください。
Excelには文字列が一致しているかを調べる機能があり、
一致していれば真(TRUE)一致していなければ偽(FALSE)と結果を返します。
そこで今回は、文字列を比較する機能についてご紹介いたします。
◆完全一致
比較演算子(=) 
比較演算子の「=」は文字列がすべて一致している場合に結果を真(以下TRUEと表記する)として返します。
数式は以下の通りになります。
 =文字列1=文字列2
また特徴は次の通りとなります。
@のように比較が厳密でない部分があるため厳密な比較を行いたい場合はEXACT関数を使用します。
EXACT関数 
EXACT関数は以下のような数式となります。
 =EXACT(文字列1,文字列2)
また特徴は次の通りとなります。
上記の図のように@とBで結果が比較演算子と異なりますので
比較したい内容によって使い分けをしていきましょう。
使用例として、仕入れ確認票の正誤判定や注文書に誤りがないか、顧客の重複確認などが考えられます。
※補足
JIS関数(半角を全角に変換する関数)やASC関数(全角を半角に変換する関数)を
比較演算子やEXACT関数に組み合わせ全角文字半角文字どちらかに揃えてしまう方法もございます。
◆部分一致
文字列内に含まれるパターンや前方一致、後方一致しているなど、
部分一致している文字列を検索するにはワイルドカード文字を使います。
※ワイルドカードについては、以下のバックナンバーもご参照ください。
【バックナンバー249】関数--ワイルドカード Excel2007版
?は任意の文字数が何文字かを明確に指定したい場合に使用します。(下記表D6〜D8参照)
*(アスタリスク)については以下の数式を条件式に挿入します。
部分一致:"*文字列*"
前方一致:"
文字列*"
後方一致:"
*文字列"
以下、ワイルドカード文字を使った条件式のうち、
VLOOKUP関数(下記表D3〜D8参照)を用いた使用例となります。
※VLOOKUP関数については、以下バックナンバーもご参照ください。
【バックナンバー242】関数--検索機能 VLOOKUP Excel2007版
次にMATCH関数(下記表D3〜D8参照)を用いた使用例となります。
MATCH関数単体だと、上記表E10のように該当する条件が範囲内の何番目かを結果として返すので
該当セル内の文字を返すには上記表のD3〜D8のようにINDEX関数を複合させた数式が必要となります。
※MATCH関数については、以下バックナンバーもあわせてご参照ください。
【バックナンバー342】関数--MATCH関数
Copyright(C) アイエルアイ総合研究所 無断転載を禁じます