Excel VBA 質問スレッド №1241 (未解決)
タブ区切りを行方向に分割したい
投稿者 : くるみ 投稿日時 : 2023/01/25(Wed) 16:18:54 OS : Windows 10 EXCEL : Office 365
VBA初心者です。
色々調べてみたのですがうまくいかない為ご教授ください。
1行目 A B C D E A B C D E
2行目 111 111 111
3行目 156 156 156
4行目 123,124 123 123,124
5行目 124
6行目 132,134,145 → 132 132,134,145
7行目 134
8行目 145
9行目 111,894 111 111,894
10行目 894
上記のようにD列にカンマ区切りで数字が入力されています。
(カンマ区切りの数だけ下に空白セルがあります。)
このD列のデータをB列に縦方向に並べたいです。
(上記左側がVBA実行前、VBA実行後右側のような形にしたいです。)
ぜひアドバイス頂けたら幸いです。よろしくお願い致します。
VBA初心者です。
色々調べてみたのですがうまくいかない為ご教授ください。
1行目 A B C D E A B C D E
2行目 111 111 111
3行目 156 156 156
4行目 123,124 123 123,124
5行目 124
6行目 132,134,145 → 132 132,134,145
7行目 134
8行目 145
9行目 111,894 111 111,894
10行目 894
上記のようにD列にカンマ区切りで数字が入力されています。
(カンマ区切りの数だけ下に空白セルがあります。)
このD列のデータをB列に縦方向に並べたいです。
(上記左側がVBA実行前、VBA実行後右側のような形にしたいです。)
ぜひアドバイス頂けたら幸いです。よろしくお願い致します。
スポンサーリンク
[返信 1] Re : タブ区切りを行方向に分割したい
投稿者 : さんこう 投稿日時 : 2023/01/25(Wed) 16:32:19
参考になれば。
参考になれば。
Sub Test()
Dim b As Long
Dim v As Variant
b = 6
v = Split(Cells(6, "D"), ",")
For i = 0 To UBound(v)
Cells(b, "B") = v(i)
b = b + 1
Next
End Sub
[返信 2] Re : タブ区切りを行方向に分割したい
投稿者 : くるみ 投稿日時 : 2023/01/25(Wed) 17:11:10
さんこう様
ご回答ありがとうございます!
実行してみたところ、6行目のみしかできなかったのですが、
D列2行目~データがある最終行まで行うようにすることは可能でしょうか?
(説明不足で申し訳ございません)
さんこう様
ご回答ありがとうございます!
実行してみたところ、6行目のみしかできなかったのですが、
D列2行目~データがある最終行まで行うようにすることは可能でしょうか?
(説明不足で申し訳ございません)
[返信 3] Re : タブ区切りを行方向に分割したい
投稿者 : さんこう 投稿日時 : 2023/01/25(Wed) 17:50:49
>実行してみたところ、6行目のみしかできなかった
そのように作ったので、予定通りです。
Split(Cells(6, "D")
の「6」を、2行目~データがある最終行までの
空欄でない行で繰り返せばいいです。
>実行してみたところ、6行目のみしかできなかった
そのように作ったので、予定通りです。
Split(Cells(6, "D")
の「6」を、2行目~データがある最終行までの
空欄でない行で繰り返せばいいです。
[返信 4] Re : タブ区切りを行方向に分割したい
投稿者 : tek 投稿日時 : 2023/01/26(Thu) 19:54:22
失礼します。
365ならTextJoin関数が使えます。
一旦連結して、分割代入すれば良いです。
失礼します。
365ならTextJoin関数が使えます。
一旦連結して、分割代入すれば良いです。
Sub test()
Dim ss() As String
Dim s As String
With ActiveSheet
s = Application.WorksheetFunction.TextJoin(",", True, .Range("D2", .Cells(.Rows.Count, "D").End(xlUp)))
ss = Split(s, ",")
.Range("B2").Resize(UBound(ss) + 1).Value = Application.Transpose(ss)
End With
End Sub
当掲示板について
- Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
- 記事内ではHTMLのタグは使用できません。
- 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
- Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
- Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
( 処理日時 : 2026-04-05 09:29:25 )