Excel の関数で CONCATENATE を使用すると、指定した複数のセルを連結して一つの文字列に結合することができます。

しかし、この関数の引数は、セルを一つ一つ指定するものです。例えば、5 つのセルを連結させるためには、5 つのセルを指定する必要があります。今回、セル範囲を指定するだけで、指定した範囲の文字列を連結する関数 (CONCATENATE2) を作ってみました。

サンプル

1. 次のような関数を標準モジュールに作成します。

Private Function CONCATENATE2(rTarget As Range)
  Dim sWork As String: sWork = ""
  Dim rCell As Range
  For Each rCell In rTarget
    sWork = sWork + CStr(rCell.Value)
  Next CONCATENATE2 = sWork
End Function

説明

シートのセルに、=CONCATENATE2(A1:A10) という式を設定すると、A1 から A10 のセル内の文字列をすべて結合して返します。