仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数

  • ブックマーク
  • Feedly
  • -
    コピー
仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数

せるワザ

顧客情報や取引先/競合企業などを、「住所録」として保管している職場は多いのではないでしょうか。
CRM(Customer Relationship Management/顧客関係性マネジメント)ツールや、GIS(Geographic Information System/地理情報)システムに取りこんで、事前マーケティングや、結果分析に応用する機会もふえたからです。

これらのシステムは、多くの場合、住所を国、都道府県、区市町村、それ以降の住所(番地)、建物名などにくぎって保管するデータベース構造になっています(人名も、姓と名+かなを切り分けて保存しますよね)。

都道府県単位や区市町村単位でフィルタリングするニーズに対応するためです。

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数
※この住所録は、「住所データのランダム作成」サイトで作成したダミーデータで、末尾「号」にあたる数字を一律消去しました。特定の個人宅や事業所を指すものではございません。

今回は、たとえばこのような住所を結合し、再活用することを想定して、Excelの文字列結合に便利な機能をご紹介します。

もっともシンプルなのは、”&”記号か、”CONCATENATE”関数を使うこと

Excelで、複数セルにふくまれた文字列を単純に結合するためには、以前から”&”記号が用いられてきました。

また、結合を指示するExcel関数として「CONCATENATE(連結する)」もありますが、これらの使い方は、ほぼ同じです。

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数
↑ &記号を使って結合した例
仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数
↑ CONCATENATE関数を使って結合した例

数十件の文字列を結合する時などに、”&”をくりかえし入力しなくて済むくらいしか、わざわざCONCATENATE関数を使用するメリットはありませんでした。

しかし、文字列結合の関数も進化しています。

Excel 2016以降に追加されたCONCAT/TEXTJOIN関数

Excel2016以降に追加された新関数にCONCATTEXTJOINがあります。

CONCATENATE関数とCONCAT関数のちがいは、CONCATでは文字列結合の対象を、「範囲」指定できるようになったことです。

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数
↑ CONCAT関数を使って結合した例

これなら、結合対象の文字列が10あっても、20あっても、その範囲を指定するだけなので、ラクに作業できますね。

同じくExcel2016以降に登場したTEXTJOIN関数は、CONCATとことなる機能をもっています。

<TEXTJOIN関数の引数>
=TEXTJOIN(区切り記号, 空の文字列を無視, 文字列1, 文字列2, …, 文字列252)

CONCATのように、結合対象を「範囲」で指定することはできず、最大252項目の文字列を1つずつひろい出さなければなりません。しかし、これまでの文字列操作関数ともっとも違う点は、「区切り記号」を指定できるということです。

(2つめの引数「空の文字列を無視」は、TRUEの場合には、文字どおり空の文字列を無視します。FALSEの場合には、空の文字列も連結対象とし、必ず区切り文字を挿入します。)

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数
↑ TEXTJOIN関数を使って結合した例

都道府県と区市町村の間などに、それぞれ区切り文字”,”(カンマ)が挿入されています。また、関数式の2つめの引数(「空の文字列を無視」)をFALSEとしているため、上の例では「丁目」にあたる情報(新琴似町と393番地の間)も「空白セル」として結合し、前後に”,”(カンマ)が購入されています。

区切り文字をふくむ文字列挿入が役立つ場面として、どんなことが考えられるでしょうか?

まず思いつくのが、英文表記の住所録管理です。

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数

他のデータベース・ソフトなどからエクスポートしてきた表(テーブル)を元に宛名リストを作成する場合、自動的に”,”(カンマ)を挿入してもらえれば、手動入力でタイプミスをおこすことがなくなります。

区切り文字を入れておく必要は、英文表記にかぎることではありません。

たとえば、和文表記の住所録に区切り文字を入れてみましょうか。

仕事がススむ関数(14)住所データなどの文字結合に便利な、CONCAT/TEXTJOIN関数

都道府県と区市町村の間に”,”(カンマ)があった方がよい場面、思いつきませんか?

そうです! この情報を更新(クリーニング)して、別のソフトウェアへインポートする時にも、正確なcsvファイルが簡単に作れるのです。

とくに、都道府県名は3文字県と4文字県とが混在し、東京都/京都府/大阪府/北海道(末尾が「県」でないレコード)もあるので、全住所データから正確に切りはなすには、複雑な入れ子関数を用意しなければなりません。

住所にかぎらず、お客様フルネームを改姓・改名クリーニングしてインポートしなおす場合にも、”,”(カンマ)はぜひ挿入しておきたい情報です。

姓名情報は、2文字の人もいれば3文字、4文字の人もいます。漢字ばかりでなく、カタカナやアルファベットのお名前をもつ方もたくさんいます。顧客件数が多いほど、手動で区切り位置をまちがえて、「お名前誤表記」の信頼失墜は絶対にさけなければいけません。区切り文字は、このようなリスクを軽減してくれる特効薬でもあるのです。

まとめ;文字列結合関数は進化しました。
あなたの会社で管理している情報は、進化していますか?

「複数セルの文字列をつなぎ合わせる」というシンプルな操作でも、使用できる手段は複数あります。

&、CONCATENATE、CONCAT、TEXTJOIN、それぞれに使い方がことなり、結合結果に差が出ることもあります。

たかが「文字列結合」とあなどることなかれ。どのように複数セルの文字列を結合するのが「カンタンで」、「まちがいがなく」、「他のシステムなどへ流用しやすくなるか」を考えるのは、あなたです!!

Excel関数も日々進化していますから、ぜひあなたの職場の管理情報も進化させて、業務効率化と残業削減につなげていきましょう。









小さなお悩みでも、
お気軽にご相談ください!

お急ぎの方はお電話にてお問い合わせください

050-6867-2130
せるワザロゴ

セルワザでは、役に立つEXCELワザをご紹介しております!

  • ブックマーク
  • Feedly
  • -
    コピー