ВБА функција претраживања - Како се користи функција претраживања? (Примери)

Преглед садржаја

Функција Екцел ВБА ЛООКУП

Лоокуп је функција која нам помаже да дохватимо податке из главне табеле на основу једне вредности претраживања. ВБА ЛООКУП функција не захтева такву структуру података, за ЛООКУП функцију није важно да ли је колона резултата десно или лево од вредности претраживања, ипак, податке може удобно преузети.

Ово функционише слично функцији ВЛООКУП, али што је још важније, ово је флексибилно у структури података. Кад кажемо флексибилност у структури података, то значи да ВЛООКУП требају све вредности десно од вредности претраживања у главној табели и све што је остало од вредности претраживања ВЛООКУП не може да је пронађе.

Синтакса

Ако сте већ тражили формулу ЛООКУП у ВБА едитору, сигуран сам да сте полудели јер у ВБА постоји формула која се зове ЛООКУП.

Разлог зашто није доступан по подразумеваној вредности, јер ЛООКУП пре није ВБА функција, већ је функција радног листа. Дакле, да бисмо користили функцију ЛООКУП, прво морамо да искористимо функцију радног листа у ВБА класи.

  • Арг. 1 значи вредност претраживања
  • Арг 2 је наш вектор претраживања, тј. Опсег нашег ступца вредности претраживања
  • Арг 3 је наш вектор резултата.

Како се користи функција претраживања ВБА? (Примери)

Пример # 1

Имамо следеће податке од којих желимо да добијемо просечну цену одређеног назива производа помоћу функције Претраживање у ВБА Екцел.

Да бисте добили просечну цену мобилне опреме, користите следећи код.

Корак 1: Покрените потпроцедуру у ВБА.

Шифра:

Суб Лоокуп_Екампле1 () Крај Суб

Корак 2: Потребан ми је резултат у Ф3 ћелији. Дакле, мој код је Ранге („Ф3“). Валуе =.

Шифра:

Суб Лоокуп_Екампле1 () Опсег ("Ф3"). Вредност Крај Суб

Корак 3: Као што сам рекао, нисмо могли одмах приступити функцији ЛООКУП. Дакле, прво користите класу Функција радног листа.

Корак 4: У тренутку када применимо класу Функције радног листа, у ВБА можемо видети све доступне формуле са овом класом, па са ове листе изаберите ЛООКУП.

Корак 5: Са функцијама радног листа у ВБА, не видимо јасне аргументе формуле. Овде Арг 1 значи вредност претраживања. Наша вредност претраживања налази се у ћелији Е3, па напишите код као опсег („Е3“).

Шифра:

Суб Лоокуп_Екампле1 () опсег ("Ф3"). Валуе = ВорксхеетФунцтион.Лоокуп (Ранге ("Е3"). Валуе Енд Суб

Корак 6: Арг 2 је наш вектор претраживања, тј. Опсег наше колоне вредности претраживања. У овом примеру, наш опсег вектора претраживања је од Б3 до Б10.

Шифра:

Суб Лоокуп_Екампле1 () опсег ("Ф3"). Вредност = ВорксхеетФунцтион.Лоокуп (опсег ("Е3"). Вредност, опсег ("Б3: Б10"), крајњи под

Корак 7: Арг 3 је наш вектор резултата. Потребан нам је резултат из колоне Просечна цена, тако да је вектор резултата од опсега Ц3 до Ц10.

Шифра:

Суб Лоокуп_Екампле1 () опсег ("Ф3"). Вредност = ВорксхеетФунцтион.Лоокуп (опсег ("Е3"). Вредност, опсег ("Б3: Б10"), опсег ("Ц3: Ц10")) Крај под

У реду, завршили смо са ВБА кодирањем.

Покренимо код, а резултат бисмо требали добити у ћелији Ф3.

Овако, можемо да користимо функцију ЛООКУП испод класе функције радног листа за дохваћање података испоручене вредности претраживања.

Пример # 2

Користите променљиве за функцију ЛООКУП

Користећи променљиве такође можемо доћи до резултата. Испод је пример кода функције претраживања са променљивим.

Шифра:

Sub Lookup_Example2() Dim ResultCell As Range Dim LookupValueCell As Range Dim LookupVector As Range Dim ResultVector As Range Set ResultCell = Range("F3") Set LookupValueCell = Range("E3") Set LookupVector = Range("B3:B10") Set ResultVector = Range("C3:C10") ResultCell = WorksheetFunction.Lookup(LookupValueCell, LookupVector, ResultVector) End Sub

Even though it looks lengthy, it will give good exposure to variables in VBA. Instead of supplying all the values to the formula directly, we have declared variables and assigned set of ranges and values to them.

Declaring variables and setting the reference to those variables is always a good practice in any coding language.

Things to Remember

  • LOOKUP is an alternative function to VLOOKUP.
  • ЛООКУП не захтева нужно да се колона резултата налази десно од вредности претраживања.
  • Дужина опсега и вектора претраживања и вектора резултата требала би бити иста.
  • Још важније, морамо да наведемо број индекса колоне, који је неопходан за функцију ВЛООКУП.

Занимљиви Чланци...