エクセル半角全角変換の決定打!一瞬で統一する時短術と失敗回避策
エクセル半角全角変換の決定打!一瞬で統一する時短術と失敗回避策の見逃せないポイントを徹底的にカバーしました。
しかし、万能に見えるASC関数には、日本のビジネス実務における「致命的な罠」が存在します。それは、「全角カタカナまで半角(半角カナ)に変えてしまう」という言語仕様です。
ネット上のQ&AサイトやSNSでは、「ASC関数を使って顧客名簿の数字を半角にしたら、カタカナのフリガナまで半角カナになってしまい、基幹システムへのインポート時に文字化けを起こした」という悲鳴が後を絶ちません。銀行振り込みデータや行政手続きのフォーマットでは、半角カナの混入がシステムエラーの引き金になるケースが頻発しています。
英数字のみを半角化し、カタカナを全角で死守する方法
「カタカナは全角のまま維持しつつ、数字の半角統一だけを行いたい」という実務ニーズに応えるには、関数の組み合わせを一段階進化させる必要があります。
Microsoft 365の最新環境であれば、正規表現を扱えるREGEXREPLACE関数の導入により、この長年の課題が劇的に解決されました。
=REGEXREPLACE(A2, "[0-9]", LAMBDA(m, ASC(m)))
この記述により、セル内の全角数字(0〜9)だけを検知してASC関数の対象とし、カナ文字には一切手を触れずに処理を完結させることが可能です。旧バージョンのExcelでこの関数が使えない環境では、先述のフラッシュフィルを用いるか、後述するパワークエリを噛ませるアプローチが安全策となります。
住所番地の一括データクレンジングにおける「ハイフン地獄」
顧客管理で最もトラブルが多発するのが、住所データの「丁目・番地・号」です。「3丁目4番地5号」「3ー4ー5」「3-4-5」といった表記揺れに加え、全角ハイフンにはUnicode上で異なるコード(長音記号「ー」、ダッシュ「—」、マイナス「−」など)が複数割り当てられているため、単純な置換だけでは拾いきれない事例が散見されます。このクレンジングには、複数のSUBSTITUTE関数を入れ子にするか、パワークエリのテキスト置換ステップを標準化して運用することが実務上の防衛策となります。