3/13/2022

Excel。「;(セミコロン)」で繋げて手早く一斉メールアドレスをつくりたい【Character combination】

Excel。「;(セミコロン)」で繋げて手早く一斉メールアドレスをつくりたい

<TEXTJOIN関数>

テレワークに限らず、多くのスタッフ宛に一斉メールを送りたい場合、メールアドレスごとに「;(セミコロン)」で結合します。


例えば、次のようなスタッフメールアドレス一覧が用意されています。


メールアドレスの間に「;(セミコロン)」をいれた文字列をつくるわけですが、どのようにしたら、手早く作ることができるのでしょうか?


例えば「&(アンパサンド)」で文字列を結合する方法もあります。

=B2&”;”B3…

というような数式になるわけですが、件数が多いので大変ですね。


また、文字結合をする関数である「CONCAT関数」や「CONCATENATE関数」をつかうとしても、「&(アンパサンド)」と同じような数式になってしまいます。

=CONCAT(B2,";",B3,";"…)


それでは、Excel VBAでプログラムをつくるしかないのでしょうか。


そこで、新しく追加された関数「TEXTJOIN関数」をつかうことで、とても簡単につくることができます。


D2に次の数式をつくりました。

=TEXTJOIN(";",TRUE,B2:B10)


数式のままだと、つかえませんので、あとは値のコピーをすることで、一斉メール用のメールアドレスをつくることができました。


では、TEXTJOIN関数を確認しておきましょう。


最初の引数は、「区切り文字」。

結合する文字の間にいれたい文字を設定します。

今回は「;(セミコロン)」で区切りたいので、「”;”」と設定します。


2番目の引数は、「空のセルの無視」。

結合したいセルが空白だった場合、空白にするのか、無視するのかを決めることができます。

今回は、無視することにしますので、「TRUE」と設定します。


この後の引数は、「テキスト1」。結合したいセルを範囲選択してきます。

よってB2:B10と設定します。


文字結合する関数も、色々用意されていますので、用途に合わせて使い分けることで、効率的に処理することができますので、関数を探してみるといいかもしれませんね。