Excelエクセルで複数のセルの文字を繋ぐ、くっつける方法/Concatenate(Concat)関数・&記号の使い方

IT

複数のセルに表示された文字をくっつけて表示する方法のご紹介です。

Advertisements

Concatenate関数の使い方

以下にレシピを紹介しますが、これを覚える必要はないです。
その理由は……目次見れば一目瞭然かもしれませんが、一応後で書きます。

=concatenate(文字列A,文字列B)
※Excel2016以降は=Concat(文字列A,文字列B)

特定の文字を入れたい場合は”文字”という具合に””で囲んでください。

concatenate1

直接文字を打ち込んで合成


文字列にA1などのセル番号を指定することもできます。
concatenate3

セルを指定して合成


もし””を入力せずに不正な文字を入力した場合はエラーになりますが、=concatenate(A1,1)と入力した場合は佐藤1と表示されます(半角数字は文字として受け付ける)。
仮に=concatenate(1,1)と入力した場合は11と表示されます(数字として扱われない)。
なお、くっつける文字列(引数)は文字列A,文字列B,文字列C…と延々とつなげることが可能です。Excel2003までは30個まででしたが、2007以降は255個まで指定することができます。

&で代用可能

Concatenate(コンカテネイト)というのは英語でいうと連結するという意味ですが、こんなややこしい単語を覚えなくても、もっとシンプルに表記することが可能です。

=(文字列A&文字列B)

これでConcatenateと同様の結果を得ることができます。

concatenate4

めちゃくちゃシンプル

Advertisements

ダイアログから指定する場合

ではConcatenateは必要ないか? というと、一応そんなことはなく、ダイアログから指定する場合にはやはり関数であるほうがいいかもしれません。
どういうことかというと、まず別のセルを選び、

concatenate5

別のセルを選択


数式タブ→文字列操作→Concatenateを選択(ここで&よりもConcatenateのほうがそれっぽい)。
concatenate6

Excel2016ではConcatを選択


するとこういう画面になるので、指定したいセルや文字列を指定。
concatenate7

この画面経由で入力する場合は、文字列に””を付けなくても自動で付けてくれます


すると関数を手入力するのと同様の結果を得ることができます。
concatenate8

よく使うならこっちのほうが楽かもしれません

マクロで実装する場合

くっつけかた自体は同様で、Range(“A1”) = Range(“A1”).Value & Range(“B1”).Valueのように書きます。
For next文やFor each in next文を使った文字をくっつける処理の例としては、下記のような記事があります。よろしければご参照ください。

ExcelVBA(マクロ)で指定した回数同じ処理を繰り返す方法/For next文の使い方
フォーマットとして「分割された住所をひとつにまとめる」場合で考えます。実務上VBAでは同じ処理を何度も繰り返す必要性がよく出てくるので、繰り返し処理は必ず覚えておく必要があります。
ExcelVBA(マクロ)で範囲に同じ文字を追加する、計算をする方法/For each in文の使い方
たとえば範囲全てに同じ文字を追加したい場合など、通常のExcel操作ではかなり手間がかかります。これをマクロでやってしまおうという記事です。

複数のセルの文字を繋ぐ方法は以上となります。

やりたいことから方法を探すエクセルExcel操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ

コメント