VBA karakterláncok és sztringek

A VBA számos karakterlánc -funkcióval rendelkezik, amelyek lehetővé teszik a kód szövegének és karakterláncainak kezelését és kezelését. Ebben az oktatóanyagban olyan funkciókat fogunk bemutatni, amelyek lehetővé teszik az alláncok kivonását a karakterláncokból, a szóközök eltávolítását a karakterláncokból, a szöveg vagy karakterlánc átalakítását, a karakterláncok és más hasznos karakterlánc -függvények összehasonlítását.

Egy allánc kibontása

A VBA bal oldali karakterlánc funkciója

A VBA bal funkciója lehetővé teszi, hogy kivonjon egy alláncot a szövegből vagy karakterláncból a bal oldalról kezdve. A VBA bal karakterlánc függvény szintaxisa:

Bal (karakterlánc, karakterek száma) ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Karakterek száma - Egész szám, amely meghatározza az eredeti szövegből kihozandó karakterek számát az elejétől kezdve.

A következő kód bemutatja, hogyan használhatja a Bal karakterlánc funkciót az adott karakterlánc első négy karakterének kibontásához:

1234567891011 SubTheTheLeftStringFunction ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "AutomateExcel"valueTwo = Bal (valueOne, 4)MsgBox értékKettőEnd Sub

Az eredmény:

A Bal funkció kibontotta az AutomateExcel első négy betűjét, amelyek Auto.

A VBA jobb oldali karakterlánc funkciója

A VBA jobb oldali funkció lehetővé teszi, hogy a jobb oldalról induló szövegből vagy karakterláncból kivonjon egy alláncot. A VBA jobb oldali karakterlánc függvény szintaxisa a következő:

Jobbra (karakterlánc, karakterek száma) ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Karakterek száma - Egész szám, amely meghatározza, hogy hány karaktert kell kivonni az eredeti szövegből a végétől kezdve.

A következő kód bemutatja, hogyan használhatja a jobb oldali karakterlánc funkciót a karakterlánc utolsó négy karakterének kibontásához:

1234567891011 ATheRightStringFunction funkció használata ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "AutomateExcel"valueTwo = Jobb (valueOne, 4)MsgBox értékKettőEnd Sub

Az eredmény:

A Jobb függvény kibontotta az AutomateExcel utolsó négy betűjét, amelyek xcel.

A VBA középső karakterlánc funkciója

A VBA középfunkció lehetővé teszi, hogy kivonjon egy alstringet a szövegből vagy karakterláncból, a megadott karakterlánc bármely pozíciójából kiindulva. A VBA középső karakterlánc funkció szintaxisa a következő:

Középső (karakterlánc, kezdőpozíció, [karakterek száma]), ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Kezdő_helyzet - Az eredeti szövegben lévő pozíció, ahonnan a függvény kitermelni kezd.
  • Karakterek száma (Választható) - Egész szám, amely megadja, hogy a Starting_position pozícióból kiindulva hány karaktert kell kivonni az eredeti szövegből. Ha üres, a MID függvény visszaadja a Starting_position összes karakterét.

A következő kód bemutatja, hogyan lehet a Középső karakterlánc funkcióval négy karaktert kivonni, a karakterlánc második helyétől vagy karakterétől kezdve:

1234567891011 SubTheTheMidStringFunction ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "AutomateExcel"valueTwo = Közép (valueOne, 2, 4)MsgBox értékKettőEnd Sub

Az eredmény egy üzenetküldő fiókba kerül:

A középfunkció kibontotta az AutomateExcel négy betűjét a második karakterből/pozícióból/betűből kiindulva, amelyek utom.

Egy allánc helyzetének megkeresése

A VBA Instr String függvény

A VBA Instr függvény egy másik karakterláncon belüli allánc kezdő pozícióját adja vissza. Ez a funkció megkülönbözteti a kis- és nagybetűket. A VBA Instr String függvény szintaxisa a következő:

Instr ([Start], String, Substring, [Compare]) ahol:

  • Rajt (Választható) - Ez határozza meg a funkció kiinduló pozícióját, ahonnan keresni kell. Ha üres, akkor az alapértelmezett 1 értéket használja.
  • Karakterlánc - Az eredeti szöveg.
  • Allánc- Az alszöveg az eredeti szövegben, amelynek pozícióját meg szeretné találni.
  • Összehasonlítás (Választható)- Ez határozza meg az összehasonlítás típusát. Ha üres, akkor bináris összehasonlítást használunk.

