VBA ArrayList

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

Excel VBA ArrayList

VBA ArrayList — это своего рода структура данных, которую мы используем в VBA для хранения данных. ArrayList в Excel VBA — это класс, используемый для создания массива значений. Это, в отличие от традиционных массивов, где эти массивы имеют фиксированную длину, а список массивов не имеет фиксированной длины.

VAB ArrayList не входит в список VBA; скорее, это внешняя библиотека или объект, для которого нам нужно установить ссылку, прежде чем мы начнем к ней обращаться.

Массивы в VBAМассивы в VBAМассив VBA в Excel — это единица хранения или переменная, которая может хранить несколько значений данных. Эти значения обязательно должны быть одного типа данных. Это означает, что связанные значения группируются вместе для хранения в переменной массива.читать далее являются неотъемлемой частью любого языка программирования. Используя массивы в ExcelМассивы в ExcelФормулы массива — чрезвычайно полезные и мощные формулы, которые используются в Excel для выполнения некоторых из самых сложных вычислений. Есть два типа формул массива: один возвращает один результат, а другой — несколько результатов.читать далее, мы можем хранить данные с одним именем переменной, объявив «нижний предел и верхний предел».

С обычными массивами нам нужно определить нижнюю и верхнюю границы массива. Нам нужно заранее решить во время объявления переменной в случае статических массивов, а в случае динамических массивов нам нужно определить длину массива после объявления массива с помощью оператора «ReDim» в VBA.

Однако у нас есть еще один вариант, в котором мы можем сохранить число «N» значений без объявления нижнего и верхнего пределов. В этой статье мы покажем вам этот вариант, то есть «VBA ArrayList».

Чтобы установить ссылку на объект VBA ArrayList, выполните следующие действия.

  1. Перейдите в Инструменты> Ссылки.

    Ссылка на шаг 1

  2. Перед вами появится справочное окно библиотеки объектов. Выберите вариант «mscorlib.dll».

  3. Также нажмите ОК. Теперь мы можем получить доступ к VBA ArrayList.

    Ссылка на шаг 2

Примеры VBA ArrayList в Excel

Ниже приведены примеры Excel VBA ArrayList.

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

Пример # 1 — Создание экземпляра VBA ArrayList

Поскольку Excel VBA ArrayList является внешним объектом, нам нужно создать экземпляр, чтобы начать его использовать. Чтобы создать экземпляр, выполните следующие действия.

Шаг 1: Объявите переменную как «ArrayList ».

Код:

Sub ArrayList_Example1()

   Dim ArrayValues As ArrayList

End Sub
VBA ArrayList, пример 1

Шаг 2: Поскольку список массивов является объектом, нам нужно создать новый экземпляр.

Код:

Sub ArrayList_Example1()

  Dim ArrayValues As ArrayList

  Set ArrayValues = New ArrayList

End Sub
VBA ArrayList, пример 1-1

Шаг 3: Теперь мы можем продолжать сохранять значения в переменной массива, используя метод «Добавить». На изображении ниже я добавил три значения.

Код:

Sub ArrayList_Example1()

  Dim ArrayValues As ArrayList

  Set ArrayValues = New ArrayList

  ArrayValues.Add "Hello" 'First Value
  ArrayValues.Add "Good" 'Second Value
  ArrayValues.Add "Morning" 'Three Value

End Sub
VBA ArrayList, пример 1-2

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

Если вы помните традиционный тип массива, мы ссылаемся на первое значение массива как «ArrayName (0)».

Точно так же мы можем использовать ту же технику и здесь.

ArrayValue(0) = “Hello”
ArrayValue(1) = “Good”
ArrayValue(2) = “Morning”

Покажем это в окне сообщения.

Код:

Sub ArrayList_Example1()

  Dim ArrayValues As ArrayList

  Set ArrayValues = New ArrayList

  ArrayValues.Add "Hello" 'First Value
  ArrayValues.Add "Good" 'Second Value
  ArrayValues.Add "Morning" 'Three Value

  MsgBox ArrayValues(0) & vbNewLine & ArrayValues(1) & vbNewLine & ArrayValues(2)

End Sub
Пример 1-3

Теперь запустите код с помощью клавиши F5 или вручную, тогда мы увидим «Привет», «Хорошо» и «Доброе утро» в Окно сообщения VBAОкно сообщения VBAФункция VBA MsgBox — это функция вывода, которая отображает обобщенное сообщение, предоставленное разработчиком. Этот оператор не имеет аргументов, и персонализированные сообщения в этой функции записываются в двойных кавычках, а для значений предоставляется ссылка на переменную.читать далее.

Пример 1-4 VBA ArrayList

Таким образом, мы можем хранить любое количество значений с помощью объекта Array List.

Пример # 2 — Сохранение значений в ячейках с помощью VBA ArrayList

Давайте посмотрим на пример сохранения присвоенных значений ячейкам на листе. Теперь посмотрим на ниже Код VBAКод VBAКод VBA относится к набору инструкций, написанных пользователем на языке программирования приложений Visual Basic в редакторе Visual Basic (VBE) для выполнения определенной задачи.читать далее.

Код:

Sub ArrayList_Example2()

  Dim MobileNames As ArrayList, MobilePrice As ArrayList
  Dim i As Integer
  Dim k As Integer

  Set MobileNames = New ArrayList

  'Names of the mobile
   MobileNames.Add "Redmi"
   MobileNames.Add "Samsung"
   MobileNames.Add "Oppo"
   MobileNames.Add "VIVO"
   MobileNames.Add "LG"

   Set MobilePrice = New ArrayList

   MobilePrice.Add 14500
   MobilePrice.Add 25000
   MobilePrice.Add 18500
   MobilePrice.Add 17500
   MobilePrice.Add 17800

End Sub
Пример 2

В двух списках массивов я сохранил имена мобильных и цены мобильных. Теперь для этого нам нужно вставить эти значения в рабочий лист. Нам нужно использовать петли. Цикл ниже сделает всю работу за меня.

Пример 2-1

Ниже приведен общий код для сохранения значений на листе.

Код:

Sub ArrayList_Example2()

  Dim MobileNames As ArrayList, MobilePrice As ArrayList
  Dim i As Integer
  Dim k As Integer

  Set MobileNames = New ArrayList

 'Names of the mobile
  MobileNames.Add "Redmi"
  MobileNames.Add "Samsung"
  MobileNames.Add "Oppo"
  MobileNames.Add "VIVO"
  MobileNames.Add "LG"
 
  Set MobilePrice = New ArrayList

  MobilePrice.Add 14500
  MobilePrice.Add 25000
  MobilePrice.Add 18500
  MobilePrice.Add 17500
  MobilePrice.Add 17800

  k = 0

  For i = 1 To 5
  Cells(i, 1).Value = MobileNames(k)
  Cells(i, 2).Value = MobilePrice(k)
  k = k + 1
  Next i

End Sub

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

VBA ArrayList, пример 2-2

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

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

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

Ваш адрес email не будет опубликован. Обязательные поля помечены *