Здравствуйте. Помогите с макросом, пожалуйста. Нужно сгруппировать контрагентов по рынкам "Аквилон" "Олимп" и остальное. проблема в том что название рынка обычно после Ф.И.О. контрагента и обычная сортировка не справляется. (в других городах рынков может быть больше, и называться они будут по разному. просьба не фиксировать кол-во аргументов для группировки, я буду подгонять макрос под другие города)
Здравствуйте. Помогите с макросом, пожалуйста. Нужно сгруппировать контрагентов по рынкам "Аквилон" "Олимп" и остальное. проблема в том что название рынка обычно после Ф.И.О. контрагента и обычная сортировка не справляется. (в других городах рынков может быть больше, и называться они будут по разному. просьба не фиксировать кол-во аргументов для группировки, я буду подгонять макрос под другие города)-=Dj=-
Как-то данные надо привести к единому стилю, а то где-то между звездочами(*) есть пробел, которого не должно быть, где-то слово в * не отделено пробелом и т.д. [vba]
Код
Sub Tablica() Dim i As Long Dim iLastRow As Long Dim arr Dim j As Integer iLastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To iLastRow arr = Split(Cells(i, 1), " ") Cells(i, 1) = arr(UBound(arr)) For j = 1 To UBound(arr) - 1 Cells(i, 1) = Cells(i, 1) & " " & arr(j) Next Next Range("A2:E" & iLastRow).Sort Range("A2") End Sub
[/vba]
Как-то данные надо привести к единому стилю, а то где-то между звездочами(*) есть пробел, которого не должно быть, где-то слово в * не отделено пробелом и т.д. [vba]
Код
Sub Tablica() Dim i As Long Dim iLastRow As Long Dim arr Dim j As Integer iLastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To iLastRow arr = Split(Cells(i, 1), " ") Cells(i, 1) = arr(UBound(arr)) For j = 1 To UBound(arr) - 1 Cells(i, 1) = Cells(i, 1) & " " & arr(j) Next Next Range("A2:E" & iLastRow).Sort Range("A2") End Sub