Переменный диапазон Excel VBA

В этой статье мы увидим схему переменной VBA Excel в диапазоне. Но использование свойства диапазона означает, что пользователь должен знать, какой диапазон использовать, в котором находится диапазон как переменная. В VBA у нас есть тип данных как диапазон, который используется для определения переменных как диапазона, который может содержать значение диапазона., Эти переменные очень полезны в сложном программировании и автоматизации. Часто переменная range используется с заданными операторами и методом range. Операторы set используются для задания переменной диапазона определенного размера, а метод свойства range используется для получения значений, уже находящихся в этом диапазоне, или для замены их другим значением. Прежде всего, давайте проясним, что такое диапазон?

Что такое диапазон?

Диапазон - это группа ячеек, которая может быть из одной строки или из одного столбца, а также может быть комбинацией строк и столбцов. Диапазон VBA - это метод, который используется для извлечения данных из определенных столбцов строк или таблицы, а также для назначения значений этому диапазону.

Сначала мы начнем с базового метода свойства range, а затем с переменной range. Со всеми примерами в последовательности мы сможем понять связь с переменной диапазона, оператором set и методом свойства диапазона.

Как установить диапазон переменных в Excel VBA?

Мы узнаем, как установить другой диапазон переменных в Excel, используя код VBA.

Вы можете скачать этот шаблон Excel с переменным диапазоном VBA здесь - Шаблон Excel с переменным диапазоном VBA

Диапазон переменных VBA - Пример № 1

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

Шаг 1: Откройте модуль из меню «Вставка», как показано ниже.

Шаг 2: Запишите подпроцедуру VBA Variable Range.

Код:

 Sub Example1 () End Sub 

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

Код:

 Sub Example1 () Worksheets ("Sheet1"). Активировать End Sub 

Шаг 4. Теперь давайте начнем простую операцию, назначив пользовательское значение ячейке рабочего листа 1, используя метод свойства range.

Код:

 Sub Example1 () Рабочие таблицы ("Sheet1"). Активировать диапазон ("A1: C3"). Value = "EDUCBA" End Sub 

Шаг 5: Запустите код, нажав клавишу F5 или нажав кнопку воспроизведения. Как только мы выполним код, мы увидим значение в листе 1 следующим образом.

Мы можем видеть, что в нашем коде мы выбрали ячейки из A1: C3, чтобы иметь эти пользовательские значения, этот пример был основным представлением того, что мы можем сделать с помощью метода свойства range.

Диапазон переменных VBA - Пример № 2

Теперь давайте использовать Range как переменную в VBA, мы можем использовать range как переменную и установить переменную со значениями, используя метод свойства range. В этом примере мы обсудим, как использовать переменную диапазона для извлечения данных из ячейки и отображения их на экране.

Шаг 1: Мы начнем наш следующий пример с того же модуля, который мы вставили, поэтому нам не нужно вставлять новый модуль для каждой процедуры. Ниже первого кода инициируйте еще одну подпроцедуру.

Код:

 Sub Example2 () End Sub 

Шаг 2: Давайте установим переменную как тип данных Range, чтобы она могла хранить или хранить диапазон значений.

Код:

 Sub Example2 () Dim Rng As End End Sub 

Шаг 3: Теперь мы уже обсуждали важность активации рабочего листа перед его использованием в нашем примере, поэтому нам нужно активировать Лист 2.

Код:

 Sub Example2 () Dim Rng As Range Sheet ("Sheet2"). Активировать End Sub 

Шаг 4: Прежде чем мы приступим к нашему следующему коду, давайте сначала посмотрим, каково значение ячейки A1 на листе 2.

Шаг 5: Мы видим, что в ячейке A1 есть данные, поэтому мы будем использовать оператор Set, чтобы присвоить значение ячейки A1 нашей переменной, используя метод свойства range.

Код:

 Sub Example2 () Dim Rng As Range Sheet ("Sheet2"). Активируйте Set Rng = Range ("A1") End Sub 

Шаг 6: Теперь, чтобы отобразить значение, которое было сохранено в нашей переменной, давайте используем функцию msgbox, как показано на рисунке ниже.

Код:

 Sub Example2 () Dim Rng As Range Sheet ("Sheet2"). Активируйте Set Rng = Range ("A1") MsgBox Rng End Sub 

Шаг 7: Теперь, когда мы выполним приведенный выше код, мы получим следующий результат.

Диапазон переменных VBA - Пример № 3

В этом примере мы будем использовать переменную в качестве диапазона для выбора нескольких ячеек на листе 3.

