Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Home Premium : Excel 2010)
JOIN関数を使って文字列の結合
投稿日時: 18/05/30 00:31:40
投稿者: shimoichimabu

JOIN関数を使って文字列の結合がしたいです。
例えば、
 
A1 佐藤
A2 加藤
A3 澤田
 
A10 佐藤、加藤、澤田
 
A1〜A3の各文字列を「、」で区切って結合し、
その文字列をA10に書き込みたいです。
 
Dim myRange
 
myr = Range("A1:A3").Value
Range("A10").Value = Join(myRange, "、")  ←エラー
 
しかし、以下のエラーが出ました。
 
実行時エラー ’5’
プロージゃの呼び出し、または引数の不正
 
どこのコードが間違っているのでしようか?

回答
投稿日時: 18/05/30 07:23:13
投稿者: simple

二次元の配列のままなので、Joinが対応できないのです。
例えば、

Sub test2()
    Dim v As Variant
    v = Range("A1:A3").Value
    Range("A10").Value = Join(Application.Transpose(v), "、")
End Sub
などとしてみては?

投稿日時: 18/05/30 19:24:07
投稿者: shimoichimabu

simpleさん、いつもお世話になります。
 
Range("A10").Value = Join(Application.Transpose(v), "、")
 
で行ったところ、うまくいきました!
 
Transposeですかー。気が付きませんでした。
 
ありがとうございました。