За следећу петљу у програму Екцел ВБА - Водич за почетнике са примерима

У ВБА, петља се користи када морате да обавите исти задатак више пута док се не испуни услов (или док услов није тачан).

У овом водичу ћете научити како да користите Фор Нект Лооп у програму Екцел ВБА.

Ако сте заинтересовани за учење ВБА на лак начин, погледајте мој Онлине Екцел ВБА обука.

Коришћење ФОР НЕКСТ Лооп у Екцел ВБА

Петља „За следеће“ ради тако што петљу покреће одређени број пута.

На пример, ако вас замолим да ручно додате целе бројеве од 1 до 10, додали бисте прва два броја, затим додали трећи број у резултат, а затим у резултат додали четврти број, итд.

Зар не?

Иста логика се користи у петљи Фор Нект у ВБА.

Одређујете колико пута желите да се петља покрене, као и шта желите да код ради сваки пут када се петља покрене.

Ево Форма петље Фор Нект који морате да користите у ВБА да бисте додали првих 10 целих бројева.

За и = 1 до 10 [додајте и -ти позитивни цео број у резултат] Следеће и

Хајде сада да погледамо неколико примера како се користи петља За следеће.

Пример 1: Додавање првих 10 позитивних целих бројева

Испод је код који ће додати првих 10 позитивних целих бројева помоћу петље За следеће. Затим ће се приказати оквир за поруку који приказује збир ових бројева.

Подбројеви додатака () Дим укупно као цео број Дим број као цео број укупно = 0 за пребројавање = 1 до 10 укупно = укупно + број следећи број мсгБок укупно крај под

У овом коду, вредност Тотал је постављена на 0 пре него што уђе у петљу За следеће.

Једном када уђе у петљу, она држи укупну вредност након сваке петље. Дакле, после прве петље, када је бројач 1, вредност „Укупно“ постаје 1, а након друге петље постаје 3 (1+2) итд.

И на крају, када се петља заврши и када Тотал има збир првих 10 позитивних целих бројева, МсгБок једноставно приказује резултат у оквиру за поруку.

Кликните овде за преузимање датотеке примера

Пример 2: Додавање првих 5 парних позитивних целих бројева

Да бисте сабрали првих пет парних позитивних целих бројева (тј. 2,4,6,8 и 10), потребан вам је сличан код са условом да узмете у обзир само парне бројеве и занемарите непарне бројеве.

Ево кода који ће то учинити:

Суб АддЕвенНумберс () Дим Тотал Ас Интегер Дим Цоунт Ас Интегер Тотал = 0 Фор Цоунт = 2 то 10 Степ 2 Тотал = Тотал + Цоунт Нект Цоунт МсгБок Тотал Енд Суб

Имајте на уму да смо започели вредност Цоунт од 2 и такође користили корак 2 у синтакси Фор.

Корак 2 би рекао коду да повећа вредност „Цоунт“ за 2 сваки пут када се петља покрене. Дакле, вредност Цоунт почиње од 2, а затим постаје 4, 6, 8 и 10 када дође до петље.

НАПОМЕНА: Други начин за то може бити покретање петље од 1 до 10 и унутар петље провера да ли је број паран или непаран. Међутим, коришћење Степ -а је у овом случају ефикаснији начин јер не захтева да се петља извршава 10 пута, већ само 5 пута.

Кликните овде за преузимање датотеке примера.

Пример 3: Добијте нумерички део из алфанумеричког низа

Петља „За следеће“ се такође може користити за петље кроз сваки знак у низу.

На пример, ако имате листу алфанумеричких низова, можете да користите петљу За следеће да бисте из ње извукли бројеве (као што је приказано испод):

Ево кода који ствара прилагођену функцију у ВБА која се може користити као и свака друга функција радног листа.

Извлачи нумерички део из алфанумеричког низа.

Функција ГЕТНУМЕРИЦ (Цл Ас Ранге) Дим и Ас Интегер Дим Резултат као дуг Фор и = 1 То Лен (Цл) Иф ИсНумериц (Мид (Цл, и, 1)) тхен Ресулт = Ресулт & Мид (Цл, и, 1) Енд Иф Нект и ГетНумериц = Крајња функција резултата

У овом коду, број покретања петље зависи од дужине алфанумеричког низа (користи функцију ЛЕН за проналажење дужине низа).

Морате ставити ову функцију у прозор кода модула, а затим је можете користити као било коју другу функцију радног листа.

Кликните овде за преузимање датотеке примера.

Пример 4: Добијање случајних бројева у изабраном опсегу

Претпоставимо да желите брзо да унесете случајне бројеве у изабране ћелије, овде је код који ће то учинити.

Суб РандомНумберс () Дим МиРанге Ас Ранге Дим и Ас Интегер, ј Ас Интегер Сет МиРанге = Селецтион Фор и = 1 То МиРанге.Цолумнс.Цоунт Фор ј = 1 То МиРанге.Ровс.Цоунт МиРанге.Целлс (ј, и) = Рнд Следеће ј Следеће и Заврши суб

Ово је пример угнежђене петље Фор Нект где се Фор петља користи унутар Фор Лооп -а.

Претпоставимо да направите избор од 10 редова и 4 колоне, вредност и варира од 1 до 4, а вредност ј варира од 1 до 10.

Када се покрене прва Фор петља, вредност и је 1. Прелази на другу Фор петљу која се изводи 10 пута (за сваки ред).

Када се друга Фор петља изврши 10 пута, враћа се на прву Фор петљу где сада вредност и постаје 2. Поново следећа Фор петља ради 10 пута.

Овако функционише угнежђена петља Фор Нект.

Кликните овде за преузимање датотеке примера.

Можда ће вам се допасти и следећи Екцел ВБА водичи:

  • Рад са ћелијама и опсезима у Екцел ВБА.
  • Рад са радним листовима у програму Екцел ВБА.
  • Рад са радним свескама помоћу ВБА.
  • Коришћење ИФ затим других изјава у ВБА.
  • Екцел ВБА Изаберите случај.
  • Креирање кориснички дефинисане функције у Екцелу.
  • Екцел ВБА догађаји - једноставан (и потпун) водич
  • Како снимити макро у програму Екцел.
  • Како покренути макро у програму Екцел.
  • Како створити додатак у програму Екцел.
  • Како сачувати и поново користити макро помоћу Екцел личне макро радне свеске.
  • Корисни примери макроа Екцел за почетнике.
  • Коришћење ИнСтр функције у ВБА.

Ви ће помоћи развој сајта, дељење страницу са пријатељима

wave wave wave wave wave