VBA функция за намиране - Как да използвате Excel VBA Find Function?

Съдържание:

Anonim

Excel VBA функция за намиране

Кой не знае FIND метода в excel? Сигурен съм, че всички знаят кой се занимава с работни листове за отлични резултати. НАМЕРЕТЕ или популярния клавиш за бърз достъп Ctrl + F ще намерите думата или съдържанието, което търсите в целия работен лист, както и в цялата работна книга. Когато казвате, че намерите означава, че намирате в клетки или диапазони, нали? Да, правилният метод за намиране е част от клетките или диапазоните в excel, както и във VBA.

По подобен начин във VBA Find имаме опция наречена FIND функция, която може да ни помогне да намерим стойността, която търсим. В тази статия ще ви преведа чрез методологията на намиране във VBA.

Формула за намиране на функция в Excel VBA

В обикновен работен лист на excel, ние просто въвеждаме клавиш за бърз достъп Ctrl + F, за да намерим съдържанието. Но във VBA трябва да напишем функция, за да намерим съдържанието, което търсим. Добре, нека да разгледаме синтаксиса FIND след това.

Знам какво се случва в ума ти, губиш се, като гледаш този синтаксис и не разбираш нищо. Но нищо не се притеснявайте, преди да ви обясня синтаксиса, нека ви запозная с обикновеното поле за търсене.

Ако наблюдавате какво има в обикновения Ctrl + F, всичко има и в синтаксиса VBA Find. Сега разгледайте за какво казва всяка дума в синтаксиса.

Какво: Просто това, което търсите. Тук трябва да споменем съдържанието, което търсим.

След: След коя клетка искате да търсите.

LookIn: Къде да търсите нещото, което търсите, например формули, ценности или коментари. Параметрите са xlFormulas, xlValues, xlComments.

LookAt: Независимо дали търсите цялото съдържание или само частта от него. Параметрите са xlWhole, xlPart.

SearchOrder: Търсите ли в редове или колони. xlByRows или xlByColumns.

SearchDirection: Гледате ли следващата или предишната клетка. xlNext, xlPrevious.

MatchCase: Съдържанието, което търсите, е чувствително към регистъра или не. Истина или лъжа.

MatchByte: Това е само за двубайтови езици. Истина или лъжа.

SearchFormat: Търсите ли чрез форматиране. Ако търсите формат, тогава трябва да използвате метода Application.FindFormat .

Това е обяснението на синтаксиса на метода VBA FIND. Освен първия параметър, всичко е по избор. В раздела с примери ще видим как да използваме този метод FIND при кодиране на VBA.

Как да използвате Excel VBA Find Function?

Ще научим как да използваме VBA Find Excel функция с няколко примера.

Можете да изтеглите този шаблон за VBA Find Excel тук - VBA Find Excel шаблон

Функция за намиране на VBA - пример №1

Първо нека да ви обясня един прост пример за използване на свойството FIND и да намерите съдържанието, което търсим. Да предположим, че по-долу са данните, които имате във вашия лист за отлични резултати.

Стъпка 1: От това искам да намеря името Джон, нека отворим Visual basic и да започнем кодирането.

Код:

 Sub Find_Ex1 () End Sub 

Стъпка 2: Тук не можете да стартирате думата FIND, защото FIND е част от свойството RANGE. И така, първо трябва да споменем къде търсим, т.е. Range.

Стъпка 3: Затова първо споменете диапазона, където търсим. В нашия пример нашата гама е от B2 до B11.

Код:

 Sub Find_Ex1 () Обхват ("B2: B11") Край Sub 

Стъпка 4: След споменаването на диапазона поставете точка (.) И напишете FIND. Трябва да видите свойство FIND.

Стъпка 5: Изберете свойството FIND и отворете скобата.

Стъпка 6: Първият ни аргумент е това, което търсим. За да подчертаем аргумента, можем да предадем аргумента като това Какво: =, това би било полезно да идентифицираме кой параметър се отнасяме.

Код:

 Sub Find_Ex1 () Обхват ("B2: B11"). Find (What: = "John") End Sub 

Стъпка 7: Последната част е след като намерим думата какво искаме да направим. Трябва да изберем думата, така че да предадем аргумента като. Изберете .

Код:

 Sub Find_Ex1 () Обхват ("B2: B11"). Find (What: = "John"). Изберете End Sub 

Стъпка 8: След това стартирайте този код с помощта на клавиш F5 или ръчно, както е показано на фигурата, така че ще изберете първата намерена дума Джонсън, която съдържа дума, Джон.

Функция за намиране на VBA - пример №2

Сега ще ви покажа как да намерите думата за коментар чрез метода find. Имам данни и в три клетки имам коментар.

Тези клетки с червен флаг имат коментари в него. От този коментар искам да потърся думата „Няма комисия“.

Стъпка 1: Стартирайте кода със споменаване на диапазона („D2: D11“) и поставете точка (.) И напишете Find

Код:

 Диапазон Sub Find_Ex2 () ("D2: D11"). Find (End Sub 

Стъпка 2: В WHAT аргумента напишете думата „Няма комисия“.

Код:

 Sub Find_Ex2 () Обхват ("D2: D11"). Find (Какво: = "Без комисионна", End Sub 

Стъпка 3: Игнорирайте частта After и изберете частта LookIn. В частта на LookIn търсим тази дума в коментари, така че изберете xlComments и след това предайте аргумента като .Select

Код:

 Sub Find_Ex2 () Обхват ("D2: D11"). Намерете (Какво: = "Без комисионна", LookIn: = xlComments) .Изберете край Sub 

Стъпка 4: Сега стартирайте този код, използвайки клавиша F5 или ръчно, както е показано на фигурата, така че той ще избере клетката с коментар „Без комисионна“. В клетка D9 имаме споменат коментар.

Справете се със стойности на грешки в Excel VBA Find

Ако думата, която търсим, не намира в диапазона, който сме предоставили VBA код, който ще върне грешка като тази.

За да покажем на потребителя, че търсената от вас стойност не е налична, имаме нужда от кода по-долу.

Ако по-горе кодът намери стойност, тогава тя показва стойността и адреса на клетката или иначе ще покаже съобщението като „ Стойността, която търсите, не е налична в предоставения диапазон !!!“.

Неща, които трябва да запомните

  • VBA FIND е част от свойството RANGE и трябва да използвате FIND, след като изберете само диапазона.
  • В НАМЕРЕТЕ първият параметър е задължителен (Какво) освен всичко останало не е задължително.
  • Ако намерите стойността след определена клетка, тогава можете да споменете клетката в параметъра After на синтаксиса Find.

Препоръчителни статии

Това е ръководство за функцията за намиране на VBA. Тук обсъдихме VBA Find и как да използвате Excel VBA Find Function, заедно с някои практически примери и изтеглящ се шаблон на excel. Можете да разгледате и другите ни предложени статии -

  1. НАМЕРЕТЕ Функцията в Excel
  2. VBA функция в Excel
  3. Ръководство за обхват в Excel
  4. Как да използвате VBA VLOOKUP функция?