Този урок ще ви научи как да получите дължината (размера) на масив във VBA.
Вземете дължина на масива
За да получите дължината на масив, трябва да знаете началната и крайната позиция на масива. Можете да направите това с UBound и LBound функциите на VBA.
LBound и UBound функции
Тази процедура демонстрира как да използвате UBound и LBound функциите в масив с едно измерение:
123456 | Sub UBoundLBound ()Dim exArr (1 To 4) As StringMsgBox UBound (exArr)MsgBox LBound (exArr)End Sub |
Изваждането на двете ще ви даде дължината на масива (UBound - LBound +1).
Вземете функция за дължина на масива
Тази функция ще изчисли размера (дължината) на едноизмерен масив:
1234567 | Публична функция GetArrLength (като вариант) толкова дългоАко IsEmpty (а) ТогаваGetArrLength = 0ИначеGetArrLength = UBound (a) - LBound (a) + 1Край АкоКрайна функция |
Вземете 2D размер на масива
Тази функция ще изчисли броя на позициите в двуизмерен масив:
12345678910111213141516171819 | Sub testArrySize ()Dim arr2D (1 To 4, 1 To 4) As LongMsgBox GetArrSize_2D (arr2D)End SubОбществена функция GetArrSize_2D (като вариант) толкова дългоDim x As Long, y As LongАко IsEmpty (а) ТогаваGetArrSize_2D = 0Иначеx = UBound (a, 1) - LBound (a, 1) + 1y = UBound (a, 2) - LBound (a, 2) + 1GetArrSize_2D = x * yКрай АкоКрайна функция |