Funkcia VBA StrComp

V našej práci zvyčajne robíme porovnania zakaždým. Tieto porovnania sa môžu týkať číselných textov alebo akýchkoľvek údajov. Pokiaľ ide o čísla, už vieme, ako porovnávame. Existuje veľa matematických metód. Ako však porovnáme dva reťazce, aký výsledok dosiahneme. STRCOMP vo VBA je funkcia porovnávania reťazcov. Porovnáva dva reťazce medzi sebou a dáva nám výsledok. Výsledok porovnania však nie je pravdivý alebo nesprávny. Existujú tri spôsoby porovnania dvoch reťazcov vo funkcii STRCOMP. Skôr ako sa ponoríme do toho, pozrime sa na syntax tejto funkcie.

Syntax StrComp v Excel VBA

Syntax funkcie VBA StrComp v Exceli je nasledovná:

String 1 je reťazec, ktorý sa bude porovnávať s reťazcom 2. Porovnávacie metódy sú pre túto funkciu voliteľné. Teraz sa v tejto funkcii pozrieme na porovnávacie metódy. V tejto funkcii sú tri typy porovnávacích metód a sú tieto:

  1. VbBinaryCompare: Toto je predvolená porovnávacia metóda, ak nevyberieme porovnávaciu metódu pre našu funkciu. Pri tejto porovnávacej metóde sa rozlišujú malé a veľké písmená, čo znamená, že reťazec 1 a reťazec 2 sú rovnaké, ale reťazec 1 je v malom a reťazec 2 je napísaný veľkými písmenami. Binárny kód pre „a“ a „A“ je iný. Podobne pre iné znaky. Tieto kódy sa nazývajú kódy ASCII.
  2. VbTextCompare: Pri tejto porovnávacej metóde sa pri porovnávaní nerozlišujú malé a veľké písmená, takže ak sa reťazec 1 a reťazec 2 rovnajú, ale nie v rovnakom prípade, použijú sa tieto porovnávacie metódy.
  3. Porovnanie prístupu: Táto metóda sa používa pri porovnávaní databáz.

Keď teraz použijeme túto funkciu, aký výsledok dosiahneme? Použitím tejto porovnávacej funkcie nebudeme pravdiví alebo nepravdiví. Namiesto toho môžeme mať ktorýkoľvek z nasledujúcich výsledkov:

  1. 0, ak sú reťazce rovnaké.
  2. 1, ak sa reťazce navzájom nezhodujú.
  3. -1, ak je prvý reťazec menší ako reťazec 2.
  4. NULL, ak neexistuje hodnota pre reťazec 1 aj reťazec 2.

Prejdeme si niekoľko rôznych príkladov a uvidíme, ako sa tieto porovnávania reťazcov vykonávajú vo VBA.

Ako používať funkciu VBA StrComp v programe Excel?

Naučíme sa používať funkciu VBA StrComp s príkladom v Exceli.

Túto šablónu aplikácie VBA StrComp Excel si môžete stiahnuť tu - šablónu VBA StrComp Excel

Príklad č. 1 - VBA StrComp

Najprv použijeme pre náš príklad binárnu porovnávaciu metódu. Zoberieme dva vstupy reťazcov od používateľa, jeden v malom písmene, zatiaľ čo druhý v prípade veľkých písmen a porovnáme ich.

Krok 1: Na karte vývojára a potom z jazyka Visual Basic sa dostanete do editora VB.

Krok 2: Vložte modul z karty Vložiť a začnite písať kódy vo VBA.

Krok 3: Dvakrát kliknite na modul na karte Projekt a vyhláste subfunkciu nasledovne.

kód:

 Čiastková vzorka () Koniec č 

Krok 4: Musíme definovať tri premenné ako reťazce, dve budú držať náš vstup, zatiaľ čo iná uloží výsledok.

kód:

 Čiastková vzorka () Dim A, B, C ako koniec reťazca 

Krok 5: V premennej A a B zoberte vstup od používateľa pre dva reťazce nasledovne.

kód:

 Čiastková vzorka () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) End Sub 

Krok 6: Porovnajte oba reťazce v premennej A a B a uložte hodnotu do C pomocou funkcie STRCOMP a ako binárne porovnanie použite porovnávaciu metódu.

kód:

 Čiastková vzorka () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) C = StrComp (A, B, vbBinaryCompare) End Sub 

Krok 7: Zobrazte výstup uložený v premennej C pomocou funkcie Msgbox.

kód:

 Čiastková vzorka () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) C = StrComp (A, B, vbBinaryCompare) MsgBox C End Sub 

Krok 8: Teraz stlačte kláves F5, aby ste vykonali kód a poskytli dva vstupné reťazce nasledovne:

Krok 9: Pozri konečný výsledok nasledovne.

