VBA Размер на масива - Ръководство стъпка по стъпка с примери

В тази статия предоставяме ръководство стъпка по стъпка за намиране на размера на масива с помощта на VBA код.

Как да намерим размера на масив с помощта на VBA код?

Следвайте стъпките, за да намерите размера на масива, като използвате Excel VBA код.

  • Стъпка 1: Нека започнем с основното първо, декларираме променлива в VBA като вариант на типа данни.

Код:

Sub Array_Size () Затъмняване на MyArray като вариант Край Sub
  • Стъпка 2: За тази променлива използвайте функцията ARRAY и задайте някои стойности, както е показано по-долу.

Код:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") End Sub
  • Стъпка 3: Добре, присвоихме някои стойности на името на масива „MyArray“.

Да приемем, че ако трябва да напишем цикъл, за да съхраняваме тези стойности на масива в клетки, тогава трябва да решим колко пъти цикълът трябва да се изпълнява. Това зависи от броя на стойностите, които има масивът.

Добре, сега погледнете броя на стойностите, присвоени на името на масива „MyArray“, има общо 7 стойности, присвоени на масива, така че сега знаем колко пъти цикълът трябва да се изпълни, за да съхранява стойности на масив в клетки .

  • Стъпка 4: Декларирайте друга променлива като цяло число, за да напишете цикъл FOR във VBA.

Код:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 To 7 Следващ k Край Под
  • Стъпка 5: Ето, ние отворихме цикъла FOR, започвайки от 1 до 7, вътре в цикъла напишете свойството CELLS, за да съхранявате, както е показано по-долу.

Код:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 1 To 7 Клетки (k, 1). Стойност = MyArray (k) Следващ k Край Sub
  • Стъпка 6: Добре, сега изпълнете кодовия ред по ред, като натиснете функционален клавиш F8. При първо натискане на клавиша F8, той ще стартира макроса.
  • Стъпка 7: Натиснете F8, за да преминете към ред за задаване на стойност на масива.
  • Стъпка 8: Към момента името на масива “MyArray” няма стойности в него, натиснете F8 и всички споменати стойности ще бъдат присвоени на променливата на масива.
  • Стъпка 9: Сега цикълът ще започне да работи и натиснете клавиша F8 2 пъти и вижте каква стойност получаваме в клетка А1.
  • Опа !!! Дръжте, нашата първа стойност в променливата на масива е „Jan“, но ние получихме резултата като втората стойност „Feb“, когато все още работи първият цикъл на стойността.
  • Стъпка 10: Това е така, защото когато броят на стойностите на масива ви започва от нула, а не от 1, така че трябва да включим началния цикъл като нула.
  • Стъпка 11: След като началната позиция на цикъла бъде намалена с една подобно завършваща, тя също трябва да бъде намалена с 1, така че направете края като 6 вместо 7.
  • Стъпка 12: След като цикълът започне и завърши реши още едно ощипване, което трябва да направим, т.е. в свойството CELLS сме използвали променливата „k“ като динамичен избор на клетки, но тъй като нашият цикъл започва от нула, няма клетка, която да започва с нула , така че добавете плюс 1 към променливата „k“.

Код:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = 0 To 6 Клетки (k + 1, 1). Стойност = MyArray (k) Следващ k Край Sub
  • Стъпка 13: Така че при стартиране на цикъла за първи път стойността „k“ е нула и тъй като сме добавили плюс 1, стойността „k“ ще бъде 1, така се отнася до клетка А1.
  • Стъпка 14: Сега стартирайте кода и всички стойности на масива ще се съхраняват в клетки.

В този случай обаче решихме ръчно началния и крайния размер на цикъла, но размерът на масива може лесно да бъде определен с помощта на функциите LBOUND & UBOUND

Автоматично намиране на размера на масив

  • Стъпка 1: Когато включихме началната и крайната точка на цикъла в горното, ние сме преброили ръчно броя на стойностите, които масивът има, но за да стартира масива използвайте функцията LBOUND и за тази пропуск име на променлива MyArray.
  • Стъпка 2: И за да определите последния размер на масива, използвайте функцията UBOUND и въведете името на масива “MyArray”.

Код:

Sub Array_Size () Dim MyArray As Variant MyArray = Array ("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul") Dim k As Integer For k = Lboubd (MyArray ) Към UBound (MyArray) клетки (k + 1, 1). Стойност = MyArray (k) Следващ k Край Sub
  • Стъпка 3: Добре сега стартирайте ред по ред код и натиснете клавиша F8, докато достигне началната точка на цикъла.
  • Стъпка 4: Сега първо поставете курсора върху „LBound (MyArray)“ и вижте какво пише.
  • Стъпка 5: Началната точка, която казва, че е нула, сега поставете курсора върху „UBound (MyArray)“ и вижте какво пише.

Той казва, че размерът на масива е 6, така че например как споменахме ръчно начало и край, UBOUND и LBOUND автоматично избират числата вместо нас.

Интересни статии...