Innholdsfortegnelse
I denne artikkelen skal jeg vise deg hvordan du kan dele en streng i en matrise i VBA . Split er en av de viktigste og mest brukte funksjonene som vi bruker i VBA . Du vil lære å dele en streng i VBA på alle mulige måter.
VBA Split-funksjon (Quick View)
=Split(Expression As String, [Delimiter], [Limit As Long=1], [CompareAsVbCompareMethod=vbBinaryCompare])
Last ned øvelsesarbeidsbok
Splitt en streng i en Array.xlsm
3 måter å splitte en streng i en rekke i VBA
La oss ha en streng i hånden "Vi søkte om visum til USA, Canada, Australia og Frankrike .” .
Jeg skal vise deg hvordan du kan dele denne strengen inn i en matrise på alle mulige måter ved å bruke Split-funksjonen til VBA .
1. Bruk en hvilken som helst skilletegn for å dele en streng i en matrise i VBA
Du kan bruke hvilken som helst streng som skilletegn for å dele en streng i en matrise i VBA .
Det kan være et mellomrom (“ “) , et komma (“,”) , et semikolon (“:”) , et enkelt tegn, et streng med tegn eller hva som helst.
⧭ Eksempel 1:
La oss dele strengen ved å bruke komma som skilletegn.
Kodelinjen vil være:
Arr = Split(Text, ",")
Den komplette VBA-koden vil være:
⧭ VBA-kode:
2418
⧭ Utdata:
Den vil dele strengen inn i en array bestående av {“Vi søkte om visum til U.S.A.”, “Canada”, “Australia”, “Frankrike”}.
⧭ Eksempel 2:
Du kan også bruke et mellomrom (“ ”) som skilletegn.
Kodelinjen vil være:
Arr = Split(Text, " ")
Den komplette VBA-koden vil være:
⧭ VBA-kode:
1218
⧭ Utdata:
Den vil dele strengen i en matrise bestående av {“Vi”, “søkt”, “for”, «den», «visum», «av», «U.S.», «Canada», «Australia», «Frankrike»}.
⧭ Ting å huske:
- Standardskilletegnet er et mellomrom (“ ”) .
- Det vil si, hvis du ikke setter inn noe skilletegn, vil det bruke et mellomrom som skilletegn.
Les mer: Del streng etter tegn i Excel (6 passende måter)
Lignende lesninger:
- Del tekst i flere celler i Excel
- VBA for å få unike verdier fra kolonne til matrise i Excel (3 kriterier)
- Excel VBA: Hvordan filtrere med flere Kriterier i matrise (7 måter)
2. Del en streng i en matrise med et hvilket som helst antall elementer
Du kan dele en streng i en matrise med et hvilket som helst antall elementer etter eget ønske.
Sett inn antall elementer som tredje -argumentet til Split-funksjonen .
⧭ Eksempel:
La oss dele opp streng inn i de første 3 elementene med mellomrom som skilletegn.
Kodelinjen vilvære:
Arr = Split(Text, " ", 3)
Og VBA-koden vil være:
⧭ VBA-kode:
6794
⧭ Utdata:
Den vil dele strengen i en array som består av de første 3 elementene atskilt med skilletegnet mellomrom .
⧭ Ting å huske:
- Standardargumentet er -1 .
- Det betyr at hvis du ikke legger inn argumentet, vil det splittes strengen i maksimalt antall ganger mulig.
Les mer: Hvordan dele opp streng etter lengde i Excel (8 måter)
3. Bruk både store og små bokstaver og ufølsom skilletegn for å dele en streng i en matrise i VBA
Delfunksjonen tilbyr deg å bruke både en store og små bokstaver og uavhengig av små og store bokstaver skilletegn.
For et skilletegn som ikke skiller mellom store og små bokstaver , sett inn fjerde argument som 1.
Og for en uavhengig av små og store bokstaver skilletegn, sett inn 4. -argumentet som 0 .
⧭ Eksempel 1: Skilletegn uten store og små bokstaver
I den gitte strengen, la oss se på teksten “FOR” som skilletegnet og 2 som det totale antallet elementer i matrisen.
Nå, for en uavhengig av store og små bokstaver store og små bokstaver, vil kodelinjen være:
Arr = Split(Text, "FOR ", 3,1)
Og den komplette VBA-koden vil være:
⧭ VBA-kode:
1801
⧭ Utdata:
Siden skilletegnet er uavhengig av store og små bokstaver her, er “FOR « vil fungere som “for” og den vil dele strengen i en matrise med to elementer.
⧭ Eksempel 2: Skilletegn for store og små bokstaver
Igjen, for store og små bokstaver store og små bokstaver, vil kodelinjen være:
Arr = Split(Text, "FOR ", 3,0)
Og den komplette VBA-koden vil være:
⧭ VBA-kode:
9559
⧭ Utdata:
Siden skilletegnet er store og store her, er “ FOR” vil ikke være “for” og den deler ikke strengen i en rekke med to elementer.
Les mer: Excel VBA: Fjern duplikater fra en matrise (2 eksempler)
⧭ Ting å huske:
- Standardverdien til argumentet er 0 .
- Det vil si at hvis du ikke angir verdien til 4. -argumentet, det vil fungere for et store og små bokstaver samsvar.
Konklusjon
Derfor, ved å bruke disse metodene, kan du bruke Split funksjon til VBA for å dele en streng i en rekke elementer. Har du noen spørsmål? Spør oss gjerne.