Výsledkom je 1, pretože v binárnom porovnaní nie sú obidva reťazce rovnaké, pretože jeden reťazec je napísaný veľkými písmenami, zatiaľ čo druhý je napísaný malými písmenami.

Príklad č. 2 - VBA StrComp

Teraz používajme inú porovnávaciu metódu, ktorou je VbTextCompare, a uvidíme, aké výsledky dosiahneme pri rovnakých vstupoch, aké sme uviedli vyššie.

Krok 1: Do modulu, ktorý sme vložili skôr, dvakrát naň kliknite na karte Projekt a vyhláste podfunkciu, aby ste mohli začať pracovať na druhom príklade nasledovne.

kód:

 Čiastková vzorka1 () Koncová čiastková č 

Krok 2: Musíme definovať tri premenné ako reťazce, dve budú držať náš vstup, zatiaľ čo iná uloží výsledok.

kód:

 Čiastková vzorka 1 () Dim A, B, C ako koniec reťazca Č 

Krok 3: V premennej A a B zoberte vstup od používateľa pre dva reťazce nasledovne.

kód:

 Čiastková vzorka1 () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) End Sub 

Krok 4: Porovnajte oba reťazce v premennej A a B a uložte hodnotu do C pomocou funkcie STRCOMP a porovnávaciu metódu použite ako porovnanie textu.

kód:

 Čiastková vzorka1 () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) C = StrComp (A, B, vbTextCompare) End Sub 

Krok 5: Zobrazte výstup uložený v premennej C pomocou funkcie Msgbox.

kód:

 Čiastková vzorka1 () Dim A, B, C ako reťazec A = InputBox („Zadajte reťazec“, „malými písmenami“) B = InputBox („Zadajte reťazec“, „veľkými písmenami“) C = StrComp (A, B, vbTextCompare) MsgBox C End Sub 

Krok 6: Teraz stlačte kláves F5 a zadajte dva vstupné reťazce nasledovne.

Krok 7: Pozri konečný výsledok nasledovne.

Výsledkom je 0, pretože porovnávanie textu nerozlišuje veľké a malé písmená, čo znamená, že reťazce sú rovnaké.

Príklad č. 3 - VBA StrComp

Teraz mám niektoré údaje v Liste 1 nasledovne, chcem zistiť, či sú údaje v stĺpci A aj stĺpci B navzájom podobné alebo nie. Pozrite sa na nižšie uvedené údaje.

Krok 1: Pracujme v treťom príklade pre naše údaje nasledovne.

kód:

 Čiastková vzorka 2 () Koniec č 

Krok 2: Aktivujte list 1, aby sme mohli využívať jeho vlastnosti.

kód:

 Sub Sample2 () Pracovné hárky („List1“). Aktivácia End Sub 

Krok 3: Vyhláste dve premenné ako celé číslo, ktoré sa použije pre slučku a jednu ako reťazec, ktorý sa použije na uloženie výsledku porovnania.

kód:

 Sub Sample2 () Pracovné hárky („List1“). Aktivovať Dim A ako celé číslo Dim B ako reťazec End Sub 

Krok 4: Napíšte nasledujúci kód na porovnanie a použitie slučky for.

kód:

 Pod ukážka2 () Pracovné hárky („List1“). Aktivovať Dim A ako celé Dim B ako reťazec pre A = 2 až 5 B = StrComp (bunky (A, 1). Hodnota, bunky (A, 2). Hodnota, vbBinaryCompare)) Ak B = 0, potom bunky (A, 3). Hodnota = "Rovnaké" ostatné bunky (A, 3). Hodnota = "NIE sa rovná" Koniec, ak je ďalší koniec 

Krok 5: Spustite vyššie uvedený kód a pozrite si výsledok v hárku 1 nasledovne.

Žiadny z reťazcov nebol pri porovnávaní rovnaký.

Čo je potrebné pamätať

  • Toto je porovnávacia funkcia.
  • Vracia 0, 1, -1 alebo NULL ako výsledok nie je pravdivý alebo nepravdivý.
  • Ak neposkytneme žiadnu z porovnávacích metód, potom je štandardne porovnávacia metóda VbBinaryCompare.
  • Porovnávacia metóda je voliteľným argumentom pre túto funkciu.

Odporúčané články

Toto je sprievodca VBA StrComp. Tu diskutujeme o tom, ako používať funkciu Excel VBA StrComp spolu s praktickými príkladmi a stiahnuteľnou šablónou Excel. Môžete si tiež prečítať naše ďalšie navrhované články -

  1. VBA InStr vysvetlené s príkladmi
  2. VBA celočíselný typ údajov
  3. Ako vybrať bunku pomocou kódu VBA?
  4. Transponujte rozsah vo VBA
  5. Pracovné listy VBA (príklady)

Kategórie: