こんにちは、わたあめです。今日は、Excelでのカタカナ文字列比較の記事になります。
と言う状況に陥りました。元データが全角・半角どちらかに統一をしてなくて混ざっている状態。また、OCR処理して取得した文字列は元データと全角・半角違ったりしますよね。
今回は、全角・半角が入り混じったカタカナデータの文字列比較を行う方法を紹介していきます。
- 一時的にすべてのカタカナを半角に変換する
- 文字列比較を行う
それでは、いってみましょう!
事象:IF文でカタカナ文字の比較しても不一致になる
方法紹介の前に、いまどんな状況か整理しておきます。(不要なかたは早速次章にスキップしてくださいね。)
文字列比較は以下のようなIF文を使って行います。(A1とB1のセルの文字列を比較している例です。)
これだと、カタカナの比較結果は下表通りになってしまいます。
比較文字1 | 比較文字2 | 比較結果 |
アイウエオ(全角) | アイウエオ(全角) | 一致 |
アイウエオ(全角) | アイウエオ(半角) | 不一致 |
アイウエオ(半角) | アイウエオ(半角) | 一致 |
同じ「アイウエオ」でも、半角と全角が違えば結果は”不一致”となってしまうのです。今回は、半角・全角が混じった文字列でも比較するということを行っていきます!
全角・半角まじりのカタカナデータを比較する
比較の流れは以下の通りです。
- すべてのカタカナを半角に変換する
- 文字列を比較する
①すべてのカタカナを半角に変換する
まずは、データのカタカナを全て半角に統一していきます。とあるセルの文字列の全角カタカナを半角に変換するには、ASCという関数式を使います。
セルA1の全角カタカナを半角カタカナにする場合は、「=ASC(A1)」という風に式を記入します。ASC関数を使ってカタカナすべてを半角に変換してみました。
全角カタカナは半角カタカナへ、元々半角カタカナだった場合はそのまま半角カタカナになります。漢字や平仮名は何も変換されずにいます。
②文字列を比較する
①の章では、B列に半角カタカナへ変換したデータを格納しましたね。2つ(または)比較文字列すべてを半角文字列に変換しておきます。半角に変換した文字列を作るという事です。
上記例のように、文字列1と文字列2を比較した買った場合、文字列1も文字列2もそれぞれ半角カタカナへ変換します。(緑枠のところ)
その後、半角カタカナ変換後(緑枠のデータ)をIF文で比較すれば、比較できました!
さいごに
いかがだったでしょうか。ちょっとしたことですが、同じような悩みに出会った方の参考になれば幸いです。
Excelで仕事を効率化!
使えるExcel関数の幅を広げておくと、とにかく捗ります!
今すぐ実務に直結する Excel効率化の教科書
奥谷隆一 著
それでは、また!