ヒガサラblog

サラリーマン向けに、仕事を効率良く進めていくための方法についてご紹介しています。プログラミングから対人スキルまでを幅広く掲載中。

ヒガサラblog

【エクセルVBA】複数セルの文字列を連結合!CONCAT関数の使い方!VBAへの組み込みまで

f:id:yshgs_elec:20210220211906p:plain

「複数のセルに入っている文字列を一つに結合したい。」

「数が多いのでひとつひとつのセルを&でつなぐのは面倒だ。」 

 

私自身、つい先日までセル内データをつなげようとして

=A1&B1&C1

みたいな処理を行っていたものです。

 

結合するセルが3つ程度であれば、これでも大きな問題ではないのですが、もし数が多くなってしまった場合は非常に面倒でしょう。

 

というわけで、この記事では、そんな状況を一瞬で解決できる

CONCAT関数の使い方をご紹介していきます。

 

それでは早速やっていきます!

 

スポンサーリンク

 

紹介するスキルの概要説明

 まずはじめに今回の記事で紹介する内容を簡単にご説明しておきます。

 

今回は以下がの画像のようにA,B,C列に記入されたデータをE列に連結させて表示するということをやってみます。f:id:yshgs_elec:20210220205145j:plain

冒頭にも説明したように、E1セルにて

=A1&B1&C1

という数式を入力しても問題はないのですが、今回はこの処理をCONCAT関数というものを用いて実行していきます。

 

スポンサーリンク

 

CONCAT関数の使い方

 早速ですが、CONCAT関数の使い方です。

 

◆CONCAT関数の使い方

①連結する領域が繋がっている場合

 =CONCAT(結合領域)

例:=CONCAT(A1:C1)

⇒A1,B1,C1のデータがすべて結合される。

 

②連結する領域が繋がっていない場合

=CONCAT(指定セル, 指定セル, ・・・)

例:=CONCAT(A1,C1)

⇒A1セルとC1セルが結合される 

 

基本的な使い方がわかったところで、実際の使用例を見てみましょう。

 

スポンサーリンク

 

CONCAT関数の使用例

具体的な使いかたは以下の画像の通りです。

①先ほどご紹介した数式を入力しエンター

f:id:yshgs_elec:20210220205852j:plain

 これで以下のようにデータが連結されます。

f:id:yshgs_elec:20210220210419j:plain

 

今回は複数行に同じ処理を行いたいので、あとはさきほど数式入力したセルをコピーするだけです。

f:id:yshgs_elec:20210220210010j:plain

 

一瞬ですね。

結合する列数が多い場合などはこのCONCAT関数を使うとめちゃくちゃ便利です。

 

VBAでの実際の使用例

 最後に先ほど紹介した処理とまったく同じことをVBA上でやってみましょう。

 

◆上の作業を実行するVBAコード

Sub concat_test()
Dim i As Integer
For i = 1 To 13
    Cells(i, 5) = WorksheetFunction.Concat(Range(Cells(i, 1), Cells(i, 3)))
Next
End Sub

 

実行してみましたが、問題なくデータが結合されていることが確認できました。

スポンサーリンク

 

おわりに

というわけで今回は複数セルのデータを別のセルに結合して出力することができるCONCAT関数の使いかたをご紹介しました。

知っておくだけで、数式の入力作業を大幅に効率化できるはずです。

ぜひ覚えておきましょう。

 

このように私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

・日々の残業時間を減らしたい。

・業務をもっと効率的にこなしたい。

・もっと勉強する時間を作りたい。

こんな思いを持っている人は、ぜひ他の記事も見てみてくださいね。

 

この記事が役に立ったという方は、ぜひ応援よろしくお願いします。

 ↓ 応援ボタン

にほんブログ村 IT技術ブログ VBAへ
にほんブログ村

 

それではまた!