教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA 演算子】文字列を結合するにはどうすればいいの?教えて!

f:id:m_kbou:20200419165302p:plain

文字列を結合する方法について説明します。今回はセルに入力されている文字列を結合する方法について説明します。

 

 

構文

記述方法は以下の通りとなります。

Cells(行,列)= Cells(行,列)& Cells(行,列)

Range("列行")= Range("列行")& Range("列行")

[説明]:

セルに入力されている文字列を結合する場合、文字列を結合するセルを「&」(アンパサンド)で繋ぎます。また、結合結果を「=」の左側にあるセルにセットします。上記の構文では、Cells/Rangeどちらの指定でも結果は同じになります。セルの指定方法についてはこちらを参考にして下さい。内容を纏めると、「=の右側で指定したセルに入力されている文字列同士を結合し、=の左側で指定したセルにセットして下さい。」との意味になります。

[記述例]:

Cells(2, "C") = Cells(2, "A") & Cells(2, "B")
Range("C2") = Range("A2") & Range("B2")

 

使い方

使い方について具体的に説明します。

Cellsによる文字列結合の指定方法 

Cellsによる文字列の結合方法について説明します。

[プログラミング例]:

Sub サンプル()
  Cells(2, "C") = Cells(2, "A") & Cells(2, "B")
End Sub

内容は、「A2セルとB2セルに入力されている文字列を結合し、C2セルにセットして下さい。」との意味になります。

f:id:m_kbou:20210222090820p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。A2セルに文字列の「茨城県」、B2セルに文字列の「水戸市」が入力されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210304081734p:plain

②処理結果は以下の様になります。C2セルに結合結果の「茨城県水戸市」が入力されます。

f:id:m_kbou:20210304081750p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

Cellsによる文字列の結合方法についての説明は以上です。

 

Rangeによる文字列結合の指定方法 

Rangeによる文字列の結合方法について説明します。

[プログラミング例]:

Sub サンプル()
  Range("C2") = Range("A2") & Range("B2")
End Sub

内容は、「A2セルとB2セルに入力されている文字列を結合し、C2セルにセットして下さい。」との意味になります。

f:id:m_kbou:20210222091004p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①<実行>ボタンには上記のプログラミング例のプログラムが登録されています。A2セルに文字列の「茨城県」、B2セルに文字列の「水戸市」が入力されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。)

f:id:m_kbou:20210304081813p:plain

②処理結果は以下の様になります。C2セルに結合結果の「茨城県水戸市」が入力されます。

f:id:m_kbou:20210304081825p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

Rangeによる文字列の結合方法についての説明は以上です。

 

おわりに

今回はセルに入力されている文字列の結合方法について説明しました。プログラミングをする上で文字列の結合は頻繁に使用します。是非に覚えておいて下さい。