Некоторое время назад я сталкивался с этим кодом, он отлично работает, но я хотел бы внести в него несколько изменений, чтобы отразить то, что я хочу. Я какое-то время возился с этим кодом и до сих пор не смог разобраться сам и нуждался в помощи.
Оригинальный вопрос Ссылка: https://stackoverflow.com/questions/19815321/text-to-rows-vba-excel
Option Explicit
Sub Main()
Columns("B:B").NumberFormat = "@"
Dim i As Long, c As Long, r As Range, v As Variant
For i = 1 To Range("B" & Rows.Count).End(xlUp).Row
v = Split(Range("B" & i), "/")
c = c + UBound(v) + 1
Next i
For i = 2 To c
Set r = Range("B" & i)
Dim arr As Variant
arr = Split(r, "/")
Dim j As Long
r = arr(0)
For j = 1 To UBound(arr)
Rows(r.Row + j & ":" & r.Row + j).Insert Shift:=xlDown
r.Offset(j, 0) = arr(j)
r.Offset(j, -1) = r.Offset(0, -1)
r.Offset(j, 1) = r.Offset(0, 1)
Next j
Next i
End Sub
Как я могу изменить этот код Если у меня есть больше столбцов, которые нужно отсортировать так, как этот код сортирует данные в настоящее время. Потому что на данный момент он обрабатывает только 3 столбца слева и справа от столбца «B».
Я не знаю, расплывчатся я или нет, но я действительно не знаю, как объяснить мою проблему. Любая помощь будет оценена.