VBA-alijono | Kuinka purkaa alijonot VBA-toimintojen avulla?

Excel VBA -alijono

SubString on osa merkkijonoa tai merkkijonoa tai merkkijonon merkkiä kutsutaan "SubStringiksi". VBA LEFT, RIGHT ja MID: ssä on kolmea alakoodausfunktiota, jotka ovat samanlaisia ​​kuin Excelin laskentataulukon alaotsikot.

Merkkijono ei ole muuta kuin sarja merkkejä ja merkkejä, jotka voivat olla aakkosia, numeroita, erikoismerkkejä ja yhdistää kaikki nämä.

Usein Excelissä ajettaessa tietoja, jotka ovat merkkijono, meidän on saatava vain merkkijono osa tarkoituksemme helpottamiseksi. Emme ehkä tarvitse koko merkkijonoa käytettäväksi, mutta tarvitsemme vain osan merkkijonosta käyttöä varten. Esimerkiksi, jos sinulla on nimi “Sachin Tendulkar”, saatat tarvita vain nimen ensimmäisen osan eli vain “Sachin”. Tätä kutsutaan merkkijonon SubStringiksi Excel VBA: ssa. Näiden merkkijonojen käsittelemiseksi meillä on sisäänrakennetut toiminnot TEXT-toiminnossa excel-luokassa.

Tässä artikkelissa keskustelemme siitä, miten saat alimerkkijonon koko merkkijonosta VBA: ssa.

Kuinka käyttää SubString-toimintoja VBA: ssa?

Alimerkkijonon purkamiseksi merkkijonosta meillä on joitain sisäänrakennettuja tekstitoimintoja, ja joitain tärkeitä toimintoja ovat VASEN, OIKEA, INSTR ja MID Excelissä. Toiminto Instr toimii tukitoimintona kolmelle muulle toiminnolle.

Näemme, kuinka näitä toimintoja käytetään purkamaan aliosat käytännössä. Lue alla olevat esimerkit ymmärtääksesi ne.

Voit ladata tämän VBA SubString Excel -mallin täältä - VBA SubString Excel -malli

Esimerkki # 1 - Vasemman funktion käyttäminen

Jos sinulla on koko nimi nimellä “Sachin Tendulkar” ja tarvitset vain etunimen purettavaksi, koska alimerkkijono saa seuraavan koodin saadaksesi saman.

Vaihe 1: Luo makron nimi ja määritä kaksi muuttujaa merkkijonoksi.

Koodi:

 Sub SubString_Example1 () Dim FullName as String Dim FirstName as String End Sub 

Vaihe 2: Määritä nyt muuttujalle FullName nimi “Sachin Tendulkar” .

Koodi:

 Sub SubString_Example1 () Dim FullName as String Dim FirstName as String FullName = "Sachin Tendulkar" End Sub 

Vaihe 3: Muuttujalla FullName on nyt Sachin Tendulkar -arvo. Nyt meidän on purettava etunimen Excel VBA -alimerkkijono koko nimestä. Määritä siis muuttujan Etunimi arvo VASEN-funktion kautta.