-vbBinaryCompare - Bináris összehasonlítás (a kis- és nagybetűk eltérőek)
-vbTextCompare - Szöveg összehasonlítás (a kis- és nagybetűk azonosak)
-vbDatabaseCompare - Adatbázis -összehasonlítás (Ez a lehetőség csak a Microsoft Access rendszerben használatos, és az adatbázison alapuló összehasonlítás)

A következő kód bemutatja, hogyan lehet az Instr String függvény segítségével meghatározni a „Th” allánc első előfordulását a fő karakterláncban:

123456789101112 SubTheTheInstrStringFunction ()Dim érték: Egy mint karakterláncA szubsztring halvány pozíciója egész számkéntvalueOne = "Ez a szöveg"positionofSubstring = InStr (1, valueOne, "Th")Hibakeresés.Substring pozíció nyomtatásaEnd Sub

Az eredmény (az azonnali ablakba kerül):

Az Instr függvény visszaadta a „Th” allánc első előfordulásának helyét, ami az 1. Megjegyzés: ez a függvény tartalmazza a számokat.

A VBA InstrRev karakterlánc -függvény

A VBA InstrRev függvény egy másik karakterláncon belüli allánc kezdő pozícióját adja vissza, de elkezdi számolni a pozíciót a karakterlánc végétől. Ez a funkció megkülönbözteti a kis- és nagybetűket. A VBA InstrRev karakterlánc függvény szintaxisa a következő:

InstrRev (String, Substring, [Start], [Compare]) ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Allánc- Az alszöveg az eredeti szövegben, amelynek pozícióját meg szeretné találni.
  • Rajt (Választható) - Ez határozza meg azt a pozíciót, ahonnan a keresést elkezdeni. Ha üres, a függvény az utolsó karaktertől kezdi a keresést.
  • Összehasonlítás (Választható)- Ez határozza meg az összehasonlítás típusát. Ha üres, akkor bináris összehasonlítást használunk.

-vbBinaryCompare - Bináris összehasonlítás (a kis- és nagybetűk eltérőek)
-vbTextCompare - Szöveg összehasonlítás (a kis- és nagybetűk azonosak)
-vbDatabaseCompare - Adatbázis -összehasonlítás (Ez a lehetőség csak a Microsoft Access rendszerben használatos, és az adatbázison alapuló összehasonlítás)

A következő kód bemutatja, hogyan lehet az InstrRev karakterlánc függvény segítségével meghatározni a Th karakterlánc első előfordulását a fő karakterláncban, a karakterlánc végétől kezdve:

1234567891011 SubTheTheInstrRevStringFunction ()Dim érték: Egy mint karakterláncA szubsztring halvány pozíciója egész számkéntvalueOne = "Ez a szöveg"positionofSubstring = InStrRev (valueOne, "Th")Hibakeresés.Substring pozíció nyomtatásaEnd Sub

Az eredmény az azonnali ablakba kerül:

Az InstrRev függvény visszaadta a „Th” allánc első előfordulásának pozícióját, de a számlálást a végétől kezdve, ami 9 -es, vegye figyelembe.

Szóközök eltávolítása karakterláncból

A VBA LTrim karakterlánc funkció

A VBA LTrim funkció eltávolítja az összes vezető szóközt egy szövegből vagy karakterláncból. A VBA LTrim karakterlánc függvény szintaxisa a következő:

