Сортировка по 3 строки в Excel - VBA
Формулировка задачи:
Доброго времени суток, работа в Exel 2007.
В таблице есть некие блоки высотой в 3 строки, а длиной в 6 столбцов (с A по F) длина не фиксированная, может быть любой. Задача макроса заключается в следующем, чтобы отсортировать 3036 строк по первой строке и второму столбцу, каждого блока 3х6, т.е. сначала B-2 потом B-5 (конечно если в блоке c B-5 данная ячейка будет следовать по алфавиту за B-2)
Решение задачи: «Сортировка по 3 строки в Excel»
textual
Листинг программы
- Sub asd()
- Dim rn As Range, r As Long
- Set rn = Selection
- For r = 1 To rn.Rows.Count Step 3
- rn(r, 1) = rn(r, 2) & rn(r + 1, 2) & rn(r + 2, 2)
- rn(r + 1, 1) = rn(r, 1)
- rn(r + 2, 1) = rn(r, 1)
- Next
- rn.Sort rn(1)
- rn.Columns(1).ClearContents
- For r = 1 To rn.Rows.Count Step 3
- rn(r, 1) = r \ 3 + 1
- Next
- End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д