【復習】文字列の空白を取り除きたい
=TRIM(SUBSTITUTE(SUBSTITUTE(A2, " ", ""), " ", ""))
タイトル前に表示された # マークは、初版(第5版)掲載済の記事を一部、見直して、編集しています。
使っている・調べた直後はよく使うので覚えているのだが、その作業が終わり、数カ月経過すると。。。 あらら。。。 記憶の彼方・・・ なんてコワザが出現する。数式もその一つだ。今回、遭遇したのは「文字列の中にあるスペース(前後・中間・全角半角)」を除去する必要が出てきたのだ。
Aさんから提供された氏名リストはAさんが自部署のシステムで作成したものだ。指名の入力方法もその部署の多くの方が入力するので、入れ方はマチマチ。特に、ありがちな氏と名の間に全角スペースや半角スペースを入れてくるケースや、システムの特性で名の後ろにスペースが入るケースなどだ。これを、他のシステムと照合し、数値を照合し、リスト化する必要が出てきたケースである。要は、カンタンに言ってしまえば、Aシステムの氏名とBシステムの氏名を突合し、Bシステムの数値を使用するというものだ。
だが、先に述べたように、キーになる氏名の表記がアヤシイので、照合ができない。要は、「余計なスペースを削除する作業」が必要になってくる。
これもChatGPTに訊いてみると。。。
質問:Excel And文で SUBSTITUTE関数 と TRIM関数を使う場合の式は?
回答:
ExcelのSUBSTITUTE関数とTRIM関数を組み合わせて使用する方法はいくつかあります。以下に一部を示します:
-
半角スペースを全角スペースに変換し、余分なスペースを削除する場合:
=TRIM(SUBSTITUTE(A2, " ", " "))
この式では、まずSUBSTITUTE関数で半角スペースを全角スペースに変換し、その後TRIM関数で余分なスペースを削除します。
-
全角スペースを半角スペースに変換し、余分なスペースを削除する場合:
=TRIM(SUBSTITUTE(A2, " ", " "))
この式では、まずSUBSTITUTE関数で全角スペースを半角スペースに変換し、その後TRIM関数で余分なスペースを削除します。
-
半角スペースと全角スペースをすべて削除する場合:
=TRIM(SUBSTITUTE(SUBSTITUTE(A2, " ", ""), " ", ""))