Шаг 1: Определение подпроцедуры будет таким же, как и для всех приведенных выше кодов, давайте начнем прямо под примером 3 в том же модуле, как показано ниже.

Код:

 Sub Example3 () End Sub 

Шаг 2: Теперь объявите переменную как тип данных Range для хранения значений диапазона.

Код:

 Sub Example3 () Dim Rng1 As End End Sub 

Шаг 3: Поскольку мы собираемся выполнить процедуру на листе 3, давайте сначала активировать лист 3.

Код:

 Sub Example3 () Dim Rng1 As Range Sheet ("Sheet3"). Активировать End Sub 

Шаг 4: Теперь используйте оператор set, чтобы присвоить значение диапазона нашей переменной с помощью метода свойства range.

Код:

 Sub Example3 () Dim Rng1 As Range Sheet ("Sheet3"). Активируйте Set Rng1 = Range ("A1: C3") Rng1.Select End Sub 

Шаг 5: Теперь давайте воспользуемся оператором select для выбора диапазона в переменной.

Код:

 Sub Example3 () Dim Rng1 As Range Sheet ("Sheet3"). Активируйте Set Rng1 = Range ("A1: C3") Rng1.Select End Sub 

Шаг 6: Когда мы выполним код и перейдем к листу 3, мы увидим следующий результат.

Диапазон переменных VBA - Пример № 4

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

Шаг 1: В том же модуле, что и в примере 3, мы установим другую процедуру с именем Example4.

Код:

 Sub Example4 () End Sub 

Шаг 2: Теперь установите переменную как тип данных Range, чтобы хранить значения диапазона.

Код:

 Sub Example4 () Dim Rng2 As End End Sub 

Шаг 3: Поскольку мы собираемся выполнить процедуру в Sheet4, сначала активируем Sheet4.

Код:

 Sub Example4 () Dim Rng2 As Range Sheet ("Sheet4"). Активировать End Sub 

Шаг 4: Теперь используйте оператор set, чтобы присвоить значение диапазона нашей переменной с помощью метода свойства range, как показано ниже.

Код:

 Sub Example4 () Dim Rng2 As Range Sheet ("Sheet4"). Активируйте Set Rng2 = Range ("A1: C3") End Sub 

Шаг 5: Теперь мы будем использовать свойство Value метода range, чтобы присвоить значение этому диапазону.

Код:

 Sub Example4 () Dim Rng2 As Range Sheet ("Sheet4"). Активируйте Set Rng2 = Range ("A1: C3") Rng2.Value = "EDUCBA" End Sub 

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

Код:

 Sub Example4 () Dim Rng2 As Range Sheet ("Sheet4"). Активируйте Set Rng2 = Range ("A1: C3") Rng2.Value = "EDUCBA" Rng2.Font.Bold = True End Sub 

Шаг 7: Когда мы выполним этот код, мы увидим следующий результат на листе 4, как показано ниже.

Объяснение диапазона переменных VBA:

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

Как использовать диапазон переменных VBA?

Позвольте мне объяснить еще один пример использования диапазона переменных в коде реального времени. Допустим, у нас есть разные значения в Sheet5, как показано ниже.

И я хочу найти, какая строка имеет значение «EDUCBA», мы хотим, чтобы номер строки отображался.

Код:

 Sub Example5 () Dim ws как рабочий лист Dim FoundCell как диапазон Dim WTF как строка Dim k как набор целых чисел ws = Worksheets ("Sheet5") WTF = диапазон ("A1"). Набор значений FoundCell = ws.Range ("A: A ") .Find (What: = WTF) k = FoundCell.Row MsgBox" Найдено значение в строке "& k End Sub 

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

Позвольте мне объяснить код, переменная Foundcell - это диапазон переменных, который ищет значение A1 во всем диапазоне A: A, и когда значение найдено, он отображает номер строки с помощью метода Row.

То, что нужно запомнить

  • Переменная range - это переменная с типом данных range.
  • Он определяется так же, как и Dim Statement.
  • Мы используем оператор Set, чтобы назначить диапазон переменной.
  • Метод Range Свойство используется для доступа к значениям переменной диапазона.

Рекомендуемые статьи

Это руководство по VBA Variable Range. Здесь мы обсудим, как установить диапазон переменных в Excel, используя код VBA, а также на практических примерах и загружаемом шаблоне Excel. Вы также можете просмотреть наши другие предлагаемые статьи -

  1. Диапазон выбора VBA (примеры)
  2. VBA IF Заявления | Шаблон Excel
  3. Объявление переменной VBA с типами данных
  4. Обзор номера формата VBA

Категория: