- ベストアンサー
vba split関数 コンマ区切り
エクセルに不慣れなため教えていただけたら幸いです。 A3~A11・B3~B11・C3~C11列にコンマ区切りの数字があります。 列によってはコンマで区切られた数字が3つのものと4つのものが混在しています。 split関数でコンマ区切りの数字を分割してE~H列・J~M列・O~R列に表示したいと考えています。 先ほど別の質問で下記のマクロを教えていただいたのですが、 その際は、A1~A9にあるものをD~G列に表示するというものでした。 よくよく考えると、A列のみではなく、B・C列と複数の列を コンマ区切りしたいと考えています。 このような場合は、どうしたらよいでしょうか。 vba不慣れなためわかりづらかったら申し訳ありません。 お分かりになられるかたがいらっしゃいましたら教えていただけますでしょうか。 よろしくお願いいたします。 Option Explicit ' Sub Macro1() Dim Rout As Long Dim Colu As Integer Dim Expression As Variant ' For Rout = 1 To Cells(Rows.Count, "A").End(xlUp).Row Expression = Cells(Rout, "A") Expression = Split(Expression, ",") ' For Colu = 0 To UBound(Expression) Cells(Rout, Colu + 4) = Expression(Colu) Next Colu, Rout End Sub
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
以下で試してみてください。 Sub Test() Dim i As Long, j As Long, k As Long Dim tmp As Variant For i = 1 To 3 For j = 3 To 11 tmp = Split(Cells(j, i).Value, ",") For k = 0 To UBound(tmp) If k < 4 Then Cells(j, i).Offset(0, i * 4 + k).Value = tmp(k) End If Next Next Next End Sub
お礼