LTrim (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan használhatja a VBA LTrim függvényt az adott karakterlánc elején lévő szóközök eltávolítására:

123456789101112 A TheLTrimStringFunction () al használataDim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "Ez a webhely címe: https://easyexcel.net/excel/"valueTwo = LTrim (valueOne)MsgBox valueOneMsgBox értékKettőEnd Sub

Az eredmények a következők:

Az LTrim Funkció eltávolította az értékközök első szóközeit, ami a második Üzenetdobozban látható.

A VBA RTrim karakterlánc funkció

A VBA RTrim funkció eltávolítja az összes záró szóközt egy szövegből vagy karakterláncból. A VBA RTrim karakterlánc függvény szintaxisa a következő:

RTrim (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan lehet a VBA RTrim függvénnyel eltávolítani az adott karakterlánc záró szóközét:

123456789101112 A TheRTrimStringFunction funkció használata ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "Ez a webhely címe: https://easyexcel.net/excel/"valueTwo = RTrim (valueOne)MsgBox valueOneMsgBox értékKettőEnd Sub

Az elért eredmények a következők:

Az RTrim funkció eltávolította az értéketwo zárótereit, ami a második üzenetmezőben látható.

A VBA vágási karakterlánc funkció

A VBA vágási funkció eltávolítja a szövegből vagy karakterláncból az összes kezdő és záró szóközt. A VBA Trim String függvény szintaxisa a következő:

Vágás (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan használhatja a VBA vágási funkciót az adott karakterlánc elején és végén lévő szóközök eltávolításához:

123456789101112 A TheTrimStringFunction funkció használata ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "Ez a webhely címe: https://easyexcel.net/excel/"valueTwo = Vágás (valueOne)MsgBox valueOneMsgBox értékKettőEnd Sub

Az eredmények a következők:

A Vágás funkció eltávolította a második és a második üzenettáblában látható értéketwo első és hátsó szóközét.

VBA tokfunkciók

A VBA LCase String függvény

A VBA LCase funkció a szövegben vagy karakterláncban lévő betűket kisbetűvé alakítja. A VBA LCase String Function függvény szintaxisa:

LCase (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan használhatja az LCase String Function funkciót az adott karakterlánc összes betűjének kisbetűvé alakításához:

1234567891011 SubA TheLCaseStringFunction () használataDim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "EZ A TERMÉK"valueTwo = LCase (valueOne)MsgBox értékKettőEnd Sub

Az eredmény:

Az LCase funkció a karakterlánc összes betűjét kisbetűvé alakította.

A VBA UCase String függvény

A VBA UCase függvény a szövegben vagy karakterláncban lévő betűket nagybetűvé alakítja. A VBA UCase String függvény szintaxisa a következő:

UCase (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan használhatja az UCase String függvényt az adott karakterlánc összes betűjének nagybetűsre konvertálására:

1234567891011 A TheUCaseStringFunction funkció használata ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "ez a termék"valueTwo = UCase (valueOne)MsgBox értékKettőEnd Sub

Az eredmény:

Az UCase függvény a karakterlánc összes betűjét nagybetűvé alakította át.

A VBA StrConv függvény

A VBA StrConv függvény a szövegben vagy karakterláncban lévő betűket nagybetűvé, kisbetűvé, megfelelő nagybetűvé vagy unicode -ba tudja alakítani a megadott konverziótípustól függően. A VBA StrConv karakterlánc függvény szintaxisa a következő:

StrConv (karakterlánc, konverzió, [LCID]), ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Konverzió - A kívánt konverzió típusa.
  • [LCID] (Választható) -Opcionális paraméter, amely a LocaleID -t határozza meg. Ha üres, a rendszer LocaleID -t használja.

A következő kód bemutatja, hogyan használhatja a StrConv karakterlánc függvényt a karakterlánc megfelelő méretűvé alakításához:

1234567891011 SubA TheStrConvStringFunction () használataDim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "ez a termék"valueTwo = StrConv (valueOne, vbProperCase)MsgBox értékKettőEnd Sub

Az eredmény:

A konverziós paraméter segítségével adja meg a végrehajtani kívánt konverzió típusát:

  • A vbLowerCase a szöveg összes betűjét kisbetűvé alakítja.
  • A vbUpperCase a szöveg összes betűjét nagybetűvé alakítja.
  • A vbProperCase a szöveg minden szavának első betűjét nagybetűvé alakítja, míg a többi betűt kisbetűként tartja meg.
  • A vbUnicode karakterláncot Unicode -ra alakít át.
  • A vbFromUnicode karakterláncot Unicode -ból a rendszer alapértelmezett kódlapjává alakít át.

A karakterláncok összehasonlítása

A VBA StrComp funkció

A VBA StrComp karakterlánc -funkció lehetővé teszi két karakterlánc összehasonlítását. A függvény visszatér:

  • 0, ha a két karakterlánc megegyezik
  • -1, ha a string1 kisebb, mint a string2
  • 1, ha a string1 nagyobb, mint a string2
  • Null érték, ha a karakterláncok bármelyike ​​Null volt

A következő kód bemutatja, hogyan használhatja a StrComp függvényt két karakterlánc összehasonlításához:

123456789101112 SubA TheStrCompStringFunction () használataDim érték: Egy mint karakterláncDim érték: Két karakterláncAz összehasonlítás halvány eredménye egészkéntvalueOne = "AutomateExcel"valueTwo = "AutomateExcel"resultofComparison = StrComp (valueOne, valueTwo)Hibakeresés. Összehasonlítás nyomtatási eredményeEnd Sub

Az eredmény:

A StrComp függvény pontos egyezést talált a két karakterlánc között, és 0 -t adott vissza.

A VBA Like operátor

A VBA Like Operator lehetővé teszi, hogy összehasonlítson egy szöveget vagy karakterláncot egy mintával, és megnézze, van -e egyezés. A Like operátort általában helyettesítő karakterekkel együtt használja. A következő kód bemutatja a Like operátor használatát:

123456789101112 SubA TheLikeOperatorInVBA () használataDim érték: Egy mint karakterláncvalueOne = "Nézzük meg a kimenetet"Ha valueOne Like "*view*" AkkorMsgBox "Van egyezés, ez a karakterlánc tartalmazza a nézet szót"MásMsgBox "Nincs találat"Vége HaEnd Sub

Az eredmény:

A Like operátorral használható minták a következőket helyettesíthetik:

  • ? amely egyetlen karakterhez illeszkedik
  • # amely egy számjegynek felel meg
  • * amely nulla vagy több karakternek felel meg

A következő kód megmutatja, hogyan szeretné használni a Like operátort és a? helyettesítő karakter, hogy megfeleljen a kód mintájának:

123456789101112 Sub usingTheLikeOperatorWithAWildcardInVBA ()Dim érték: Egy mint karakterláncvalueOne = "A"Ha valueOne Like "?? e" AkkorMsgBox "Egyezés található, egyezési mintát találtunk"MásMsgBox "Nincs találat"Vége HaEnd Sub

A kapott eredmény:

Egyéb hasznos VBA karakterlánc -funkciók

A VBA csere karakterlánc funkciója

A VBA cserefunkció egy karakterlánc karakterkészletét egy másik karakterkészlettel helyettesíti. A VBA Replace String Function függvény szintaxisa a következő:

Csere (String, Find, Replace, [Start], [Count], [Compare]) ahol:

  • Karakterlánc - Az eredeti szöveg.
  • Keresés - Az eredeti szövegben keresendő allánc.
  • Csere - Az a karakterlánc, amelyre a Find alstringet le kell cserélni.
  • Rajt (Választható)- Az a pozíció, ahol a keresést az eredeti szövegből kell kezdeni. Ha üres, akkor az 1 értéket használja, és a funkció az első karakter pozícióból indul.
  • Számol (Választható)- A cserélendő eredeti szövegben található Find allánc előfordulásának száma. Ha üres, akkor a Find alsorozat összes előfordulása lecserélődik.
  • Összehasonlítás (Választható)- Ez határozza meg az összehasonlítás típusát. Ha üres, akkor bináris összehasonlítást használunk.

    -vbBinaryCompare - Bináris összehasonlítás
    -vbTextCompare - Szöveg összehasonlítás
    -vbDatabaseCompare - Adatbázis -összehasonlítás (Ez a lehetőség csak a Microsoft Access rendszerben használatos, és az adatbázis alapján készült összehasonlítás.)

A következő kód bemutatja a karakterlánc cseréje funkció használatát:

1234567891011 Sub usingTheReplaceStringFunction ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "ProductABC"valueTwo = Csere (valueOne, "ABC", "XYZ")MsgBox értékKettőEnd Sub

Az eredmény:

A Replace Function megtalálta az ABC alláncot a ProductABC -n belül, és lecserélte az XYZ alláncra.

A VBA StrReverse függvény

A VBA StrReverse függvény megfordítja az adott szöveg vagy karakterlánc karaktereit. A VBA StrReverse String függvény szintaxisa a következő:

StrReverse (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan kell használni a VBA StrReverse függvényt a Product karakterlánc karakterének megfordításához:

1234567891011 SubA TheStrReverseStringFunction ()Dim érték: Egy mint karakterláncDim érték: Két karakterláncvalueOne = "Termék"valueTwo = StrReverse (valueOne)MsgBox értékKettőEnd Sub

Az eredmény:

A VBA Len String függvény

A VBA Len függvény a szöveges karakterlánc karaktereinek számát adja vissza. A VBA Len String függvény szintaxisa:

Len (karakterlánc), ahol:

  • Karakterlánc - Az eredeti szöveg.

A következő kód bemutatja, hogyan használhatja a Len String függvényt az AutomateExcel karakterlánc hosszának meghatározásához:

1234567891011 A TheLenFunction () használataDim érték: Egy mint karakterláncHalvány stringLength As IntegervalueOne = "AutomateExcel"stringLength = Len (valueOne)Hibakeresés. Nyomtatási karakterláncLengthEnd Sub

Az eredmény:

A Len függvény megszámolta az AutomateExcel szöveg összes karakterét, ami 13 betűből áll.

Segít a fejlesztés a helyszínen, megosztva az oldalt a barátaiddal

wave wave wave wave wave