【EXCEL VBA】ユーザー定義関数の設定
ネットより拝借した下記ユーザー定義関数を使用して、複数の選択したセルの値を区切り文字(セミコロン)で連結する仕組みを作成している途中です。
(例えば、A;B;C;D のように)
Function myJoin(範囲 As Range, Optional 区切り文字 As String) As Variant
Dim c As Range, buf As String
If 範囲.Rows.Count = 1 Or 範囲.Columns.Count = 1 Then
For Each c In 範囲
buf = buf & 区切り文字 & c.Value
Next c
If 区切り文字 <> "" Then
myJoin = Mid$(buf, 2)
Else
myJoin = buf
End If
Else
myJoin = CVErr(xlErrRef) 'エラー値
End If
End Function
セル(F6)からセル(Fxx)までデータが入力されています。(xxは変動します。)
これらのデータをユーザー定義関数を使ってセル(F1)に[=myJoin (F6:Fxx,";")]を
入力するためのマクロを組んでみたのですが
「コンパイルエラー修正候補:区切り文字または)」となってしまいます。
(添付画像を参照願います。)
手入力でセル(F1)にユーザー定義関数(例:=myJoin (F6:F8,";"))を設定すると問題なくデータの連結が出来ます。このエラーを解消するにはVBE上でどのように定義したらいいのか、ご教授の程宜しくお願い致します。
お礼
ありがとうございます。できました。 解説も付けて頂き、理解することもできました。