Овај водич ће вас научити како да прођете кроз низове у ВБА.
Постоје два примарна начина за пролажење кроз низове помоћу ВБА:
- За сваку петљу - Фор Евери Лооп ће проћи кроз сваку ставку у низу.
- За следећу петљу - Фор Нект Лооп ће проћи кроз наведене почетне и крајње позиције низа (Можемо користити УБоунд и ЛБоунд функције за петљу кроз читав низ).
За сваку ставку у низу
Тхе За сваку петљу омогућава вам да прођете кроз сваки елемент низа.
12345678910111213141516171819 | Суб ЛоопФорАрраиСтатиц ()'декларирајте варијантни низДим стрНамес (1 То 4) Ас Стринг'попуни низстрНамес (1) = "Боб"стрНамес (2) = "Петер"стрНамес (3) = "Кеитх"стрНамес (4) = "Сам"'декларишите варијанту за држање елемента низаЗатамните ставку као варијанту'петља кроз читав низЗа сваку ставку у стрНамес'прикажи елемент у прозору за отклањање грешака.Дебуг.Принт итемЛоопЕнд Суб |
Горња процедура ће проћи кроз сва имена у низу.
За следећу петљу
Фор Нект Лооп ће проћи кроз сваку ставку на наведеној почетној и завршној позицији низа.
Петља кроз део низа
Можете ручно одредити почетну и крајњу позицију за своју петљу. Ово може бити прикладно ако знате величину низа и/или желите само да прођете кроз део низа.
12345678910111213141516 | Суб ЛоопФорНектСтатиц ()'декларирајте варијантни низДим стрНамес (1 То 4) Ас Стринг'попуни низстрНамес (1) = "Боб"стрНамес (2) = "Петер"стрНамес (3) = "Кеитх"стрНамес (4) = "Сам"'декларирајте цијели бројДим и Ас Интегер'петља од позиције 2 до позиције 3 низаЗа и = 2 до 3'прикажи име у непосредном прозоруДебуг.Принт стрНамес (и)Затим самЕнд Суб |
У горњем примеру смо петљали кроз позиције 2 и 3 низа. Непосредни прозор би вратио имена на следећи начин.
Петља кроз читав низ
Затим ћемо користити функције УБоунд и ЛБоунд за петљу кроз читав низ. Ово је изузетно корисно ако се почетна и крајња позиција низа могу променити (нпр. Динамички низ):
123456789101112131415161718 | Суб ЛоопФорНектДинамиц ()'декларирајте варијантни низДим стрНамес () Ас Стринг'иницијализује низРеДим стрНамес (1 до 4)'попуни низстрНамес (1) = "Боб"стрНамес (2) = "Петер"стрНамес (3) = "Кеитх"стрНамес (4) = "Сам"'декларирајте цијели бројДим и Ас Интегер'петља од доње границе низа до горње границе низа - целог низаЗа и = ЛБоунд (стрНамес) За УБоунд (стрНамес)'прикажи име у непосредном прозоруДебуг.Принт стрНамес (и)Затим самЕнд Суб |