Koodi:

 Ala SubString_Example1 () Himmennä koko nimi nimellä merkkijono Dim FirstName as merkkijono FullName = "Sachin Tendulkar" Etunimi = Vasen (End Sub 

Vaihe 4: VBA LEFT -funktion ensimmäinen argumentti on merkkijono, eli mikä on koko arvo tai koko merkkijono. Tässä esimerkissä koko arvo tai merkkijono on “Sachin Tendulkar”, joka on määritetty muuttujalle FullName.

Syötä siis argumentiksi muuttuja FullName .

Koodi:

 Sub SubString_Example1 () Himmennä koko nimi nimellä merkkijono Dim FirstName as merkkijono FullName = "Sachin Tendulkar" Etunimi = Vasen pää 

Vaihe 5: Seuraava  argumentti on, kuinka monta merkkiä tarvitsemme toimittamastamme merkkijonosta, joten tässä tapauksessa tarvitsemme etunimen " Sachin ", joten kokonaan tarvitsemme 6 merkkiä vasemmalta puolelta.

Koodi:

 Ala SubString_Example1 () Himmennä koko nimi nimellä merkkijono Dim FirstName as merkkijono FullName = "Sachin Tendulkar" Etunimi = Vasen (FullName, 6) End Sub 

Vaihe 6: Näytä tulos nyt VBA: n viestiruudussa.

Koodi:

 Ala SubString_Example1 () Himmennä koko nimi nimellä merkkijono Dim FirstName as merkkijono FullName = "Sachin Tendulkar" Etunimi = Vasen (FullName, 6) MsgBox FirstName End Sub 

Vaihe 7: Suorita makro, katso etunimi alirivinä viestiruudussa.

Esimerkki # 2 - Hanki SubString oikealta

Kuten siitä, miten olemme purkaneet alikoodin vasemmalta, voimme myös purkaa oikealta. Otetaan esimerkkinä sama nimi.

Vaihe 1: Määritä kaksi muuttujaa merkkijonoksi.

Koodi:

 Sub SubString_Example2 () Dim FullName as String Dim LastName as String End Sub 

Vaihe 2: Kuten tavallista sijoittaa arvon muuttujaan FullName kuin ”Sachin Tendulkar”

Koodi:

 Sub SubString_Example2 () Himmennä koko nimi nimellä merkkijono Dim LastName nimellä merkkijono FullName = "Sachin Tendulkar" Loppu Sub 

Vaihe 3: Määritä muuttujan LastName arvo nyt OIKEA excel -toiminnon avulla.

Koodi:

 Ala SubString_Example2 () Himmennä koko nimi nimellä merkkijono Dim sukunimi nimellä merkkijono FullName = "Sachin Tendulkar" Sukunimi = Oikea (End Sub 

Vaihe 4: Merkkijono on FullName, joten toimita muuttuja.

Koodi:

 Sub SubString_Example2 () Himmennä koko nimi nimellä merkkijono Dim LastName nimellä merkkijono FullName = "Sachin Tendulkar" Sukunimi = Oikea (FullName, End Sub 

Vaihe 5: Pituus on kuinka monta merkkiä tarvitsemme oikealta puolelta, tarvitsemme 9 merkkiä oikealta puolelta.

Koodi:

 Sub SubString_Example2 () Himmennä koko nimi nimellä merkkijono Dim LastName nimellä merkkijono FullName = "Sachin Tendulkar" Sukunimi = Oikea (FullName, 9) Loppu 

Vaihe 6: Näytä tämä arvo viestiruudussa .

Koodi:

 Ala SubString_Example2 () Himmennä koko nimi nimellä merkkijono Dim sukunimi nimellä merkkijono FullName = "Sachin Tendulkar" Sukunimi = Oikea (FullName, 9) MsgBox-sukunimi End Sub 

Vaihe 7: Suorita makro, josta näet sukunimen viestiruudussa.

Esimerkki # 3 - Instr-toiminnon käyttäminen

Yllä olevissa esimerkeissä meillä oli vain yksi nimi ja olemme toimittaneet suoraan kuinka monta merkkiä tarvitsemme vasemmalta ja oikealta. Mutta jos monissa nimissä etunimi ja sukunimen merkit eivät ole samat, se eroaa nimestä toiseen. Tällöin emme voi toimittaa merkkien määrää suoraan, jotta voimme käyttää toimintoa Instr.

Instr- toiminto palauttaa syötetyn merkkijonon merkkijonossa. Katso esimerkki alla olevasta koodista.

Koodi:

 Sub SubString_Example3 () Dim-sijainti merkkijonona = InStr (1, "Sachin", "a") MsgBox-sijainti End Sub 

InStr (1, “Sachin”, “a”) tunnistaa a- kirjaimen sijainnin ensimmäisenä merkkijonona “Sachin”. Tässä kirjain ”a” on toisessa asennossa. Joten saamme 2 tuloksena viestiruutuun.

Tällä tavoin voimme käyttää Instr- toimintoa etsimään välilyönnin etunimen ja sukunimen välillä.

Katso esimerkki alla olevasta nimestä, joka minulla on Excel-taulukossa.

Käyttämällä vasen, oikea, ja instr toimivat voimme poimia osajonot. Alla on koodi etunimen purkamiseksi.

Koodi:

 Ala-etunimi () Dim K As Long Dim LR As Long LR = Solut (Rivit.Määrä, 1) .End (xIUp) .Rivi K = 2: lle LR-soluille (K, 2). Arvo = Vasen (Solut (K, 1) .arvo, InStr (1, solut (K, 1) .arvo, "") - 1) Seuraava K-loppuosa 

Suorita makro ja näe etunimi alirivinä viestiruudussa.

Pura sukunimi alimerkkinä alla olevan koodin avulla.

Koodi:

 Ala Sukunimi () Dim K As Long Dim LR As Long LR = Solut (Rivit.Määrä, 1) .End (xIUp) .Rivi K = 2: lle LR-soluille (K, 3). Arvo = Oikea (Solut (K, 1) .Arvo, Len (Solut (K, 1)) - InStr (1, Solut (K, 1) .Arvo, "")) Seuraava K End Sub 

Suorita makro ja näemme sukunimen viestiruudussa.

Olen määrittänyt makropainikkeen laskentataulukolle, lataan työkirjan ja käytän niitä.


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