【復習】文字列の空白を取り除きたい

 

=TRIM(SUBSTITUTE(SUBSTITUTE(A2, " ", ""), " ", ""))

 

タイトル前に表示された # マークは、初版(第5版)掲載済の記事を一部、見直して、編集しています。

 

使っている・調べた直後はよく使うので覚えているのだが、その作業が終わり、数カ月経過すると。。。 あらら。。。 記憶の彼方・・・ なんてコワザが出現する。数式もその一つだ。今回、遭遇したのは「文字列の中にあるスペース(前後・中間・全角半角)」を除去する必要が出てきたのだ。

 

Aさんから提供された氏名リストはAさんが自部署のシステムで作成したものだ。指名の入力方法もその部署の多くの方が入力するので、入れ方はマチマチ。特に、ありがちな氏と名の間に全角スペースや半角スペースを入れてくるケースや、システムの特性で名の後ろにスペースが入るケースなどだ。これを、他のシステムと照合し、数値を照合し、リスト化する必要が出てきたケースである。要は、カンタンに言ってしまえば、Aシステムの氏名とBシステムの氏名を突合し、Bシステムの数値を使用するというものだ。

 

だが、先に述べたように、キーになる氏名の表記がアヤシイので、照合ができない。要は、「余計なスペースを削除する作業」が必要になってくる。

 

これもChatGPTに訊いてみると。。。

 

質問:Excel  And文で SUBSTITUTE関数 と TRIM関数を使う場合の式は?

回答:

ExcelのSUBSTITUTE関数とTRIM関数を組み合わせて使用する方法はいくつかあります。以下に一部を示します:

  1. 半角スペースを全角スペースに変換し、余分なスペースを削除する場合

    =TRIM(SUBSTITUTE(A2, " ", " "))

    この式では、まずSUBSTITUTE関数で半角スペースを全角スペースに変換し、その後TRIM関数で余分なスペースを削除します。

  2. 全角スペースを半角スペースに変換し、余分なスペースを削除する場合

    =TRIM(SUBSTITUTE(A2, " ", " "))

    この式では、まずSUBSTITUTE関数で全角スペースを半角スペースに変換し、その後TRIM関数で余分なスペースを削除します。

  3. 半角スペースと全角スペースをすべて削除する場合

    =TRIM(SUBSTITUTE(SUBSTITUTE(A2, " ", ""), " ", ""))
 
<例>
江戸 小弥太 →江戸小弥太
        (姓名区切りの全角スペースと名あとの全角スペース削除削除)
江戸 小弥太     →江戸小弥太
        (姓名区切りの半角スペースと名あとの全角スペース削除)
 
というような加工が可能になり、双方のデータを処理すると、突合が容易になる。覚えておきたいコワザの1つである。
 
 
誰にも教えたくなかった Excel小技2
⬆こちらから、「Excel小技2」をまとめて参照可能です!!
​​​​​

 

 

【カテゴリ:誰にも教えたくなかった Excel小技(こわざ)2】
⬆ここでいままでに掲載された記事が読めます