Hvordan dele en streng i en matrise i VBA (3 måter)

  • Dele Denne
Hugh West

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.

Hugh West er en svært erfaren Excel-trener og analytiker med over 10 års erfaring i bransjen. Han har en bachelorgrad i regnskap og finans og en mastergrad i bedriftsøkonomi. Hugh har en lidenskap for undervisning og har utviklet en unik undervisningstilnærming som er enkel å følge og forstå. Hans ekspertkunnskap om Excel har hjulpet tusenvis av studenter og fagfolk over hele verden med å forbedre sine ferdigheter og utmerke seg i karrieren. Gjennom bloggen sin deler Hugh sin kunnskap med verden, og tilbyr gratis Excel-opplæringer og nettbasert opplæring for å hjelpe enkeltpersoner og bedrifter å nå sitt fulle potensial.