Овај водич ће показати како се користе динамички низови (редим анд редим сачувај) у ВБА.
Динамиц Арраи
Динамички низови су низови који могу мењати величине (за разлику од статички низови, који су статични).
Да бисте прогласили динамички низ, декларишете га, али изостављате величину низа:
1 | Дим стрНамес () Ас Стринг |
Затим, пре него што можете да доделите вредности свом низу, морате да употребите РеДим Статемент да поставите низ на жељену величину:
1 | РеДим стрНамес (1 до 3) |
Сада, кад год желите да промените величину низа, једноставно користите РеДим (или РеДим Пресерве о чему ћемо сазнати у наставку).
Динамички низови варијанти
Напомена: Варијантни низови су мало другачији. Са варијантним низовима, не морате да постављате величину низа помоћу РеДим -а пре додељивања вредности.
12345678 | Суб ТестАрраи ()'прогласити променљивуДим варНамес () Као варијанта'попуни низварНамес () = Арраи ("Фред", "Вилма", "Барнеи", "Бетти")'вратите вредностиМсгБок Јоин (варНамес, ",")Енд Суб |
Редим вс. Редим Пресерве
Тхе РеДим наредба мења величину низа, рашчишћавање све постојеће вредности.
Тхе РеДим Пресерве наредба мења величину низа, чување („Очување“) свих постојећих вредности.
Коришћење РеДим -а
У пракси, промена величине низа помоћу РеДим -а изгледа овако:
123456789101112 | Суб ТестРеДим ()'декларишите низ стринговаДим стрНамес () Ас Стринг'промените величину низа низа да бисте могли да држите 3 вредностиРеДим стрНамес (1 до 3)'попуните низ са 3 именастрНамес (1) = "Мел"стрНамес (2) = "Стеве"стрНамес (3) = "Боб"'приказати резултат у непосредном прозоруДебуг.Принт Јоин (стрНамес, вбЦрЛф)Енд Суб |
Коришћење РеДим Пресерве -а
У овом примеру ћемо користити РеДим за постављање почетног динамичког низа, а затим РеДим Пресерве за промену величине низа, чување оригиналне вредности:
1234567891011121314151617 | Суб ТестРеДим ()'декларишите низ стринговаДим стрНамес () Ас Стринг'промените величину низа низа да бисте могли да држите 3 вредностиРеДим стрНамес (1 до 3)'попуни низстрНамес (1) = "Мел"стрНамес (2) = "Стеве"стрНамес (3) = "Боб"'приказати резултат у непосредном прозоруДебуг.Принт Јоин (стрНамес, вбЦрЛф)„Редим, али сачувајте податкеРеДим Пресерве стрНамес (1 до 4)стрНамес (4) = "Фред"'приказати резултат у непосредном прозоруДебуг.Принт Јоин (стрНамес, вбЦрЛф)Енд Суб |
Ако не користите ОЧУВАЈТЕ изјавом, изгубили бисте податке који су се претходно налазили у низу.
У непосредном прозору изнад, низ је насељавао Мел, Стевеа и Боба. Када је поново проглашена, уклонила је те вредности и уместо тога вратила 3 празне вредности, а затим вредност „Фред“. То је због ОЧУВАЈТЕ изјава је изостављена.