VBA-understreng - Hvordan udtrækker man substring ved hjælp af VBA-funktioner?

Indholdsfortegnelse

Excel VBA-understreng

SubString er en del af strengen eller delen, eller karakteren af ​​strengen kaldes "SubString". Der er tre typer understringsfunktioner i VBA VENSTRE, HØJRE og MIDD de ligner regnearkstrengene i Excel.

En streng er intet andet end en række tegn, og tegn kan være alfabeter, tal, specialtegn og også kombinere alle disse.

Ofte i Excel, når vi arbejder med data, som er strengen, skal vi kun få den del af strengen, der letter vores formål. Vi har muligvis ikke brug for den fulde streng, der skal bruges, men vi har kun brug for den del af strengen, der skal bruges til vores brug. Hvis du f.eks. Har navnet "Sachin Tendulkar", behøver du muligvis kun den første del af navnet, dvs. kun "Sachin." Dette kaldes som SubString af strengen i Excel VBA. For at håndtere disse strenge har vi indbyggede funktioner under TEXT-funktionen i excel-kategori.

I denne artikel vil vi diskutere, hvordan man får substring fra den fulde streng i VBA.

Hvordan bruges SubString-funktioner i VBA?

For at udtrække understrenget fra strengen har vi nogle af de indbyggede tekstfunktioner, og nogle af de vigtige funktioner er VENSTRE, HØJRE, INSTR og MID i excel. Funktionen Instr fungerer som en understøttende funktion for de andre tre funktioner.

Vi vil se, hvordan man bruger disse funktioner til praktisk at udtrække understrengene. Læs nedenstående eksempler for at forstå dem.

Eksempel # 1 - Brug af venstre funktion

Hvis du har det fulde navn som “Sachin Tendulkar”, og du kun behøver fornavnet, der skal ekstraheres som substring, skal du bruge følgende kode for at få det samme.

Trin 1: Opret et makronavn og definer to variabler som streng.

Kode:

Sub SubString_Example1 () Dim Fullnavn Som streng Dim FirstName Som streng End Sub

Trin 2: Tildel nu navnet “Sachin Tendulkar” til variablen FullName .

Kode:

Sub SubString_Example1 () Dim FullName Som String Dim FirstName Som String FullName = "Sachin Tendulkar" End Sub

Trin 3: Nu indeholder variablen FullName værdien af ​​"Sachin Tendulkar." Nu er vi nødt til at udtrække Excel VBA-substring af fornavnet fra det fulde navn. Så tildel værdien for variablen FirstName via LEFT-funktionen.

Kode:

Sub SubString_Example1 () Dim FullName Som String Dim FirstName Som String FullName = "Sachin Tendulkar" FirstName = Left (End Sub

Trin 4: VBA VENSTRE-funktion første argument er String; det er hvad der er den fulde værdi eller den fulde streng. I dette eksempel er vores fulde værdi eller streng "Sachin Tendulkar", som er tildelt variablen FullName.

lever variabelen FullName som argumentet.

Kode:

Sub SubString_Example1 () Dim FullName Som String Dim FirstName Som String FullName = "Sachin Tendulkar" FirstName = Left End Sub

Trin 5: Det næste argument er, hvor mange tegn vi har brug for fra den streng, vi har leveret, så i dette tilfælde har vi brug fornavnet " Sachin " så totalt, vi har brug for 6 tegn fra venstre side.

Kode:

Sub SubString_Example1 () Dim FullName Som String Dim FirstName Som String FullName = "Sachin Tendulkar" FirstName = Left (FullName, 6) End Sub

Trin 6: Vis nu resultatet i en meddelelsesboks i VBA.

Kode:

Sub SubString_Example1 () Dim FullName Som String Dim FirstName Som String FullName = "Sachin Tendulkar" FirstName = Left (FullName, 6) MsgBox FirstName End Sub

Trin 7: Kør makroen, se fornavnet som en understreng i meddelelsesfeltet.

Eksempel 2 - Få SubString fra højre

Ligesom hvordan vi har trukket substratet ud fra venstre på samme måde, kan vi også udtrække fra højre. Tag det samme navn som et eksempel.

Trin 1: Definer to variabler som streng.

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String End Sub

Trin 2: Tildel som sædvanlig værdien til variablen FullName som "Sachin Tendulkar."

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String FullName = "Sachin Tendulkar" End Sub

Trin 3: Nu tildeles værdien gennem variablen Lastnavn gennem RIGHT excel-funktionen.

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String FullName = "Sachin Tendulkar" LastName = Right (End Sub

Trin 4: String er vores fulde navn,angiv variablen.

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String FullName = "Sachin Tendulkar" LastName = Right (FullName, End Sub

Trin 5: Længde er hvor mange tegn, vi har brug for fra højre side. Vi har brug for 9 tegn på højre side.

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String FullName = "Sachin Tendulkar" LastName = Right (FullName, 9) End Sub

Trin 6: Vis denne værdi i meddelelsesfeltet .

Kode:

Sub SubString_Example2 () Dim FullName Som String Dim LastName Som String FullName = "Sachin Tendulkar" LastName = Right (FullName, 9) MsgBox LastName End Sub

Trin 7: Kør makroen. Vi ser efternavnet i meddelelsesfeltet.

Eksempel # 3 - Brug af instrumentfunktion

I ovenstående eksempler havde vi kun ét navn, og vi har direkte angivet, hvor mange tegn vi har brug for fra venstre og højre. Men i tilfælde af mange navne er for- og efternavnetegn ikke det samme, det vil variere fra navn til navn. I disse tilfælde kan vi ikke angive antallet af tegn direkte, så vi kan bruge funktionen Instr.

Instr- funktionen returnerer den medfølgende tegnposition i strengen. Se f.eks. Nedenstående kode.

Kode:

Sub SubString_Example3 () Dim position as string position = InStr (1, "Sachin", "a") MsgBox Position End Sub

InStr (1, "Sachin", "a"), vil dette identificere placeringen af ​​bogstavet "a" som første optræden i strengen "Sachin." I dette tilfælde er "a" i anden position. Så vi får 2 som et resultat i meddelelsesboksen.

På denne måde kan vi bruge Instr- funktionen til at finde mellemrumstegnet mellem fornavn og efternavn.

Se for eksempel på nedenstående navn, jeg har i excel-arket.

Ved hjælp af VENSTRE, HØJRE og Instr- funktion kan vi udtrække understrengene. Nedenfor er koden til udpakning af fornavnet.

Kode:

Under fornavn () Dim K så lang Dim LR så lang LR = celler (rækker. Antal, 1). Slut (xIUp). Række for K = 2 til LR celler (K, 2). Værdi = venstre (celler (K, 1) .Value, InStr (1, Cells (K, 1) .Value, "") - 1) Next K End Sub

Kør makroen og se fornavnet som en understreng i meddelelsesfeltet.

Brug nedenstående kode til at udtrække efternavnet som en understreng.

Kode:

Undernavn () Dim K så lang Dim LR så lang LR = celler (rækker. Antal, 1). Slut (xIUp). Række for K = 2 til LR-celler (K, 3). Værdi = højre (celler (K, 1). Værdi, Len (celler (K, 1)) - InStr (1, celler (K, 1). Værdi, "")) Næste K slut sub

Kør makroen, så ser vi efternavnet i meddelelsesfeltet.

Jeg har tildelt makroknappen til regnearket, downloadet projektmappen og brug dem.

Interessante artikler...