Можно ещё макросом
Так как в задании
Цитата |
---|
fedsum написал: есть строка |
То макрос работает через выделение строк. Выделяйте диапазон для обработки и жмите кнопку (в примере ячейки желтым цветом), т.к. обрабатывается сразу две строки, то количество строк должно быть четным, в противном случае последняя строка не будет обрабатываться
Не понятно, по какому принципу должно делиться "Бренд" и "Артикул", поэтому делить не стал, будет для Вас домашним заданием.
Код |
---|
Sub Макрос1()
Dim arr3, arr2, arr1, n As Long, m As Byte, i As Long, v As Byte
arr1 = Selection
ReDim arr3(1 To UBound(arr1) \ 2, 1 To 7)
i = 1
For n = LBound(arr1) To (UBound(arr1) \ 2) * 2 Step 2
arr2 = Split(Replace(Replace(Replace(Replace(Replace(arr1(n, 1), "Рек. цена", ""), "Наличие", ""), "Бренд", ""), "Артикул", ""), "Код:", ""), ":")
v = IIf(UBound(arr2) < 4, UBound(arr2) + 1, 5)
For m = 1 To v
arr3(i, m) = arr2(m - 1)
Next
arr2 = Split(Replace(arr1(n + 1, 1), "р.", "р.:"), ":")
v = IIf(UBound(arr2) < 1, UBound(arr2) + 1, 2)
For m = 1 To v
arr3(i, m + 5) = arr2(m - 1)
Next
i = i + 1
Next
Range(Cells(4, 2), Cells(UBound(arr3) + 3, 8)) = arr3
End Sub
|