Úvod do VBA Like
VBA Like se používá, když máme v řetězci nějaké speciální znaky, mezery a z tohoto slova musíme získat přesný nebo nejdůležitější výstup. VBA Like nám umožňuje porovnat vzorec v abecedním pořadí, takže pokud nějaké slovo obsahuje nějaké speciální znaky, můžeme pomocí VBA Like doplnit slovo. Můžeme také určit, zda je tento řetězec ve správném formátu nebo ne.
Ve VBA Like máme na tomto základě určité podmínky, abychom mohli definovat, co musíme získat a jak musíme vyplnit prostor chybějících prázdných slov.
- Otazník (?) - Tím můžeme spojit pouze jeden znak z řetězce. Předpokládejme, že máme řetězec „TAT“ a vzorec je „T? T“, pak VBA Like vrátí PRAVDA. Pokud máme řetězec jako „TOILET“ a vzor je stále „T? T“, pak VBA Like vrátí FALSE.
- Hvězdička (*) - Tímto můžeme spojit 0 nebo více znaků. Předpokládejme, že máme řetězec „L ** K“, pak VBA Like vrátí PRAVDA.
- (Char-Char) - Tímto způsobem můžeme přiřadit libovolný znak v rozsahu Char-Char.
- (! Char) - Tímto se můžeme shodovat s libovolným jedním znakem, ale nikoli v seznamu.
- (! Char-Char) - Tímto můžeme spojit libovolný jeden znak, ale ne v Char-Char.
Jak používat funkci podobnou VBA v Excelu?
Naučíme se používat funkci VBA Like s několika příklady v Excelu.
Tuto šablonu VBA Like Excel si můžete stáhnout zde - VBA Like Excel TemplatePříklad č. 1 - Like VBA Like
Chcete-li zjistit, zda je dostupný řetězec TRUE nebo FALSE pro VBA Jako první potřebujeme modul. Pro to,
Krok 1: Přejděte do nabídky Vložit a v seznamu klikněte na možnost Modul, jak je uvedeno níže.
Krok 2: Nyní v otevřeném okně modulu ve VBA napište podkategorii VBA Jako je uvedeno níže.
Kód:
Sub VBA_Like () End Sub
Krok 3: Nyní nejprve definujeme proměnnou A jako řetězec, jak je ukázáno níže. Zde můžeme použít proměnnou Long a také v ní můžeme uložit jakoukoli textovou hodnotu.
Kód:
Sub VBA_Like () Dim A jako String End Sub
Krok 4: Dále přidělíme slovo proměnné A. Pojďme to slovo považovat za „LIKE“.
Kód:
Sub VBA_Like () Dim A jako řetězec A = "Like" End Sub
Krok 5: Nyní pomocí smyčky If-End If vytvoříme podmínku typu VBA Like.
Kód:
Sub VBA_Like () Dim A jako řetězec A = "Like" If End If End End
Výše uvedený kód použijeme přímo v nadcházejícím příkladu.
Krok 6: Nyní v If-End Pokud smyčka zapíše podmínku jako proměnnou A jako „L? KE“ je PRAVDA podmínkou, pak nám do políčka se zprávou dejte Ano nebo do pole se zprávou FALSE nám dáte Ne .
Kód:
Sub VBA_Like () Dim A jako řetězec A = "Like" If A Like "L? KE" Pak MsgBox "Yes" Else MsgBox "No" End if End Sub
Na druhém místě jsme drželi otazník. Ale to lze zachovat kdekoli v celém řetězci.
Krok 7: Nyní zkompilujte kód a spusťte jej kliknutím na tlačítko Přehrát, které je k dispozici pod panelem nabídek.
Dostaneme okno zprávy jako NE. Což znamená, že slovo, které zvolilo „LIKE“ v proměnné A, může mít místo otazníku a místo „I“ jiné abecedy.
Příklad # 2 - VBA Like
V tomto příkladu implementujeme Asterisk (*)
Krok 1: Nyní použijeme stejnou strukturu kódu, jakou jsme viděli v příkladu 1, se stejným slovem „ LIKE “.
Kód:
Sub VBA_Like2 () Dim A jako řetězec A = "LIKE" If End If End End
Krok 2: Jak víme, že s hvězdičkou máme 0 nebo více znaků z libovolného řetězce. Takže v If-End If loop budeme psát, pokud VBA Like odpovídá “* Like *” je PRAVDA, pak dostaneme zprávu jako Ano, jinak dostaneme Ne, pokud je FALSE .
Kód:
Sub VBA_Like2 () Dim A jako řetězec A = "LIKE" Pokud se mi líbí "* Jako *" Pak MsgBox "Ano" Else MsgBox "Ne" End If End Sub
Krok 3: Zkompilujte znovu celý kód a spusťte jej. Zprávu dostaneme jako NE, protože VBA Like nedokáže shodovat žádnou abecedu kromě definovaného řetězce „ Like “.
Krok 4: Nyní, pokud změníme řetězec A z „Like“ na „Like Wise“ a pokusíme se shodovat jakékoli písmeno z řetězce, řekněme, že je to „W“ v hvězdičce, co tedy dostaneme?
Jak bylo uvedeno výše, jako nový řetězec jsme použili „LIKE WISE“.
Kód:
Sub VBA_Like2 () Dim A jako řetězec A = "LIKE WISE" Pokud je jako "* W *", pak MsgBox "Ano" Else MsgBox "Ne" End Pokud End Sub
Krok 5: Nyní zkompilujte kód a spusťte jej znovu. Dostaneme zprávu jako ANO. Což znamená, že VBA Like je schopen porovnat jakoukoli abecedu z našeho řetězce „LIKE WISE“.
Stejným způsobem, pokud se shodneme s jiným dopisem od „LIKE WISE“, můžeme získat stejné výsledky.
Příklad # 3 - VBA Like
V tomto příkladu uvidíme, jak Char-Char pracuje při porovnávání řetězců znaků.
Krok 1: K tomu použijeme stejný rámec kódu, jaký jsme viděli v příkladu 2 pro definovanou proměnnou A jako „LIKE WISE“.
Kód:
Sub VBA_Like4 () Dim A jako řetězec A = "LIKE WISE" If End If End End Sub
Krok 2: V případě If-End If loop, napište podmínku VBA Like shoduje se s písmeny od I do K ( In Asterisk and Char ), pak bude TRUE a dá nám zprávu jako ANO . Pokud ne, bude to FALSE a my dostaneme zprávu jako NE .
Kód:
Sub VBA_Like4 () Dim A jako Řetězec A = "LÍSKAJÍ WISE" Pokud se mi líbí "* (IK) *" Pak MsgBox "Ano" Els MsgBox "Ne" End If End Sub
Krok 3: Znovu sestavte kód a spusťte jej. Uvidíme, VBA Like je schopen porovnat postavy z písmene I až K a dal nám zprávu jako ANO .
Klady a zápory VBA Like
- V sadě databází, kde je poměrně časté vidět takové speciální znaky, nám pomocí VBA Like umožní rámovat skrytá slova.
- Protože má velmi omezené použití, používá se velmi zřídka.
Co si pamatovat
- Můžeme porovnat a porovnat pouze řetězce. Žádné jiné proměnné, jako celá čísla, double nelze použít.
- Nedoporučuje se zaznamenávat makro na VBA Like. Protože nevíme o žádné vynikající funkci. A také provedení tohoto procesu jinými způsoby může vést k získání nesprávných výsledků shody.
- Ačkoli se VBA Like používá velmi zřídka, ale druh výstupu, který dává, nemusí být přesně daný jinými funkcemi a příkazy stejného typu.
- Uložte soubor pouze ve formátu Macro Enable Excel. Tento formát se používá hlavně při vytváření jakéhokoli makra.
Doporučené články
Toto je průvodce společností VBA Like. Zde diskutujeme o tom, jak používat funkci Excel VBA Like spolu s praktickými příklady a šablonou Excel ke stažení. Můžete si také prohlédnout naše další doporučené články -
- VBA InStr vysvětleno příklady
- VBA celočíselný typ dat
- Jak vybrat buňku pomocí kódu VBA?
- Transponujte rozsah ve VBA