Страницы: 1
RSS
Макрос сортировки в выделенных строках с расширением диапазона.
 
Доброй ночи, форумчане.
Записал макрорекордером макрос, который в пределах выделенных строк от A до F по критерию в D производит сортировку А--Я.
И никак не получается научить его работать с другими выделенными строками. И так и этак лепил, а всё "криво" получается.
Т.е. в идеале я выделяю любые строки, запускаю макрос, а он сортирует по алфавиту в D с "автоматическим расширением диапазона" от A до F, но всё в пределах выделенных строк.
Заранее благодарю.
Изменено: maseur - 22.01.2013 01:03:19
 
Макрос листа2

Sub sortirovka()
Selection.Sort key1:=Range("D1"), Order1:=xlAscending, Header:=xlNo
End Sub
 
То Kuzmich
Работает. Я просто фигею и с Ваших знаний и с возможностей Экселя. Одной строкой...
Большое спасибо.
А можно вопрос? Дело в том, что таблица уже на 56 столбцов и Ваш код их покрывает. Это чудесно. Но есть вероятность, что столбцы будут добавляться, добавляться границы, форматы... Какие границы "расширения диапазона" для Вашего кода? Т.е. чего надо избегать, для того, чтобы сортировка работала от первого до последнего столбца?
 
[QUOTE]maseur пишет:
То Kuzmich
Какие границы "расширения диапазона" для Вашего кода?

Код работает с вами выделенным диапазоном
 
maseur
Используйте для выделения диапазона метод InputBox прямо в макросе

Sub SelectRange()
Dim iRange As Range

Set iRange=Application.InputBox(prompt:="Введите диапазон", Type:= 8)
iRange.Select
...
End Sub

Диапазон можно вводить с помощью мыши или в диалоговом окне
Изменено: Kuzmich - 22.01.2013 17:17:50
 
Должно быть
Type:=8
почему то не изменить.
 
То Kuzmich

Цитата
Используйте для выделения диапазона метод InputBox прямо в макросе

Благодарю за совет, но мне кажется, для моих целей вполне достаточно Вашей одной строчки. Мышью выделить строки, это даже не выделение диапазона мышью. Что может быть проще? У меня ведь в любом случае будут чётко заданные столбцы.
Большое Вам спасибо за внимание, которое мне уделили.
Страницы: 1
Читают тему
Loading...