Массивы Excel VBA | Список пяти основных типов массивов (с примерами)

Массивы Excel VBA

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

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

Массивы хранят набор данных в своей памяти, и нам не нужно объявлять переменную для каждого значения, которое необходимо извлечь из данных. Необходимость использования массивов связана с тем, что переменные в Excel предназначены для хранения одного значения за раз, однако, когда несколько значений сохраняются в переменной, она становится массивом.

  • Создание массива похоже на создание отдельного блока памяти, который может хранить в нем данные. Для создания массива данные должны быть одного типа.
  • Массивы, которые мы передаем в Excel, должны соответствовать типу данных, которые у нас есть. Предположим, что если у нас есть данные, содержащие только строки, в этом случае мы будем использовать «Одномерный массив», а если данные содержат также столбцы, тогда мы должны использовать «Двумерные массивы», поскольку они могут содержать только значения. из строк и столбцов.
  • Массивы также должны работать как динамические массивы или статические массивы. Поскольку мы даем формуле динамический диапазон, мы также можем сделать переменную Arrays. Динамические массивы будут иметь возможность включать бесконечное количество строк и столбцов. В случае, если массивы, которые мы определили, имеют статический тип, они могут содержать только ограниченное количество строк и столбцов, как определено во время создания массива.

Объяснение

Массивы работают по «математическому правилу матрицы», то есть идентифицируют данные только по их местонахождению. Предположим, что если мы должны заставить VBA понять, что нам нужно «20» в ячейке «B3», тогда мы должны записать код местоположения как (3, 2), где первое значение соответствует местоположению строки, а второе значение - номер столбца. В мире Excel этот код местоположений называется «Верхняя граница» и «Нижняя граница». По умолчанию местоположение в excel начинается с единицы, а не с нуля, поэтому Excel видит «A1» как строку с номером 0, а не с номером 1.

Точно так же столбцы начинаются с нуля, а не с единицы.

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

Теперь, после того как мы выбрали требуемый тип массива, нам нужно будет ввести данные в эти массивы.

Эти данные должны быть предоставлены одна за другой, чтобы преуспеть в приведенных ниже способах.

После того, как данные сохранены в этих массивах, они готовы к использованию в качестве переменных в кодировке VBA.

Список 5 лучших типов массивов

  1. Статические массивы
  2. Динамический массив
  3. Одномерный массив
  4. Двумерный массив
  5. Многомерный массив

Давайте подробно рассмотрим каждый из них.

# 1 - Статические массивы

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

# 2 - Динамический массив

Массив с неопределенным количеством значений, которые он может обработать.

# 3 - Одномерный массив

Массив, который может содержать данные только из строк или столбцов.

# 4 - Двумерный массив

Массив, который может хранить значение из строк и столбцов.

# 5 - Многомерный массив

Как использовать массивы в VBA (с примерами)?

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

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

Ниже приведены некоторые примеры, но прежде чем перейти к примерам, мы научимся открывать редактор VBA с помощью сочетания клавиш.

Это откроет редактор VBA, оттуда мы должны ввести код в «Этот рабочий лист».

Пример # 1

Выберите тип массива, который вы хотите, должен ли он быть динамическим или статическим?

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

Если нам нужен статический массив, мы определим размер как «Статический».

Пример # 2

Определите столбцы и строки, которые вы хотите сохранить в массиве.

Если мы ввели «1» в скобки, это означает, что массив может содержать 2 строки, так как подсчет в Excel начинается с нуля.

Если нам также нужны столбцы и строки, нам нужно определить их оба.

Здесь «от 1 до 2» означает две строки, а «от 1 до 3» означает три столбца.

Здесь мы изменили правило подсчета строк в Excel и попросили его считать с «1», а не с нуля.

Пример # 3

Ввод данных в массив.

Данные должны вводиться с умом. Здесь данные должны быть введены в форме (I, j), где «I» означает строку, а «J» означает столбец.

Итак, «a (1,1») означает, что ячейка «A1»

Пример # 4

Закрытие кода.

После того, как данные были введены для массива, последним шагом будет закрытие кода.

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

  • По умолчанию Excel будет считать строки, начиная с нуля. Это означает, что «2» вместо «I» будет означать 3 строки, а не 2 строки. То же самое относится к «J».
  • Данные, которые необходимо ввести для массива, должны начинаться с (0, 0), то есть с первой строки и первого столбца.
  • В случае, если мы используем динамические массивы, тогда потребуется функция «VBA REDIM» для определения количества строк и столбцов, которые необходимо запомнить.
  • В случае создания двумерного массива мы должны использовать «Целое число» в качестве измерения.
  • Файл excel необходимо сохранить в версии, которая «совместима с макросами», иначе кодировка, которую мы сделали в VBA, исчезнет и не будет запущена в следующий раз.