A VBA -ban két karakterláncot hasonlíthat össze a StrComp funkció. Ebben az oktatóanyagban megtudhatja, hogyan kell használni ezt a funkciót különböző összehasonlítási módszerekkel.
Ha szeretné megtanulni a VBA -szerű operátor használatát a nem megfelelő egyezések összehasonlításához, kattintson ide: VBA Like Operator.
Ha meg szeretné tanulni az összehasonlító operátorok használatát, kattintson ide: VBA összehasonlító operátorok - nem egyenlő és több
A StrComp függvény használata két karakterlánc összehasonlítására
Az StrComp függvény két karakterláncot és összehasonlítási módszert vesz argumentumként. 3 összehasonlítási módszer létezik:
- vbBinaryCompare - két karakterláncot hasonlít össze binárisan (kis- és nagybetűk között);
- vbTextCompare - két szöveget hasonlít össze szövegekként (a kis- és nagybetűk megkülönböztethetetlenek);
- vbDatabaseCompare - ez a módszer csak a Microsoft Access alkalmazásban érhető el, a VBA -ban nem.
Alapértelmezés szerint a függvény a bináris metódust használja. Ha kihagyjuk ezt az érvet, akkor a függvény kis- és nagybetűket érzékeny lesz.
A függvény a következő eredményeket adja vissza:
- 0 - ha a karakterláncok egyenlők;
- -1 - ha az 1. karakterlánc kisebb, mint a 2. karakterlánc;
- 1 - ha az 1. karakterlánc nagyobb, mint a 2. karakterlánc;
- Null - ha az egyik karakterlánc üres.
Íme a példakód:
123 | Halvány intResult mint egészintResult = StrComp ("Számítógép", "Számítógép") |
Ebben a példában azt szeretnénk ellenőrizni, hogy a karakterláncok "Számítógép" és "Számítógép" egyenlők, az alapértelmezett összehasonlítási módszer (bináris) használatával. A függvény eredménye a intResult változó. Amint az a képen látható, mindkét karakterlánc egyenlő, ezért a intResult értéke 0.
1. kép: A StrComp függvény használata bináris módszerrel a VBA -ban
A StrComp függvény használata bináris és szöveges módszerrel
Most látni fogja a különbséget a bináris és a szöveges módszer között. A bináris metódus mindegyik karakterhez bináris számot tartalmaz, így a nagy- és a kisbetű különböző karakter ebben a módszerben. A másik oldalon a szöveges módszer az „S” -t és az „s” -t ugyanazoknak a betűknek tekinti. Ha meg akarja változtatni a függvényt a kis- és nagybetűk között, akkor a harmadik argumentumot erre kell állítani vbBinaryCompare. Itt a kód:
123456 | Dim intResult1 Egész számkéntDim intResult2 mint egészintResult1 = StrComp ("Számítógép", "CompuTer")intResult2 = StrComp ("Számítógép", "CompuTer", vbTextCompare) |
Össze akarjuk hasonlítani a húrokat "Számítógép" és "Számítógép", mindkét módszert használva.
A változóban intResult1, a bináris módszerrel kapjuk meg az értéket, míg a intResult2 megkapja az értéket a szöveges módszerrel. E két változó értékeit láthatja:
2. kép: A StrComp funkció használata bináris és szöveges módszerrel
Az értéke intResult1 az 1, ami azt jelenti, hogy két karakterlánc különbözik a bináris módszerhez. A szöveges módszer esetében ez a két karakterlánc egyenlő, tehát a értéke intResult2 0.