Используемый диапазон VBA

UsedRange, как следует из названия, представляет собой диапазоны, в которых в качестве некоторых значений пустые ячейки не включаются в используемые диапазоны, поэтому в VBA Используемые диапазоны — это свойство объекта диапазона в VBA для тех диапазонов ячеек в строки и столбцы, которые не пусты и содержат некоторые значения.

Используемый диапазон в VBA Excel

UsedRange в VBA — это свойство рабочего листа, которое возвращает объект диапазона, представляющий используемый диапазон (все ячейки Excel, используемые или заполненные на рабочем листе) на конкретном рабочем листе. Это свойство, представляющее область, покрытую или ограниченную верхней левой используемой ячейкой и последней правой используемой ячейкой на рабочем листе.

Мы можем описать «Используемую ячейку» как ячейку, содержащую любую формулу, форматирование, значение и т. Д. Мы также можем выбрать последнюю использованную ячейку, нажав клавиши CTRL + END на клавиатуре.

Ниже приведена иллюстрация UsedRange на листе:

Используемый диапазон VBA (рабочий лист)

На приведенном выше снимке экрана мы видим, что UsedRange равен A1: D5.

Примеры свойства Excel VBA UsedRange

Давайте рассмотрим несколько примеров ниже, чтобы увидеть, как можно использовать свойство UsedRange на листе для поиска использованного диапазона. диапазон в VBAДиапазон в VBAДиапазон — это свойство в VBA, которое помогает указать конкретную ячейку, диапазон ячеек, строку, столбец или трехмерный диапазон. В контексте рабочего листа Excel объект диапазона VBA включает одну или несколько ячеек, распределенных по различным строкам и столбцам.читать далее:

Вы можете скачать этот шаблон Excel для VBA UsedRange здесь — Шаблон VBA UseRange Excel

Пример №1

Допустим, у нас есть файл Excel, содержащий два рабочих листа, и мы хотим найти и выбрать используемый диапазон на Листе1.

Давайте посмотрим, что содержит Sheet1:

Пример 1 используемого диапазона VBA

Для выполнения этой задачи мы используем свойство UsedRange в окне Immediate VBA. Немедленное окно VBA — это инструмент, который помогает получить информацию о файлах Excel, быстро выполнить или отладить любой код VBAКод VBAКод VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи.читать далее, даже если пользователь не пишет никаких макросов. Он находится в редакторе Visual Basic, и к нему можно получить доступ следующим образом:

  • Перейти к Вкладка «Разработчик» ExcelВкладка «Разработчик» ExcelВключение вкладки разработчика в Excel может помочь пользователю выполнять различные функции для VBA, макросов и надстроек, таких как импорт и экспорт XML, разработка форм и т. д. Эта вкладка по умолчанию отключена в Excel; таким образом, пользователю необходимо сначала включить его в меню параметров.читать далее, а затем щелкните Редактор Visual Basic или нажмите Alt + F11 чтобы открыть окно редактора Visual Basic.
Пример использования диапазона VBA 1-1

При этом открывается окно следующего вида:

Пример использования диапазона VBA 1-2
  • Нажмите Ctrl+G , чтобы открыть непосредственное окно, и введите код.

Непосредственное окно выглядит так:

Пример использования диапазона VBA 1-3
  • Следующий код выберет используемый диапазон на Sheet1.

Код:

?Worksheets("Sheet1").Activate
True
?ActiveSheet.UsedRange.Select
True

Первый оператор кода активирует Sheet1 файла, а второй оператор выберет используемый диапазон на этом активном листе.

Пример использования диапазона VBA 1-4

При написании этого кода мы видим, что диапазон, используемый в Sheet1, выбирается следующим образом:

Пример использования диапазона VBA 1-5

Пример #2

Теперь, скажем, в этом примере мы хотим найти общее количество строк, используемых в Sheet1. Для этого мы выполняем следующие шаги:

  • Создайте имя макроса в модуле.

Код:

Sub TotalRows()

End Sub
Пример 2 используемого диапазона VBA
  • Определите переменную TotalRow как Целое число в VBAЦелое число в VBAВ VBA целое число — это тип данных, который может быть присвоен любой переменной и использоваться для хранения целочисленных значений. В VBA скобка для максимального числа целочисленных переменных, которые можно сохранить, аналогична скобке в других языках. Используя оператор DIM, любую переменную можно определить как целочисленную переменную.читать далее:

Код:

Sub TotalRows()

 Dim TotalRow As Integer

End Sub
Пример 2-1
  • Теперь присвойте переменной TotalRow формулу для расчета общего количества строк:

Код:

Sub TotalRows()

 Dim TotalRow As Integer

 TotalRow = ActiveSheet.UsedRange.Rows.Count

End Sub
Пример 2-2
  • Теперь результирующее значение TotalRow можно отобразить и вернуть. с помощью окна сообщения VBAИспользование окна сообщений VBAФункция VBA MsgBox — это функция вывода, которая отображает обобщенное сообщение, предоставленное разработчиком. Этот оператор не имеет аргументов, и персонализированные сообщения в этой функции записываются в двойных кавычках, а для значений предоставляется ссылка на переменную.читать далее (MsgBox) следующим образом:

