Funkce VBA InStrRev

Znalost výskytu řetězce v jiném řetězci může být velmi užitečná při práci s každodenními daty. Je zřejmé, že to můžeme udělat ručně výpočtem výskytu řetězce v jiném řetězci, ale to by úkol velmi statné. Abychom to usnadnili, máme funkci ve VBA, která se nazývá INSTRREV a která se používá k nalezení výskytu.

Jak je vysvětleno výše, INSTRREV v Excelu VBA se používá k nalezení výskytu řetězce v jiném řetězci. Tato funkce najde první výskyt řetězce v cílovém řetězci a vrátí hodnotu. Nyní si musíme uvědomit, že vzhledem k tomu, že způsobuje výskyt řetězce, je vrácená hodnota číselná. Protože je to funkce porovnání, tak jako jiné funkce ve VBA, existují tři základní metody porovnání.

Syntaxe InStrRev v Excelu VBA

Syntaxe funkce VBA InStrRev v Excelu je následující:

Nyní si rozebíráme syntaxi a učíme se o ní, String je hlavní řetězec, od kterého chceme najít výskyt podřetězce, Start je numerický výskyt, který řetězci poskytujeme. Pokud není zadán žádný počáteční parametr, funkce začne hledat řetězec od jeho konce. A porovnání je metoda porovnávání, kterou funkci poskytujeme. Pro tuto funkci existují tři typy srovnání:

  1. Chcete-li použít možnost Porovnání, která je (-1). Je také známý jako VbUseCompareOption.
  2. Použít binární porovnání, které je (0). Je také známý jako VbBinaryCompare.
  3. Použít porovnání textu, které je (1). To je také známé jako VbTextCompare.

Pokud není k dispozici žádná z možností porovnání, funkce ji automaticky považuje za binární porovnání.

Nyní využijte tuto funkci v několika příkladech a podívejme se, jak tuto funkci používat.

Jak používat Excel VBA InStrRev?

Nyní vyzkoušejte několik příkladů na VBA InStrRev v Excelu.

Tuto šablonu VBA InStrRev Excel si můžete stáhnout zde - VBA InStrRev Excel Template

Příklad č. 1 - VBA InStrRev

Vezměme si například, že náš řetězec je „Jsem dobrý chlapec“ a najděte výskyt znaku „“, což je prostor.

Krok 1: Nyní, než se přesuneme do VBA, nejprve povolte VBA a poté přejděte do sekce kódu v sekci vývojáře a klikněte na Visual Basic.

Krok 2: Jakmile vstoupíme do editoru VB, který vidíme v sekci záhlaví, existuje možnost vložení. Vložte nový modul z této možnosti, jak je znázorněno níže.

Krok 3: Nyní spustíme náš podprogram v modulu, jak je ukázáno níže.

Kód:

 Vzorek () Konec Sub 

Krok 4: Nyní deklarujte proměnnou jako celé číslo, které bude držet výstupní hodnotu funkce pro nás.

Kód:

 Dílčí vzorek () Dim A jako celočíselný konec Díl 

Krok 5: Nyní v proměnné použijte funkci INSTRREV k nalezení výskytu „“ v řetězci „Jsem dobrý chlapec“ následujícím způsobem.

Kód:

 Dílčí vzorek () Dim A jako celé číslo A = InStrRev ("Jsem dobrý chlapec", "") End Sub 

Krok 6: Nyní zobrazte hodnotu uloženou v proměnné A pomocí funkce msgbox.

Kód:

 Dílčí vzorek () Dim A jako celé číslo A = InStrRev ("Jsem dobrý chlapec", "") MsgBox A End Sub 

Krok 7: Provedeme výše uvedený kód a získáme následující výsledek.

Výsledek dostaneme jako 13, protože jsme funkci nezadali počáteční pozici, takže automaticky vypočítal výskyt od konce, takže výsledek. Zjistilo se, že „“ je na 13. pozici řetězce, když jej prohledáváme od konce.

Příklad č. 2 - VBA InStrRev

