ВБА УБоунд функција | Како се користи УБоунд у програму Екцел ВБА?
УБОУНД или такође позната као Уппер Боунд, ова функција у ВБА се користи са својом супротном функцијом ЛБОУНД или такође познатом као Ловер Боунд функција, употреба ове функције је дефинисање дужине низа у коду и као што назив сугерише УБОУНД користи се за дефинисање горње границе низа.
ВБА УБОУНД функција
Како се открива максимална дужина низа у екцелу? Да, можемо ручно да видимо и ажурирамо максималну дужину низа, али ако то све радите, а данас је крај томе, јер имамо функцију која се зове УБОУНД за одређивање максималне дужине низа. Пратите овај чланак да бисте сазнали више о функцији УБОУНД у програму Екцел ВБА.
УБОУНД је скраћеница од Уппер Боунд. Често у кодирању може бити потребно да пронађемо максималну дужину низа. На пример, МиРесулт (24) значи име низа МиРесулт садржи 25 вредности јер низ почиње од нуле, а не од једне. Дакле, 24 значи +1, тј. Укупно 25 вредности.
Овде је максимална дужина низа 24, уместо да ручно достављамо дужину низа, можемо користити уграђену функцију УБОУНД да бисмо добили максималну дужину низа.
Шифра је:УБОУНД (МиРесулт)тј. УБОУНД (24)
Дакле, функција Екцел ВБА УБОУНД представља горњу границу величине низа.
Како се користи функција ВБА УБоунд у програму Екцел?
Формула ВБА УБОУНД је врло једноставна, јер има само два параметра.
УБоунд (Арраинаме [, Дименсион])
- Име низа: Ово је име имена низа које смо дефинисали. На пример, у горњем примеру, МиРесулт је име низа.
- [Димензија]: Ако низ има више од једне димензије, тада морамо да одредимо димензију низа. Ако занемарите, подразумевано ће третирати прву димензију.
Функција Екцел ВБА УБОУНД је врло корисна у одређивању дужине петљи током извођења петљи.
Примери функције УБОУНД у програму Екцел ВБА
Испод су практични примери ВБА УБоунд функције.
Овај ВБА УБоунд шаблон функције можете преузети овде - ВБА УБоунд шаблон функције
Пример # 1
Да започнем поступак, дозволите ми да напишем једноставан код. Следите кораке у наставку да бисте применили функцију ВБА УБОУНД.
Корак 1: Покрените екцел макро и дефинишите име променљиве.
Шифра:
Суб Убоунд_Екампле1 () Дим АрраиЛенгтх (0 до 4) као низ
Корак 2: Доделићу вредности овом имену низа.
Шифра:
Суб Убоунд_Екампле1 () Дим АрраиЛенгтх (0 до 4) Као стринг АрраиЛенгтх (0) = "Хи" АрраиЛенгтх (1) = "Фриенд" АрраиЛенгтх (2) = "Велцоме" АрраиЛенгтх (3) = "то" АрраиЛенгтх (4) = „ВБА Цласс“ Крај Суб
Корак 3: Сада ћемо помоћу оквира за поруке са функцијом УБОУНД видети максималну дужину низа.
Шифра:
Суб Убоунд_Екампле1 () Дим АрраиЛенгтх (0 до 4) Као стринг АрраиЛенгтх (0) = "Хи" АрраиЛенгтх (1) = "Фриенд" АрраиЛенгтх (2) = "Велцоме" АрраиЛенгтх (3) = "то" АрраиЛенгтх (4) = "ВБА Цласс" МсгБок "Уппер Боунд Ленгтх ис:" & УБоунд (АрраиЛенгтх) Енд Суб
Корак 4: Покрените овај код притиском на тастер Ф5 или га можете покренути и ручно, као што је приказано на доњем снимку екрана.
оквир за поруку ће вам показати горњи ограничени број низа ће бити приказан у оквиру за поруку.
Овако користећи Екцел ВБА УБОУНД функцију, можемо добити дужину горње границе низа.
Пример # 2 - Коришћење функције Екцел ВБА УБОУНД за копирање података
Претпоставимо да имате списак података у једном екцел листу, попут доњег.
Ови подаци ће се свакодневно ажурирати и морате их копирати на нови лист сваки пут када се ажурирају. Ручно ажурирање ће вам одузети прилично времена на вашем радном месту, али показаћу вам једноставан макро код који ћете то аутоматизовати.
Корак 1: Направите макро и дефинишите променљиву низа.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као варијанта Крај Суб
Корак 2: Сада активирајте листу података тако што ћете одредити њено име.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као листови варијанти („Лист са подацима“). Активирајте Крај Суб
Корак 3: Сада доделите опсег података дефинисаној променљивој помоћу доњег кода.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као листови варијанти ("Дата Схеет"). Активирајте ДатаРанге = Ранге ("А2", Ранге ("А1"). Енд (клДовн) .Енд (клТоРигхт)) Енд Суб
Корак 4: Сада додајте нови радни лист у радну свеску.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као листови варијанти („Дата Схеет“). Активирајте ДатаРанге = Ранге („А2“, Ранге („А1“). Енд (клДовн) .Енд (клТоРигхт)) Ворксхеетс.Адд Енд Суб
Корак 5: Сада додајте податке у ново додани лист помоћу функције Екцел ВБА УБОУНД у облику доњег кода.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као листови варијанти ("Дата Схеет"). Активирајте ДатаРанге = Ранге ("А2", Ранге ("А1"). Енд (клДовн) .Енд (клТоРигхт)) Ворксхеетс.Адд Ранге (АцтивеЦелл) , АцтивеЦелл.Оффсет (УБоунд (ДатаРанге, 1) - 1, УБоунд (ДатаРанге, 2) - 1)) = ДатаРанге Енд Суб
Горњи код ће надокнадити ћелије за максималну дужину коју враћа функција УБОУНД и овај опсег ће бити једнак вредности имена низа “Опсег података”
Корак 6: Сада покрените овај код, он ће залепити вредност на нови лист.
Овај код је динамичан, јер чак и када се подаци повећавају хоризонтално и вертикално, аутоматски ће заузети опсег. Сада ћу додати неке лажне линије у податке.
Сада ћу поново покренути овај код, сада ће додати и нове додате редове.
Шифра:
Суб Убоунд_Екампле2 () Дим ДатаРанге () Као листови варијанти ("Дата Схеет"). Активирајте ДатаРанге = Ранге ("А2", Ранге ("А1"). Енд (клДовн) .Енд (клТоРигхт)) Ворксхеетс.Адд Ранге (АцтивеЦелл) , АцтивеЦелл.Оффсет (УБоунд (ДатаРанге, 1) - 1, УБоунд (ДатаРанге, 2) - 1)) = ДатаРанге Ерасе ДатаРанге Енд Суб
Ствари које треба запамтити
- УБОУНД враћа максималну дужину низа.
- Низ почиње од 0, а не од 1.
- Ако желите нижу вредност низа, онда морате да користите ВБА ЛБОУНД.
- Ако низ има више од једне димензије, потребно је да наведете и број димензије.