Как использовать свойство UsedRange в VBA в Excel (4 способа)

  • Поделись Этим
Hugh West

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

Скачать Практическое пособие

Скачайте эту рабочую тетрадь, чтобы заниматься во время чтения этой статьи.

Excel VBA UsedRange.xlsm

Введение в свойство UsedRange в VBA в Excel

Сайт UsedRange свойство VBA возвращает Диапазон Он возвращает диапазон, состоящий из всех ячеек рабочего листа, которые были использованы, включая пустую строку в начале.

В VBA код UsedRange свойство должно использоваться вместе с именем рабочего листа. Таким образом, общий синтаксис для использования свойства UsedRange свойство для активного рабочего листа:

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Примечания:

  • Здесь Rng это имя Диапазон возвращаемый UsedRange собственность. Вы можете использовать все, что вам нравится.
  • Для осуществления UsedRange свойство на рабочем листе, отличном от активного, используйте имя рабочего листа.

Например, чтобы применить его в рабочем листе под названием Лист1 , вставка:

Set Rng = Worksheets("Sheet1").UsedRange

4 способа использования свойства UsedRange в VBA в Excel

Вот 4 наиболее распространенные способы использования UsedRange собственность в VBA .

1. Свойство VBA UsedRange для закрытого диапазона

Прежде всего, мы будем использовать VBA UsedRange свойство для рабочего листа с закрытым диапазоном.

Он вернет весь диапазон, включая пустую строку в начале.

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

Теперь, если вы используете UsedRange свойство на этом рабочем листе, оно вернет диапазон B2:C13 (Включая пустой ряд в начале).

Если Лист1 активна, вы можете использовать:

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Или вы можете использовать:

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Выход:

Мы использовали Выберите свойство Диапазон внутри кода. Таким образом, если мы запустим код, он выберет диапазон B2:D13 из Лист1 .

Читать далее: Как использовать объект Range в VBA в Excel (5 свойств)

2. Свойство VBA UsedRange для разбросанного диапазона

Если у вас есть разбросанный диапазон в любом рабочем листе, то UsedRange свойство вернет диапазон, включая пустые ячейки между ними.

Теперь, в Лист1 У нас есть общая зарплата, самая высокая зарплата и самая низкая зарплата, разбросанные по разным местам, из ячейки B3 на G3 , вот так:

Теперь используйте любую из двух строк кода, чтобы использовать функцию UsedRange собственность.

Dim Rng As Range

Set Rng = ActiveSheet.UsedRange

Или

Dim Rng As Range

Set Rng = Worksheets("Sheet1").UsedRange

Выход:

Он возвращает все ячейки в пределах диапазона B2:G3 из Лист1 включая пустые ячейки (в том числе пустую строку в начале). Поскольку мы использовали метод Выберите свойство Диапазон он выберет диапазон B2:G3.

Читать далее: Конец диапазона с помощью VBA в Excel (с примерами)

Похожие чтения

  • Excel VBA Копирование диапазона на другой лист (8 самых простых способов)
  • Цикл по диапазону для каждой ячейки с помощью Excel VBA (окончательное руководство)
  • Ошибка выхода подстрочного символа Excel за пределы диапазона в VBA (с 5 решениями)

3. Свойство VBA UsedRange для неактивного рабочего листа

Если мы хотим осуществить UsedRange свойство на неактивном рабочем листе, необходимо в начале указать имя рабочего листа.

Например, вот мой активный рабочий лист Лист1 .

Чтобы использовать UsedRange собственность в Лист2 мы должны использовать:

Dim Rng As Range

Set Rng = Worksheets("Sheet2").UsedRange

Он выделит все используемые ячейки в рабочем листе под названием Лист2 .

Читать далее: VBA для установки диапазона в Excel (7 примеров)

4. Свойство VBA UsedRange для неактивной рабочей книги

Свойство UsedRange можно использовать даже для неактивной рабочей книги. Просто поставьте перед ним имя рабочей книги.

Например, здесь моя активная рабочая книга Рабочая тетрадь1 Для осуществления UsedRange собственность над Лист1 из Рабочая тетрадь2 мы должны использовать:

Dim Rng As Range

Set Rng = Workbooks("Workbook2.xlsm").Worksheets("Sheet1").UsedRange

Он выберет используемый диапазон рабочего листа Лист1 из Рабочая тетрадь2 .

Читать далее: VBA для каждой ячейки диапазона в Excel (3 метода)

О чем следует помнить

Сайт UsedRange свойство VBA возвращает Диапазон Здесь, в этой статье, мы использовали объект Выберите свойство Объект диапазона для наглядности. Но очевидно, что вы можете использовать любое другое свойство объекта Диапазон в зависимости от вашего удобства.

Заключение

Используя эти методы, вы можете использовать UsedRange собственность в Excel. У вас есть вопросы? Не стесняйтесь, задавайте их нам.

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.