Существует таблица 1000 строк, 30 столбцов. Значения текстовые. Имеется дополнительный (изменяемый) столбец "А" со значениями которые точно совпадают в одном из столбцов (пусть в "С") таблицы. В дополнительном столбце "А" не все 1000 значений, но они точно присутствуют в "С" Необходимо, чтобы таблица выполнила сортировку со всеми 30ю значениями по заданному дополнительному столбцу. Заранее спасибо!
Существует таблица 1000 строк, 30 столбцов. Значения текстовые. Имеется дополнительный (изменяемый) столбец "А" со значениями которые точно совпадают в одном из столбцов (пусть в "С") таблицы. В дополнительном столбце "А" не все 1000 значений, но они точно присутствуют в "С" Необходимо, чтобы таблица выполнила сортировку со всеми 30ю значениями по заданному дополнительному столбцу. Заранее спасибо!WildCat
Решение с помощью макроса. Сортируются столбцы со столбца "C" + 30 столбцов (отсчет от столбца "C", а не "A"). В столбце "A" не должно быть запятых. Если могут быть запятые, то это решение Вам не подойдет. Предполагается, что шапки таблицы нет, данные сразу начинаются со строки 1 (как во вложенном файле). В файле макроса нет, файл я выложил, т.к. макрос сделан под этот файл (а не под Ваш исходный).
[vba]
Код
Sub Сортировка()
Dim sh As Worksheet, varCustomOrder Dim lr As Long
sh.Sort.SortFields.Clear sh.Sort.SortFields.Add Key:=sh.Columns("C"), SortOn:=xlSortOnValues, Order:=xlAscending, _ CustomOrder:=CStr(varCustomOrder) With sh.Sort .SetRange sh.Columns("C").Resize(, 30) .Header = xlNo .Orientation = xlTopToBottom .Apply End With sh.Sort.SortFields.Clear
End Sub
[/vba]
Решение с помощью макроса. Сортируются столбцы со столбца "C" + 30 столбцов (отсчет от столбца "C", а не "A"). В столбце "A" не должно быть запятых. Если могут быть запятые, то это решение Вам не подойдет. Предполагается, что шапки таблицы нет, данные сразу начинаются со строки 1 (как во вложенном файле). В файле макроса нет, файл я выложил, т.к. макрос сделан под этот файл (а не под Ваш исходный).
[vba]
Код
Sub Сортировка()
Dim sh As Worksheet, varCustomOrder Dim lr As Long