Sisukord
Selles artiklis näitan teile, kuidas saate jagada stringi massiiviks massiivis VBA . Jagatud on üks tähtsamaid ja enim kasutatavaid funktsioone, mida me kasutame programmis VBA Sa õpid jagama stringi. VBA kõikvõimalikel viisidel.
VBA jagatud funktsioon (Kiirvaade)
=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])
Lae alla praktiline töövihik
Stringi jagamine array.xlsm'ks3 viisi, kuidas jagada string VBA-s massiiviks
Olgu meil nöör käes "Taotlesime viisat USAst, Kanadast, Austraaliast ja Prantsusmaalt." .
Näitan teile, kuidas saate jagada selle stringi massiiviks kõikvõimalikel viisidel, kasutades selleks Jagatud funktsioon aadressilt VBA .
1. Kasutage VBAs ükskõik millist eraldajat, et jagada string massiivi massiivi jaoks
Saate kasutada ükskõik millist stringi eraldajana, et jagada string massiivi massiivi sisse VBA .
See võib olla tühik (" ") , a koma (",") , a semikoolon (":") , üksikmärk, tähemärkide jada või mis tahes.
⧭ Näide 1:
Jagame stringi kasutades koma eraldaja.
Koodirida on järgmine:
Arr = Split(Text, ",")
Täielik VBA kood on:
⧭ VBA kood:
Sub Split_String() Text = "Taotlesime USA, Kanada, Austraalia ja Prantsusmaa viisat." Arr = Split(Text, ",") Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub
⧭ Väljund:
See jagab stringi massiivi, mis koosneb järgmistest elementidest {"Me taotlesime viisat USAst", "Kanadast", "Austraaliast", "Prantsusmaalt"}.
⧭ Näide 2:
Võite kasutada ka tühik (" ") eraldaja.
Koodirida on järgmine:
Arr = Split(Text, " ")
Täielik VBA kood on:
⧭ VBA kood:
Sub Split_String() Text = "Taotlesime USA, Kanada, Austraalia ja Prantsusmaa viisat." Arr = Split(Text, " ") Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub
⧭ Väljund:
See jagab stringi massiivi, mis koosneb järgmistest elementidest {"Me", "kohaldatud", "for", "the", "visa", "of", "U.S.,", "Canada,", "Australia,", "France,"}.
⧭ Asjad, mida meeles pidada:
- Vaikimisi eraldaja on tühik (" ") .
- See tähendab, et kui te ei sisesta mingit eraldajat, siis kasutab ta kosmos eraldaja.
Loe edasi: Stringi jagamine tähemärgi järgi Excelis (6 sobivat viisi)
Sarnased lugemised:
- Teksti jagamine mitmesse lahtrisse Excelis
- VBA, et saada unikaalsed väärtused veerust Exceli massiivi (3 kriteeriumi)
- Excel VBA: Kuidas filtreerida mitme kriteeriumi abil massiivi (7 võimalust)
2. Stringi jagamine suvalise arvu elementidega massiivi jaoks
Saate jagada stringi mistahes arvu elementidega massiiviks vastavalt oma soovile.
Sisestage elementide arv kui Kolmas argument Jagatud funktsioon .
⧭ Näide:
Jagame stringi esimeseks 3 esemed, millel on kosmos eraldaja.
Koodirida on järgmine:
Arr = Split(Text, " ", 3)
Ja VBA kood on:
⧭ VBA kood:
Sub Split_String() Text = "Taotlesime USA, Kanada, Austraalia ja Prantsusmaa viisat." Arr = Split(Text, " ", 3) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub
⧭ Väljund:
See jagab stringi massiivi, mis koosneb esimesest 3 elemendid, mis on eraldatud eraldusjoonega kosmos .
⧭ Asjad, mida meeles pidada:
- Vaikimisi argument on -1 .
- See tähendab, et kui te ei sisesta argumenti, jagab see stringi maksimaalselt võimalikuks.
Loe edasi: Kuidas jagada string pikkuse järgi Excelis (8 võimalust)
3. Kasutage VBA-s nii suur- kui ka väiketähelepanu tundmatut eraldajat, et jagada stringi ja massiivi.
The Jagatud funktsioon pakub teile võimalust kasutada nii suur- ja väiketähelepanu ja suur- ja väiketähelepanuta piiritleja.
Sest suur- ja väiketähelepanuta eraldaja, sisestage Neljas argument nagu 1.
Ja et suur- ja väiketähelepanuta eraldaja, sisestage Neljas argument nagu 0 .
⧭ Näide 1: Suur- ja väiketähtedega eraldaja
Vaatleme antud stringis teksti "FOR" eraldusjoonena ja 2 kui massiivi elementide koguarv.
Nüüd, et suur- ja väiketähelepanuta juhul on koodirida:
Arr = Split(Text, "FOR ", 3,1)
Ja täielik VBA kood on:
⧭ VBA kood:
Sub Split_String() Text = "Taotlesime USA, Kanada, Austraalia ja Prantsusmaa viisat." Arr = Split(Text, "FOR", 2, 1) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub
⧭ Väljund:
Kuna eraldaja on suur- ja väiketähelepanuta siin on "FOR" töötab nagu "jaoks" ja see jagab stringi kahest elemendist koosnevaks massiiviks.
⧭ Näide 2: Suur- ja väiketähenduslik eraldaja
Jällegi, et suur- ja väiketähelepanu juhul on koodirida:
Arr = Split(Text, "FOR ", 3,0)
Ja täielik VBA kood on:
⧭ VBA kood:
Sub Split_String() Text = "Taotlesime USA, Kanada, Austraalia ja Prantsusmaa viisat." Arr = Split(Text, "FOR", 2, 0) Output = "" For i = 0 To UBound(Arr) Output = Output + vbNewLine + vbNewLine + Arr(i) Next i MsgBox Output End Sub
⧭ Väljund:
Kuna eraldaja on suur- ja väiketähelepanu siin on "FOR" ei ole nii "jaoks" ja see ei jaga stringi kahest elemendist koosnevaks massiiviks.
Loe edasi: Excel VBA: dubleeringute eemaldamine massiivist (2 näidet)
⧭ Asjad, mida meeles pidada:
- Argumendi vaikeväärtus on 0 .
- See tähendab, et kui te ei pane väärtust Neljas argument, see töötab suur- ja väiketähelepanu mängu.
Kokkuvõte
Seetõttu saate nende meetodite abil kasutada Jagatud funktsioon aadressilt VBA et jagada string elemendimassiiviks. Kas teil on küsimusi? Küsige julgelt.