Ve výše uvedeném příkladu jsme řetězci neposkytli žádnou počáteční pozici. Uveďme tentokrát tento příklad. Zjistíme z druhé pozice, kde se v řetězci objeví „“.

Krok 1: Vložte nový modul z této možnosti, jak je uvedeno níže.

Krok 2: Definujme znovu podproces pro náš druhý příklad.

Kód:

 Dílčí vzorek1 () Koncový díl 

Krok 3: Deklarovat další celočíselnou proměnnou pro příklad.

Kód:

 Dílčí vzorek1 () Dim A jako celé číslo Dílčí číslo 

Krok 4: Nyní v proměnné A zjistíme výskyt „“ z druhé pozice pomocí funkce INSTRREV následujícím způsobem.

Kód:

 Dílčí vzorek1 () Dim A jako celé číslo A = InStrRev ("Jsem dobrý chlapec", "", 2) End Sub 

Krok 5: Nyní použijte funkci msgbox k zobrazení hodnoty uložené v A.

Kód:

 Dílčí vzorek1 () Dim A jako celé číslo A = InStrRev ("Jsem dobrý chlapec", "", 2) MsgBox A End Sub 

Krok 6: Nyní spusťte výše uvedený kód a zjistěte výsledek níže, jak je uvedeno níže,

Výsledkem je 1, když spočítáme 2, dostaneme I a po jedné pozici dostaneme výskyt „“.

Příklad č. 3 - VBA InStrRev

V tomto příkladu použijeme metody porovnání. Máme řetězec „Indie je nejlepší“ a najdeme řetězec „E“ pomocí textových i binárních porovnávacích metod.

Krok 1: Ve stejném modulu 1 napište další podprogram například 3.

Kód:

 Dílčí vzorek2 () Koncový díl 

Krok 2: Definujme dvě proměnné jako celé číslo, které bude udržovat hodnotu výskytu řetězce E v textovém a binárním srovnání.

Kód:

 Dílčí vzorek2 () Dim A, B jako celočíselný konec Díl 

Krok 3: V proměnné A používáme funkci INSTRREV s porovnáváním textu následujícím způsobem.

Kód:

 Dílčí vzorek 2 () Dim A, B jako celé číslo A = InStrRev („Indie je nejlepší“, „E“, vbTextCompare) End Sub 

Krok 4: Nyní zobrazte hodnotu uloženou v A pomocí funkce msgbox.

Kód:

 Sub Sample2 () Dim A, B jako celé číslo A = InStrRev („Indie je nejlepší“, „E“, vbTextCompare) MsgBox A End Sub 

Krok 5: V proměnné B použijeme binární porovnání pro stejný řetězec jako je následující.

Kód:

 Dílčí vzorek2 () Dim A, B jako celé číslo A = InStrRev („Indie je nejlepší“, „E“, vbTextCompare) MsgBox AB = InStrRev („Indie je nejlepší“, „E“, vbBinaryCompare) MsgBox B End Sub 

Krok 6: Spusťte výše uvedený kód a vyhledejte první výsledek uložený v proměnné A, která je následující.

Krok 7: Stisknutím tlačítka OK zobrazíte výsledek uložený v proměnné B.

Dostaneme 0 jako výsledek pro binární porovnání, protože v našem řetězci „e“ není přítomno „E“. V binárních hodnotách jsou obě tyto odlišné. Takže pokud není hodnota nalezena v řetězci, dostaneme výsledek jako 0.

Co si pamatovat

  • Hodnota vrácená touto funkcí je číselná.
  • Pokud není podřetězec nalezen, je vrácená hodnota 0.
  • Počáteční pozice je volitelná. Pokud není zadán, ve výchozím nastavení funkce vyhledá výskyt od konce řetězce.
  • Srovnávací metody jsou rovněž volitelné.

Doporučené články

Toto je průvodce VBA InStrRev. Zde diskutujeme o tom, jak používat Excel VBA InStrRev spolu s praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. Práce s aktivní buňkou VBA
  2. Odstranění řádku ve VBA
  3. Jak používat Excel VBA Transpose?
  4. Jak opravit chybu 1004 pomocí VBA

Kategorie: