VBA alamstring | Kuidas eraldada alamstringi VBA funktsioonide abil?

Exceli VBA alamstring

SubString on stringi või osa osa või stringi märki nimetatakse “SubString”. VBA LEFT, RIGHT ja MID on kolme tüüpi alamstruktuurifunktsioonid, mis on sarnased Exceli töölehe alamstringidega.

String ei ole midagi muud kui märkide ja tähemärkide seeria, mis võivad olla tähestikud, numbrid, erimärgid ja kõik need ka kombineerida.

Sageli töötame excelis, kui töötame andmetega, mis on string, et oma eesmärgi hõlbustamiseks saaksime ainult stringi osa. Me ei pruugi vajada kogu stringi kasutamist, kuid vajame kasutamiseks ainult stringi osa. Näiteks kui teil on nimi „Sachin Tendulkar”, võib vaja minna ainult nime esimest osa, st ainult „Sachin”. Seda nimetatakse Exceli VBA-s stringi alamstringiks. Nende stringidega tegelemiseks on meil Exceli kategoorias funktsiooni TEXT sisseehitatud funktsioonid.

Selles artiklis arutleme, kuidas saada alamstring VBA täisstringist.

Kuidas kasutada SubStringi funktsioone VBA-s?

Alamstringi stringist väljavõtmiseks on meil mõned sisseehitatud tekstifunktsioonid ja mõned olulised funktsioonid on Excelis LEFT, RIGHT, INSTR ja MID. Funktsioon Instr toimib ülejäänud kolme funktsiooni tugifunktsioonina.

Näeme, kuidas neid funktsioone alamstringide praktiliseks eraldamiseks kasutada. Nende mõistmiseks lugege allpool toodud näiteid.

Selle VBA SubString Exceli malli saate alla laadida siit - VBA SubString Exceli mall

Näide 1 - vasakfunktsiooni kasutamine

Kui teie täisnimi on „Sachin Tendulkar” ja teil on vaja eraldada ainult eesnimi, kuna alamstring kasutab sama koodi saamiseks järgmist koodi.

1. samm: looge makro nimi ja määrake kaks muutujat stringiks.

Kood:

 Sub SubString_Example1 () Dim Täisnimi stringina Dim Eesnimi stringina End Sub 

2. samm: määrake nüüd muutujale FullName nimi “Sachin Tendulkar” .

Kood:

 Sub SubString_Example1 () Dim Täisnimi stringina Dim Eesnimi Stringina FullName = "Sachin Tendulkar" Lõpp-alam 

3. samm: nüüd hoiab muutuja FullName väärtust „Sachin Tendulkar”. Nüüd peame täisnimest välja võtma eesnime exceli VBA alamstringi. Niisiis, määrake muutuja FirstName väärtus funktsiooni LEFT kaudu.

