VBA MID-funksjon - Hvordan bruker jeg Excel VBA MID-funksjon?

Innholdsfortegnelse

Excel VBA MID-funksjon

VBA MID- funksjonen trekker ut verdiene fra midten av setningen eller ordet. MID-funksjonen er kategorisert under String and Text-funksjonen, og det er en regnearkfunksjon som betyr å bruke denne funksjonen i VBA, vi trenger å bruke metoden application.worksheet.

Det er situasjoner der vi ønsker å trekke ut fornavn, etternavn eller mellomnavn. I slike situasjoner er TEXT-kategoriformler nyttige for å oppfylle våre krav. Bruken av denne funksjonen er den samme som for regnearkreferansen, og syntaksen er også den samme.

Syntaks

Som vår excel MID-funksjon, har den også i VBA et lignende sett med syntaksverdier. Nedenfor er syntaksen.

  • String to Search: Dette er ingenting annet enn hva som er setningen til streng, dvs. fra hvilken streng eller ord du vil trekke ut verdiene.
  • Startposisjon: Fra hvilken posisjon av setningen du vil trekke ut. Dette skal være en numerisk verdi.
  • Antall tegn som skal trekkes ut: Hvor mange tegn vil du trekke ut fra startposisjonen? Dette bør også være en numerisk verdi.

Hvordan bruker jeg VBA MID-funksjon?

Eksempel 1

Anta at du har ordet "Hallo god morgen", og at du vil trekke ut "bra" fra denne setningen. Følg trinnene nedenfor for å trekke ut verdien.

Trinn 1: Opprett et makronavn først.

Kode:

Sub MID_VBA_Example1 () Slutt Sub

Trinn 2: Erklær en variabel som “STRING”.

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String End Sub

Trinn 3: Nå tilordne en verdi til denne variabelen gjennom MID-funksjonen.

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid (End Sub

Trinn 4: Det første argumentet er String, dvs. fra hvilken verdi vi vil trekke ut. Så verdien vår er "Hallo god morgen."

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", End Sub

Trinn 5: Neste er hva som er startposisjonen til tegnet du vil trekke ut. I dette tilfellet, starter God morgen fra en 7 th karakter.

Merk: Rom er også et tegn.

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7 End Sub

Trinn 6: Lengde er ikke annet enn hvor mange tegn du vil trekke ut. Vi trenger å trekke ut 4 tegn her på grunn av lengden på ordet "Bra" er 4 tegn.

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7, 4) End Sub

Trinn 7: Vi har fullført formelen. La oss vise resultatet av variabelen i meldingsboksen.

Kode:

Sub MID_VBA_Example1 () Dim MiddleValue As String MiddleValue = Mid ("Hello Good Morning", 7, 4) MsgBox MiddleValue End Sub

Trinn 8: Kjør nå denne koden manuelt eller trykk på F5-tasten, meldingsboksen skal vise ordet "Bra".

Produksjon:

Eksempel 2

Anta at du har fornavn og etternavn sammen, og ordet er "Ramesh, Tendulkar." Mellom fornavn og etternavn er skilletegn et komma (,). Nå trenger vi bare å trekke ut fornavnet.

Trinn 1: Lag en makro og definer en variabel.

Kode:

Under MID_VBA_eksempel2 () Dim fornavn som streng slutt sub

Trinn 2: Nå tilordne en verdi til denne variabelen gjennom MID-funksjonen.

Kode:

Under MID_VBA_eksempel2 () Dim fornavn som streng fornavn = midt (slutt sub

Trinn 3: Strengen vår er "Ramesh.Tendulkar", så skriv inn dette ordet.

Kode:

Sub MID_VBA_Example2 () Dim fornavn som streng fornavn = midt ("Ramesh, Tendulkar", slutt sub

Trinn 4: Siden vi trekker ut fornavn er startposisjon 1.

Kode:

Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, End Sub

Trinn 5: Lengden på karakteren du kan skrive direkte inn som 6, men dette er ikke den beste måten. For å bestemme lengden, la oss bruke en formel til som heter Instr.

Kode:

Sub MID_VBA_Example2 () Dim FirstName As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (End Sub

Trinn 6: For denne startposisjonen er 1.

Kode:

Sub MID_VBA_Example2 () Dim First Name As String FirstName = Mid ("Ramesh, Tendulkar", 1, InStr (1, End Sub

Trinn 7: Streng 1 er navnet vårt, dvs. "Ramesh, Tendulkar."

Kode:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar",1,InStr(1,"Ramesh,Tendulkar", End Sub

Step 8: String 2 what is the separator of first name & last name, i.e., comma (,).

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar",1,InStr(1,"Ramesh,Tendulkar",",") End Sub

Note: Instr function will return how many characters are there in the word “Ramesh, Tendulkar” from the string 1 position to the string 2 positions, i.e., until comma (,). So Instr will return 7 as a result, including comma (,).

Step 9: Since Instr function returns no., of characters including comma (,) we need to minus 1 character here. So enter -1 after the close of Instr function.

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar", 1, InStr(1, "Ramesh,Tendulkar", ",") - 1) End Sub

Step 10: Now show the value of the variable in the message box.

Code:

Sub MID_VBA_Example2() Dim FirstName As String FirstName = Mid("Ramesh,Tendulkar", 1, InStr(1, "Ramesh,Tendulkar", ",") - 1) MsgBox FirstName End Sub

Step 11: Run this code using the F5 key, or you can run this code manually. We would get the first name in the message box.

Output:

Example #3

Now I will give you one assignment to solve. I have a list of First Name & Last Name.

From this list, I want you to extract the first name only. All the best!!!!.

Ok, If you have tried and not able to get the result, then the below code would help you in this.

Code:

Sub MID_VBA_Example3 () Dim i så lenge for i = 2 til 15 celler (i, 2) .Value = Mid (celler (i, 1) .Value, 1, InStr (1, Cells (i, 1) .Value, " , ") - 1) Neste i End Sub

Kopier og lim inn koden ovenfor i modulen din. Etter å ha kopiert koden, kjør denne koden ved hjelp av F5-tasten, ellers kan du kjøre manuelt.

Det skal gi et resultat som nedenfor.

Ting å huske

  • Lengdeargumentet i MID-funksjonen er valgfritt. Hvis du ignorerer dette, vil det ta 1 som standardverdi.
  • For å bestemme lengden eller startposisjonen, bruk Instr-funksjonen sammen med MID-funksjonen.

Interessante artikler...