Код:

Sub TotalRows()

 Dim TotalRow As Integer

 TotalRow = ActiveSheet.UsedRange.Rows.Count

 MsgBox TotalRow

End Sub
Пример использования диапазона VBA 2-3
  • Теперь мы запускаем этот код вручную или нажав F5, и мы получаем общее количество строк, используемых в Sheet1, отображаемое в окне сообщения следующим образом:
Пример использования диапазона VBA 1-1

Итак, на приведенном выше снимке экрана мы видим, что в окне сообщения возвращается «5», и, как мы видим на Листе 1, общее количество строк в используемом диапазоне равно 5.

Пример №3

Точно так же, если мы хотим найти общее количество столбцов, используемых в Sheet1, мы выполним те же шаги, что и выше, за исключением небольшого изменения в коде следующим образом:

Код:

Sub TotalCols()

 Dim TotalCol As Integer

 TotalCol = ActiveSheet.UsedRange.Columns.Count

 MsgBox TotalCol

End Sub
Пример 3 используемого диапазона VBA

Теперь, когда мы запускаем этот код вручную или нажав F5, мы получаем общее количество столбцов, используемых в Sheet1, отображаемое в окне сообщения следующим образом:

Пример использования диапазона VBA 2-1

Итак, в окне сообщения возвращается «4», и, как мы видим на Листе 1, общее количество столбцов в используемом диапазоне равно 4.

Пример №4

Теперь предположим, что мы хотим найти последний использованный номер строки и столбца на Листе2 файла. Давайте посмотрим, что содержит Sheet2:

Пример использования диапазона VBA 4

Для этого мы выполняем следующие шаги:

  • Создайте имя макроса в модуле.

Код:

Sub LastRow()

End Sub
Пример 4-1
  • Определите переменную LastRow как Integer.

Код:

Sub LastRow()

 Dim LastRow As Integer

End Sub
Пример 4-2
  • Теперь присвойте переменной LastRow формулу для вычисления номера последней использованной строки:

Код:

Sub LastRow()

  Dim LastRow As Integer

  LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row

End Sub
Пример использования диапазона VBA 4-3

Метод SpecialCells в Excel VBA возвращаетVBA возвращает«GoSub» в операторе возврата GoSub означает, что он перейдет к указанной строке кода и завершит задачу, пока не найдет оператор «Возврат». Это спасение для тех, кто знаком с кодированием VBA и вне его.читать далее объект диапазона, который представляет только указанные типы ячеек. Синтаксис метода SpecialCells:

RangeObject.SpecialCells (Type, Value)

В приведенном выше коде xlCellTypeLastCell: представляет последнюю ячейку в используемом диапазоне.

Примечание: «xlCellType» будет включать даже пустые ячейки, для которых был изменен формат по умолчанию любой из их ячеек.

  • Теперь результирующее значение числа LastRow можно отобразить и вернуть с помощью окна сообщения (MsgBox) следующим образом:

Код:

Sub LastRow()

 Dim LastRow As Integer
 
 LastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row

 MsgBox LastRow

End Sub
Пример 4-4
  • Теперь мы запускаем этот код вручную или нажав F5, и мы получаем последний использованный номер строки в Sheet2, отображаемый в окне сообщения следующим образом:
Пример 3 используемого диапазона VBA

Итак, на приведенном выше снимке экрана мы видим, что в окне сообщения возвращается «12», и, как мы видим на Листе2, последний использованный номер строки — 12.

Точно так же, если мы хотим найти номер последнего использованного столбца в Sheet2, мы выполним те же шаги, что и выше, за исключением небольшого изменения кода следующим образом:

Код:

Sub LastCol()

  Dim LastCol As Integer

  LastCol = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Column
 
  MsgBox LastCol

End Sub
Пример 4-5

Теперь, когда мы запускаем этот код вручную или нажав F5, мы получаем номер последнего использованного столбца в Sheet2, отображаемый в окне сообщения следующим образом:

Пример использования диапазона VBA 4

Итак, на приведенном выше снимке экрана мы видим, что в окне сообщения возвращается «3», и, как мы видим на Листе2, последний использованный номер столбца — 3.

Что нужно помнить о VBA UsedRange

  • VBA UsedRange — это прямоугольный диапазон.
  • VBA UsedRange включает ячейки, имеющие какие-либо данные или отформатированные и т. д.
  • Excel VBA UsedRange не обязательно включает верхнюю левую ячейку рабочего листа.
  • UsedRange не обязательно считает активную ячейку используемой.
  • UsedRange можно использовать для нахождения последняя использованная строка в VBAПоследняя использованная строка в VBAМетод End(XLDown) чаще всего используется в VBA для поиска последней строки, но есть и другие методы, например поиск последнего значения в VBA с помощью функции поиска (XLDown).читать далее и сбросить используемый диапазон и т. д.
  • Нажатие горячие клавиши ExcelСочетания клавиш ExcelЯрлык Excel — это способ более быстрого выполнения ручного задания.читать далее CTRL+SHIFT+ENTER на клавиатуре можно использовать для расширения выделения с активной ячейки на последнюю использовавшуюся ячейку на листе.

УЗНАТЬ БОЛЬШЕ >>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован.