Funkcja Excel VBA Find

Kto nie zna metody ZNAJDŹ w programie Excel? Jestem pewien, że wszyscy wiedzą, kto ma do czynienia z arkuszami Excela. ZNAJDŹ lub popularny skrót klawiszowy Ctrl + F znajdzie szukane słowo lub treść w całym arkuszu, a także w całym skoroszycie. Kiedy mówisz, że znajdź oznacza, że ​​znajdujesz się w komórkach lub zakresach, prawda? Tak, poprawna metoda znajdowania jest częścią komórek lub zakresów w programie Excel, jak również w VBA.

Podobnie w VBA Find mamy opcję o nazwie ZNAJDŹ, która może pomóc nam znaleźć szukaną wartość. W tym artykule przeprowadzę cię przez metodologię FIND w VBA.

Formuła znajdowania funkcji w programie Excel VBA

W zwykłym arkuszu programu Excel po prostu wpisujemy klawisz skrótu Ctrl + F, aby znaleźć zawartość. Ale w VBA musimy napisać funkcję, aby znaleźć poszukiwaną treść. Ok, spójrzmy więc na składnię FIND.

Wiem, co się dzieje w twoim umyśle, zagubiłeś się patrząc na tę składnię i nic nie rozumiesz. Ale nie martw się, zanim wyjaśnię ci składnię, pozwól, że przedstawię ci zwykłe pole wyszukiwania.

Jeśli zauważysz, co jest w zwykłym Ctrl + F, wszystko jest tam również w składni VBA Find. Teraz spójrz na to, o czym mówi każde słowo w składni.

Co: Po prostu to, czego szukasz. Tutaj musimy wspomnieć o treści, której szukamy.

Po: Po której komórce chcesz wyszukać.

LookIn: Gdzie szukać szukanej rzeczy Na przykład formuły, wartości lub komentarze. Parametry to xlFormulas, xlValues, xlComments.

LookAt: Niezależnie od tego, czy szukasz całej treści, czy tylko jej części. Parametry to xlWhole, xlPart.

SearchOrder: Czy szukasz w wierszach lub kolumnach. xlByRows lub xlByColumns.

SearchDirection: Czy patrzysz na następną komórkę lub poprzednią komórkę. xlNext, xlPrevious.

MatchCase: W treści, której szukasz, rozróżniana jest wielkość liter, czy nie. Prawda czy fałsz.

MatchByte: dotyczy tylko języków dwubajtowych. Prawda czy fałsz.

SearchFormat: Czy szukasz przez formatowanie. Jeśli szukasz formatu, musisz użyć metody Application.FindFormat .

To jest wyjaśnienie składni metody VBA FIND. Oprócz pierwszego parametru wszystko jest opcjonalne. W sekcji przykładów zobaczymy, jak korzystać z tej metody FIND w kodowaniu VBA.

Jak korzystać z funkcji Excel VBA Find?

Nauczymy się korzystać z funkcji VBA Find Excel z kilkoma przykładami.

Możesz pobrać ten szablon VBA Find Excel tutaj - VBA Find Excel Template

Funkcja wyszukiwania VBA - przykład nr 1

Najpierw wyjaśnię ci prosty przykład użycia właściwości ZNAJDŹ i znajdź treść, której szukamy. Załóżmy poniżej, że masz dane w arkuszu programu Excel.

Krok 1: Od tego chcę znaleźć imię John, otwórzmy Visual Basic i zacznijmy kodować.

Kod:

 Sub Find_Ex1 () End Sub 

Krok 2: Tutaj nie można rozpocząć słowa ZNAJDŹ, ponieważ ZNAJDŹ jest częścią właściwości ZAKRES. Po pierwsze, musimy wspomnieć, gdzie szukamy, czyli zasięg.

Krok 3: Najpierw wspomnij o zakresie, którego szukamy. W naszym przykładzie nasz zakres wynosi od B2 do B11.

Kod:

 Sub Find_Ex1 () Zakres („B2: B11”) Koniec Sub 

Krok 4: Po wskazaniu zakresu umieść kropkę (.) I wpisz ZNAJDŹ. Musisz zobaczyć ZNAJDŹ właściwość.

Krok 5: Wybierz właściwość ZNAJDŹ i otwórz nawias.

Krok 6: Naszym pierwszym argumentem jest to, czego szukamy. Aby podświetlić argument, możemy przekazać taki argument : What: =, byłoby pomocne, aby określić, do którego parametru się odnosimy.

Kod:

 Sub Find_Ex1 () Zakres („B2: B11”). Znajdź (What: = „John”) End Sub 

Krok 7: Ostatnia część to znalezienie słowa, co chcemy zrobić. Musimy wybrać słowo, więc przekaż argument jako. Wybierz

Kod:

 Sub Find_Ex1 () Zakres („B2: B11”). Znajdź (What: = „John”). Wybierz End Sub 

Krok 8: Następnie uruchom ten kod za pomocą klawisza F5 lub ręcznie, jak pokazano na rysunku, aby wybrać pierwsze znalezione słowo Johnson, które zawiera słowo John.

Funkcja wyszukiwania VBA - przykład 2

Teraz pokażę ci, jak znaleźć słowo komentarza za pomocą metody find. Mam dane iw trzech komórkach mam komentarz.

Komórki mające czerwoną flagę mają w nim komentarze. Na podstawie tego komentarza chcę wyszukać słowo „Bez prowizji”.

Krok 1: Rozpocznij kod od podania zakresu („D2: D11”) i wstaw kropkę (.) I wpisz Znajdź

Kod:

 Sub Find_Ex2 () Zakres („D2: D11”). Znajdź (End Sub 

Krok 2: W TYM argumencie wpisz słowo „Bez prowizji”.

Kod:

 Sub Find_Ex2 () Zakres („D2: D11”). Znajdź (What: = „No Commission”, End Sub 

Krok 3: Zignoruj ​​część After i wybierz część LookIn. W części LookIn szukamy tego słowa w komentarzach, więc wybierz xlComments, a następnie przekaż argument jako .Select

Kod:

 Sub Find_Ex2 () Zakres („D2: D11”). Znajdź (What: = „No Commission”, LookIn: = xlComments) .Wybierz End Sub 

Krok 4: Teraz uruchom ten kod za pomocą klawisza F5 lub ręcznie, jak pokazano na rysunku, aby wybrać komórkę z komentarzem „Bez prowizji”. W komórce D9 mamy wspomniany komentarz.

Postępuj z wartościami błędów w Excel VBA Find

Jeśli szukane słowo nie znajdzie się w zakresie, podaliśmy kod VBA, który zwróci taki błąd.

Aby pokazać użytkownikowi, że szukana wartość jest niedostępna, potrzebujemy poniższego kodu.

Jeśli powyższy kod znalazł wartość, to pokazuje wartość i adres komórki, albo wyświetli komunikat jako „ Wartość, której szukasz, nie jest dostępna w podanym zakresie !!!”.

Rzeczy do zapamiętania

  • VBA FIND jest częścią właściwości RANGE i musisz użyć FIND po wybraniu tylko zakresu.
  • W ZNAJDŹ pierwszy parametr jest obowiązkowy (Co) oprócz tego wszystko inne jest opcjonalne.
  • Jeśli chcesz znaleźć wartość po określonej komórce, możesz wspomnieć o komórce w parametrze After składni Find.

Polecane artykuły

Jest to przewodnik po funkcji wyszukiwania VBA. Tutaj omówiliśmy VBA Find i jak korzystać z Excel VBA Find Function wraz z praktycznymi przykładami i szablonem Excela do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. ZNAJDŹ funkcję w programie Excel
  2. Funkcja VBA w programie Excel
  3. Przewodnik po zakresie w programie Excel
  4. Jak korzystać z funkcji VBA VLOOKUP?

Kategoria: