Шаг 67 - Движение по ячейкам
Для движения по таблице используется функция.
переменная.Offset(RowOffset, ColumnOffset)
В качестве переменных может выступать как ячейка так и диапазон (Range) удобно пользоваться этой функцией для смещения относительно текущей ячейки.
Например, смещение ввниз на одну ячейку и выделение ее:
ActiveCell.Offset(1, 0).Select
Если нужно двигаться вверх, то нужно использовать отрицательное число:
ActiveCell.Offset(-1, 0).Select
Функция ниже использует эту возможность для того, чтобы пробежаться вниз до первой пустой ячейки.
Sub beg() Dim a As Boolean Dim d As Double Dim c As Range a = True Set c = Range(ActiveCell.address) c.Select d = c.Value c.Value = d While (a = True) ActiveCell.Offset(1, 0).Select If (IsEmpty(ActiveCell.Value) = False) Then Set c = Range(ActiveCell.address) c.Select d = c.Value c.Value = d Else a = False End If Wend End Sub
Предыдущий Шаг | Следующий Шаг
Автор Каев Артем.