Hva er VBA delt funksjon i Excel?
Delt funksjon i VBA er en veldig nyttig strengfunksjon som brukes til å dele strenger i flere strenger basert på en avgrenser gitt til funksjonen og en sammenligningsmetode. Det er også andre strengfunksjoner som konverterer en streng til understreng, men delt funksjon kan dele en streng i mer enn ett underlag.
I det vanlige regnearket brukes VENSTRE funksjon, MID-funksjoner og RIGHT in excel som tekstfunksjoner i excel for å trekke ut delen av setningen. For eksempel er utvinning av fornavn, mellomnavn og etternavn de vanlige scenariene vi har sett. Men i VBA har vi den mer allsidige funksjonen kalt SPLIT, som vil gjøre en lignende jobb for deg. SPLIT er en innebygd funksjon i Excel VBA som kan dele den medfølgende setningen basert på avgrenseren. For eksempel, hvis du vil dele e-postadressen til forskjellige deler, er det vanlige elementet i e-postadressen "@" i alle e-post-ID-ene, så "@" blir avgrenser her.

VBA delt strengfunksjon
Som alle andre funksjoner har også split sin egen syntaks. Nedenfor er parameterne for excel VBA Split strengfunksjon.

- Verdi eller uttrykk: Dette er ingenting annet enn den faktiske verdien vi prøver å dele. Hvis du for eksempel vil dele fornavn og etternavn, er det fulle navnet verdien her.
- (Avgrenser): Hva er det vanlige elementet for å dele verdien eller uttrykket? I e-post er Ids “@” det vanlige elementet, i adresse komma (,) er det vanlige elementet. Hvis du ignorerer dette, anser den mellomromstegnet som standardverdien.
- (Begrens): Hvor mange understrenger du vil ha fra verdien eller uttrykket du har oppgitt. For eksempel, hvis verdien er “Mitt navn er Excel”, hvis du oppgir 3 som grense, vil det vise resultatet i tre linjer som “Mitt”, “navn”, “er Excel”.
- (Sammenlign): Siden vi ikke bruker sammenligningsargument, hopp over dette valgfrie argumentet.
I de neste avsnittene av artikkelen vil vi se hvordan du bruker SPLIT-funksjonen i excel VBA praktisk talt.
Eksempler på VBA delt strengfunksjon
Nedenfor er de praktiske eksemplene på Split-funksjonen i Excel VBA.
Eksempel # 1 - Del setningen
Split returnerer resultatet i matrisen som starter fra 0. Alle matriser er starter fra 0 og ikke fra 1.
Anta at du har ordet “Mitt navn er Excel VBA” i celle A1.

Nå vil du dele denne setningen i stykker som "Mitt", "Navn", "er", "Excel", "VBA". Ved hjelp av Excel VBA SPLIT strengfunksjon kan vi returnere dette resultatet.
Trinn 1: Start makroen med navnet.

Kode:
Sub Split_Example1 () Slutt Sub Trinn 2: Erklær tre variabler.

Kode:
Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () Som String End Sub
Trinn 3: For den definerte variabelen tildeler Min tekst ordet “Mitt navn er Excel VBA” .

Kode:
Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Mitt navn er Excel VBA" End Sub
Trinn 4: Nå gjelder Min resultatvariabel VBA delt strengfunksjon.

Kode:
Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Mitt navn er Excel VBA" MyResult = Split (End Sub
Trinn 5: Uttrykk er vår tekstverdi. Siden vi allerede har tildelt vår tekstverdi til variabelen Min tekst, skriv inn dette argumentet her.

Kode:
Sub Split_Example1 () Dim MyText As String Dim i As Integer Dim MyResult () As String MyText = "Mitt navn er Excel VBA" MyResult = Split (MyText) End Sub
Merk: Som nå ignorere alle de andre parametrene.
Trinn 6: Så nå har Mitt resultat dette splittede resultatet. Som jeg fortalte tidligere i innlegget, lagrer delt funksjon resultatet som en matrise så her
- Mitt resultat (0) = “Mitt”
- Mitt resultat (1) = “Navn”
- Mitt resultat (2) = “er”
- Mitt resultat (3) = “Excel”
- Mitt resultat (4) = “VBA”
Selv om denne koden ikke har noen innvirkning på å starte SPLIT-funksjonen, kan vi bruke denne koden.
Eksempel 2 - VBA SPLIT-streng med UBOUND-funksjon
For å lagre resultatet av SPLIT-funksjonen, kan vi bruke vba UBOUND-funksjon sammen med SPLIT-funksjonen.
UBOUND returnerer maksimal lengde på matrisen. I eksemplet ovenfor var den maksimale lengden på matrisen 5.
Ta det samme ordet “Mitt navn er Excel VBA”. La oss dele dette ordet og lagre fra celle A1 og utover.
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
Dette har vært en guide til VBA Split-funksjon. Her lærte vi hvordan vi bruker VBA Split String Function i Excel sammen med noen praktiske eksempler og en nedlastbar Excel-mal. Nedenfor er noen nyttige excel-artikler relatert til VBA -
- Hvordan aktivere RegEx i VBA?
- StrComp-funksjon i Excel VBA
- VBA arbeidsbokobjekt
- VBA søvnfunksjon i Excel
- Lag en pivottabell i Excel VBA
- Gjør til løkken i VBA
- Velg Cell i VBA
- Regnearkfunksjon i VBA
- Abonnement utenfor rekkevidde