Страница: 1 |
Страница: 1 |
Вопрос: код сортировки строк в excel
Добавлено: 30.01.09 13:07
Автор вопроса: ALexander
Уважаемые спцы по VBA:
пытаюсь написать код сортировки строк в excel по колонке "E" (причем нужно выбрать для сортировки несколько строк,идущих подряд от первой до i-ой.
делаю так:
'подсчитываю в переменной i сколько у меня всего строк для выбора (с учетом, что они идут подряд и во всех нужных заполнена колонка "C")
Do While Workbooks(1).Worksheets(n).Cells(i, "C").Value <> ""
i = i + 1
Loop
'хочу выбрать строки от первой до i-ой (переменную i программа не хочет принимать)
Workbooks(1).Worksheets(n).Rows("1:i").Select
'дальше сортировка выбранных строк
Selection.Sort Key1:=Range("E17"), Order1:=xlAscending, Header:=xlGuess _
, OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
что можно сделать?
спасибо!
Ответы
Всего ответов: 5
Номер ответа: 1
Автор ответа:
GDK
Вопросов: 13
Ответов: 348
Профиль | | #1
Добавлено: 30.01.09 13:18
Попробуй.
Номер ответа: 2
Автор ответа:
fAndOrIn
Вопросов: 5
Ответов: 344
Профиль | | #2
Добавлено: 30.01.09 13:42
Рекомендую отказаться от использования в коде символьной адресации ячеек. Сами удивитесь, насколько все станет проще!
Номер ответа: 3
Автор ответа:
ALexander
Вопросов: 4
Ответов: 3
Профиль | | #3
Добавлено: 30.01.09 14:13
использовал:
call Workbooks(1).Worksheets(n).Rows("1:" & i).Select
сработало,
такой вариант гораздо проще для меня
спасибо!
Номер ответа: 4
Автор ответа:
GDK
Вопросов: 13
Ответов: 348
Профиль | | #4
Добавлено: 03.02.09 13:37
Для разных ситуаций - удобней по разная адресация.
Номер ответа: 5
Автор ответа:
машинист
Вопросов: 6
Ответов: 26
Профиль | | #5
Добавлено: 04.05.09 04:16
call Workbooks(1).Worksheets(n).Rows("1:" & i).Select
Вопрос: Что делать дальше с этим Select? Где увидеть, воспользоваться содержимым? А если я выделил отдельную ячейку, то как писвоить её значение моей переменной MyVar as variant?