Kood:

 Sub SubString_Example1 () Dim Täisnimi stringina Dim Eesnimi As String TäisNimi = "Sachin Tendulkar" Eesnimi = Vasak (End Sub 

4. samm: funktsiooni VBA LEFT esimene argument on String, see on täisväärtus või täielik string. Selles näites on meie täisväärtus või string „Sachin Tendulkar”, mis on määratud muutujale FullName.

Seega esitage argumendina muutuja FullName .

Kood:

 Sub SubString_Example1 () Dim Täisnimi stringina Dim Eesnimi As String TäisNimi = "Sachin Tendulkar" Eesnimi = Vasak lõpp Sub 

5. samm: järgmine  argument on see, kui palju märke vajame tarnitud stringist, nii et sel juhul vajame eesnime " Sachin ", nii et täielikult vajame vasakult küljelt 6 tähemärki .

Kood:

 Sub SubString_Example1 () Dim Täisnimi stringina Dim Eesnimi As String TäisNimi = "Sachin Tendulkar" Eesnimi = Vasak (TäisNimi, 6) Lõpp Alam 

6. samm: nüüd kuvage tulemus VBA teatekastis.

Kood:

 Sub SubString_Example1 () Dim FullName as String Dim FirstName as String FullName = "Sachin Tendulkar" FirstName = Left (FullName, 6) MsgBox FirstName End Sub 

7. samm: käivitage makro, vaadake sõnumikasti eesnime alamstringina.

Näide # 2 - hankige SubString paremalt

Nagu see, kuidas oleme alamstringi vasakult ekstraheerinud, saame ka paremalt ekstraheerida. Võtke näiteks sama nimi.

1. samm: määratlege kaks muutujat stringina.

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi stringina End Sub 

Etapp 2: Nagu tavaliselt Määra väärtuseks muutuja FullName nagu "Sachin Tendulkar"

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi kui string Täisnimi = "Sachin Tendulkar" Lõpp-alam 

3. samm: määrake nüüd muutuja LastName jaoks väärtus RIGHT excel funktsiooni kaudu.

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi As String TäisNimi = "Sachin Tendulkar" Perenimi = Parem (End Sub 

4. samm: string on meie täielik nimi, nii et andke muutuja.

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi As String TäisNimi = "Sachin Tendulkar" Perenimi = Parem (FullName, End Sub 

5. samm: pikkus on see, kui palju märke vajame paremalt küljelt, vajame 9 tähemärki paremalt poolt.

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi As String TäisNimi = "Sachin Tendulkar" Perenimi = Parem (Täisnimi, 9) Lõpp-alam 

6. samm: kuvage see väärtus sõnumikastis .

Kood:

 Sub SubString_Example2 () Dim Täisnimi stringina Dim Perenimi As String TäisNimi = "Sachin Tendulkar" Perenimi = Parem (Täisnimi, 9) MsgBoxi Perenimi Lõpp Alam 

7. samm: käivitage makro, kus näeme sõnumikastis perekonnanime.

Näide # 3 - Instr-funktsiooni kasutamine

Ülaltoodud näidetes oli meil ainult üks nimi ja me oleme otse sisestanud, kui palju märke vajame vasakult ja paremalt. Kuid kui paljude nimede puhul ei ole eesnimi ja perekonnanime märgid ühesugused, siis see erineb nimelt. Sellistel juhtudel ei saa me tähemärkide arvu otse edastada, et saaksime kasutada funktsiooni Instr.

Funktsioon Instr tagastab stringis sisalduva tähemärgi positsiooni. Näite saamiseks vaadake allolevat koodi.

Kood:

 Sub SubString_Example3 () Dim Dim As String Position = InStr (1, "Sachin", "a") MsgBox Position End Sub 

InStr (1, “Sachin”, “a”) tuvastab see a- tähe positsiooni stringi “Sachin” esimese esinemisena . Sel juhul on täht “a” teisel kohal. Nii saame tulemuseks 2 sõnumikasti.

Niimoodi saame kasutada funktsiooni Instr, et leida tühiku märk ees- ja perekonnanime vahel.

Näiteks vaadake allolevat nime, mis mul on Exceli lehel.

Funktsioonidega VASAK, PAREM ja Juhend saame alamstringid välja tõmmata. Allpool on kood eesnime väljavõtmiseks.

Kood:

 Alamnimi () Dim K As Long Dim LR As Long LR = lahtrid (read. Loend, 1). End (xIUp). Rida K = 2 jaoks LR rakkudele (K, 2). Väärtus = vasakule (lahtrid (K, 1) .Väärtus, InStr (1, lahtrid (K, 1) .Väärtus, "") - 1) Järgmine K lõpu alamosa 

Käivitage makro ja vaadake sõnumiväljas eesnime alamstringina.

Perekonnanime alamstringina eraldamiseks kasutage koodi allpool.

Kood:

 Alamnime nimi () Dim K As Long Dim LR As Long LR = lahtrid (read. Arv, 1). End (xIUp). Rida K = 2 jaoks LR rakkudele (K, 3). Väärtus = paremale (lahtrid (K, 1) .Väärtus, Len (Lahtrid (K, 1)) - InStr (1, Lahtrid (K, 1) .Väärtus, "")) Järgmine K Lõpp Alam 

Käivitage makro ja näeme sõnumikastis perekonnanime.

Olen töölehele määranud makro nupu, laadinud töövihiku alla ja kasutanud neid.


$config[zx-auto] not found$config[zx-overlay] not found