Из этого туториала Вы узнаете, как использовать свойство Range.End в VBA.
Большинство вещей, которые вы делаете вручную в книге или листе Excel, можно автоматизировать с помощью кода VBA.
Если у вас есть диапазон непустых ячеек в Excel, и вы нажимаете Ctrl + стрелка вниз, ваш курсор переместится в последнюю непустую ячейку в столбце, в котором вы находитесь. Аналогичным образом, если вы нажмете Ctl + стрелка вверх, ваш курсор переместится в первую непустую ячейку. То же самое относится к строке, использующей Ctrl + стрелка вправо или Ctrl + стрелка влево перейти в начало или конец этой строки. Все эти комбинации клавиш можно использовать в коде VBA с помощью Конечная функция.
Синтаксис свойства конца диапазона
Свойство Range.End позволяет вам перейти к определенной ячейке в текущем регионе, с которым вы работаете.
выражение.Конец (Направление)
выражение - это адрес ячейки (диапазон) той ячейки, с которой вы хотите начать, например: Диапазон («A1»)
END - свойство контролируемого объекта Range.
Направление - это константа Excel, которую вы можете использовать. Доступны 4 варианта - xlDown, xlToLeft, xlToRight а также xlUp.
Переход к последней ячейке
Приведенная ниже процедура переместит вас в последнюю ячейку в Текущем регионе ячеек, в котором вы находитесь.
1234 | Sub GoToLast ()'перейти к последней ячейке, занятой в текущей области ячеекДиапазон ("A1"). Конец (xlDown). ВыбратьКонец подписки |
Подсчет строк
Следующая процедура позволяет использовать xlDown константу со свойством Range End, чтобы подсчитать, сколько строк находится в вашем текущем регионе.
12345678 | Sub GoToLastRowofRange ()Dim rw как целое числоДиапазон ("A1"). Выберите'получить последнюю строку в текущем регионеrw = Диапазон ("A1"). Конец (xlDown) .Row'показать, сколько строк используетсяMsgBox "Последняя строка в этом диапазоне:" & rwКонец подписки |
В то время как нижеприведенный будет подсчитывать столбцы в диапазоне, используя xlToRight постоянный.
12345678 | Sub GoToLastCellofRange ()Dim col As IntegerДиапазон ("A1"). Выберите'получить последний столбец в текущем регионеcol = Диапазон ("A1"). Конец (xlToRight) .Column'показать, сколько столбцов используетсяMsgBox "Последний столбец, используемый в этом диапазоне:" & colКонец подписки |
Создание массива диапазонов
Приведенная ниже процедура позволяет нам начать с первой ячейки в диапазоне ячеек, а затем использовать свойство End (xlDown), чтобы найти последнюю ячейку в диапазоне ячеек. Затем мы можем ReDim нашего массива с общим количеством строк в Range, тем самым позволяя нам перебирать диапазон ячеек.
123456789101112131415161718 | Sub PopulateArray ()'объявить массивDim strSuppliers () как строку'объявить целое число для подсчета строкDim n как целое число'подсчитать строкиn = Диапазон ("B1", Диапазон ("B1"). Конец (xlDown)). Rows.Count'инициализировать и заполнить массивReDim strCustomers (n)'объявить целое число для циклаDim i как целое число'заполнить массивДля i = 0 К nstrCustomers (i) = Диапазон ("B1"). Смещение (i, 0). ЗначениеДалее я'показать окно сообщения со значениями массиваПрисоединение к MsgBox (strCustomers, vbCrLf)Конец подписки |
Когда мы запустим эту процедуру, она вернет следующее окно сообщения.