VBA jagatud funktsioon (näited) Kuidas Exceli VBA-s stringe jagada?

Lang L: none (table-of-contents)

Mis on Exceli VBA jagatud funktsioon?

Split-funktsioon VBA-s on väga kasulik stringifunktsioon, mida kasutatakse stringide jagamiseks mitmeks alamstringiks funktsioonile pakutava eraldaja ja võrdlusmeetodi põhjal. On ka teisi stringifunktsioone, mis teisendavad stringi alamstringiks, kuid split-funktsioon võib jagada string mitmesse alamstringi.

Tavalises töölehe LEFT funktsioonis kasutatakse lauseosa väljavõtmiseks Exceli tekstifunktsioonidena MID-funktsioone ja RIGHT excelis. Näiteks eesnime, teise nime ja perekonnanime väljavõtmine on tavalised stsenaariumid, mida oleme näinud. Kuid VBA-s on meil mitmekülgsem funktsioon nimega SPLIT, mis teeb teie jaoks sarnast tööd. SPLIT on Exceli VBA sisseehitatud funktsioon, mis saab tarnitud lauset eraldaja põhjal jagada. Näiteks kui soovite jagada e-posti aadressi erinevateks osadeks, on e-posti aadressi ühine element kõigis e-posti aadressides „@”, nii et siin saab „@” eraldajaks.

VBA jagatud stringi funktsioon

Nagu kõigil teistel funktsioonidel, on ka splitil oma süntaks. Allpool on Exceli VBA Split stringi funktsiooni parameetrid.

  • Väärtus või väljend: see pole midagi muud kui tegelik väärtus, mida proovime jagada. Näiteks kui soovite jagada eesnime ja perekonnanime, on siin väärtuseks täisnimi.
  • (Eraldaja): mis on väärtuse või avaldise jagamise ühine element? E-kirjas on Id ühine element „@”, aadressi koma (,) ühine element. Kui te seda ignoreerite, peab see vaikeväärtuseks tühikut.
  • (Limit): mitu alamstringi soovite sisestatud väärtusest või avaldisest. Näiteks kui väärtuseks on „Minu nimi on Excel”, siis kui limiidiks on 3, kuvatakse tulemus kolmes reas, näiteks „Minu”, „Nimi”, „on Excel”.
  • (Võrdle): kuna me ei kasuta argumenti Võrdle, jätke see valikuline argument vahele.

Artikli järgmistes jaotistes näeme, kuidas funktsiooni SPLIT Exceli VBA-s praktiliselt kasutada.

VBA split stringi funktsiooni näited

Allpool on toodud Exceli VBA jagatud funktsiooni praktilised näited.

Näide # 1 - jagage lause

Split tagastab massiivi tulemuse, mis algab 0-st. Kõik massiivid algavad 0-st, mitte 1-st.

Oletame, et lahtris A1 on sõna „Minu nimi on Excel VBA”.

Nüüd soovite selle lause jagada tükkideks nagu “Minu”, “Nimi”, “on”, “Excel”, “VBA”. Exceli VBA SPLIT String funktsiooni abil saame selle tulemuse tagastada.

1. samm: käivitage makro nimega.

Kood:

Alamjaotus_näide1 () Lõpeta alam 2. samm: deklareerige kolm muutujat.

Kood:

Sub Split_Eexample1 () Dim MyText stringina Dim i Integer Dim MyResult () stringina End Sub

3. samm: määratletud muutuja jaoks määrab Minu tekst sõna „Minu nimi on Exceli VBA” .

Kood:

Sub Split_Example1 () Dim MyText stringina Dim i täisarvuna Dim MyResult () As String MyText = "Minu nimi on Exceli VBA" Lõpp-alam

4. samm: rakendage nüüd muutuja Minu tulemus tulemuseks VBA split string -funktsioon.

Kood:

Sub Split_Example1 () Dim MyText stringina Dim i täisarvuna Dim MyResult () As String MyText = "Minu nimi on Exceli VBA" MyResult = Split (End Sub

5. samm: väljend on meie tekstiväärtus. Kuna oleme juba määranud oma teksti väärtuse muutujale Minu tekst, sisestage see argument siia.

Kood:

Sub Split_Eexample1 () Dim MyText stringina Dim i Integer Dim MyResult () As String MyText = "Minu nimi on Exceli VBA" MyResult = Split (MyText) Lõpp-alam

Märkus. Nagu praegu, eirake kõiki muid parameetreid.

6. samm: nii et nüüd on minu tulemusel see jagatud tulemus. Nagu ma varem postituses ütlesin, salvestab split-funktsioon tulemuse massiivina nii siin

  • Minu tulemus (0) = „Minu”
  • Minu tulemus (1) = „Nimi”
  • Minu tulemus (2) = "on"
  • Minu tulemus (3) = “Excel”
  • Minu tulemus (4) = “VBA”

Kuigi see kood ei avalda funktsiooni SPLIT käivitamiseks mingit mõju, saame seda koodi kasutada.

Näide # 2 - string VBA SPLIT funktsiooniga UBOUND

Funktsiooni SPLIT tulemuse salvestamiseks võime kasutada funktsiooni vba UBOUND koos funktsiooniga SPLIT.

UBOUND tagastab massiivi maksimaalse pikkuse. Ülaltoodud näites oli massiivi maksimaalne pikkus 5.

Võtke sama sõna "Minu nimi on Exceli VBA". Jagame selle sõna ja salvestame lahtrist A1 edasi.

Step 1: Let’s continue from where we left off in the previous example.

Step 2: Now apply FOR NEXT LOOP in VBA from 0 to maximum length of the array i.e. UBOUND.

The reason we started from zero because SPLIT will store the result from zero, not from 1.

Step 3: Now apply VBA CELLS property and store the result.

Code:

Cells(i + 1, 1).Value = MyResult(i)

Step 4: Run this code, we would have split values.

Complete Code:

Sub Split_Example1() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) For i = 0 To UBound(MyResult) Cells(i + 1, 1).Value = MyResult(i) Next i End Sub

Return Word Count

We can also show the total number of words in the supplied value. Use the below code to show the total number of word counts. Code:

Sub Split_Example2() Dim MyText As String Dim i As Integer Dim MyResult() As String MyText = "My Name is Excel VBA" MyResult = Split(MyText) i = UBound(MyResult()) + 1 MsgBox "Total Words Count is " & i End Sub

Copy and paste the above VBA code and run it, the message box will return the result.

Things to Remember

  • If the delimiter is not supplied SPLIT automatically thinks the delimiter as space.
  • If you want to split except space then you need to specify the delimiter in double-quotes.
  • SPLIT stores the result as array results.
  • UBOUND function returns the maximum length of the array.

Recommended Articles

See on olnud VBA Split Functioni juhend. Siit õppisime, kuidas Excelis kasutada VBA Split String Function'i, koos mõne praktilise näite ja allalaaditava Exceli malliga. Allpool on mõned kasulikud VBA-ga seotud Exceli artiklid -

  • Kuidas lubada RegEx VBA-s?
  • StrCompi funktsioon Exceli VBA-s
  • VBA töövihiku objekt
  • VBA unefunktsioon Excelis
  • Looge Exceli VBA-s pöördtabel
  • Tehke kuni loopini VBA-s
  • Valige VBA lahter
  • Töölehe funktsioon VBA-s
  • Alaindeks on vahemikust väljas

Huvitavad Artiklid...