MID -funksjonseksempler - Excel, VBA og Google Sheets

Last ned eksempel på arbeidsbok

Last ned eksemplet på arbeidsbok

Denne opplæringen viser hvordan du bruker Excel MID -funksjon i Excel for å trekke ut tekst fra en celle.

Oversikt over MID -funksjoner

MID -funksjonen Returnerer tekst fra midten av en celle, definert av et startnummer og antall tegn.

For å bruke MID Excel -regnearkfunksjonen, velg en celle og skriv:

(Legg merke til hvordan formelinngangene vises)

MID -funksjon Syntaks og innganger:

= MID (tekst, startnummer, num_chars)

tekst - En tekststreng.

startnummer - Tegnnummeret du vil starte valget fra.

num_chars - Antall tegn etter startnummeret som skal returneres.

Slik bruker du MID -funksjonen i Excel:

MID -funksjonen trekker ut et bestemt antall tegn du angir fra hvor som helst du vil.

= MIDT (B3, C3, D3)

Det kan starte fra et hvilket som helst tall i kolonne C og et hvilket som helst antall tegn i kolonne D.

MID til gripestreng mellom forskjellig avgrensning

Hvis strengen du ønsker er mellom to forskjellige avgrensere, er dette en ganske grei. For eksempel vil vi kanskje ha strengen mellom bindestrek (“-”) og skråstrek (“/”).

= MIDD (B3, FINN ("-", B3)+1, FINN ("/", B3) -FIND ("-", B3) -1)

I dette tilfellet her kan vi bruke FIND til å sjekke hvilken tegnposisjon bindestrek starter og legge til 1 for å begynne å trekke ut derfra.

Bruk FIND igjen for å sjekke hvilken tegnposisjon skråstreken starter og minus posisjonen til bindestrek og 1 for å få lengden på strengen vi ønsker.

Du kan også bruke SEARCH. Forskjellen mellom FIND og SEARCH er at førstnevnte er bokstavfølsom. Å finne et symbol som plass vil ikke ha noen betydning.

= MIDT (B3, FINN ("-", B3)+1, SØK ("/", B3) -SØK ("-", B3) -1)

MID til gripestreng mellom samme skilletegn

Hvis strengen har samme skilletegn, er den litt tøffere enn den ovenfor fordi FIND griper den første forekomsten. For eksempel vil vi kanskje ha strengen mellom første og andre mellomrom. Men du kan også angi en startposisjon i FIND.

= MIDT (B3, FIND ("", B3)+1, FIND ("", B3, FIND ("", B3) +1) -FIND ("", B3) -1)

Den bruker FIND akkurat som eksemplet ovenfor for å sjekke hvilken karakterposisjon mellomrommet starter og legge til 1 for å begynne å trekke ut derfra.

Bruk FIND igjen for å sjekke hvilken tegnposisjon det andre mellomrommet starter ved å begynne å finne 1 tegn etter plasseringen av det første mellomrommet.

Og til slutt minus posisjonen til det første mellomrommet og 1 for å få lengden på strengen vi ønsker.

Du kan også bruke SEARCH.

= MIDT (B3, FINN ("", B3)+1, SØK ("", B3, FINN ("", B3) +1) -SØK ("", B3) -1)

MID med tall/datoer

Vær oppmerksom på at MID er en tekstfunksjon. Ved bruk av MID er resultatet en tekst. For eksempel vil du ikke kunne oppsummere disse tallene i celle E3 etter å ha brukt MID.

Det samme skjer for datoer da de blir gjenkjent som serienumre og ikke som tekst. Du trenger kanskje ikke å summere datoer, men det fungerer ikke bra i filtre og pivottabeller.

For å overvinne problemene ovenfor kan du bruke VALUE til å konvertere fra tekst til verdier.

= VERDI (MIDD (B3, FIND (":", B3)+2, FIND ("", B3, FIND ("", B3) +1) -FIND (":", B3) -2))

MID til Split ved Common Delimiter

Du vil kanskje dele alle ordene i forskjellige rader. Derfor:

= TRIM (MIDT (SKIFT (B $ 3, "", REPT ("", LEN (B $ 3))), (RADER (B3: B $ 3) -1)*LEN (B $ 3)+1, LEN (B $ 3 ))))

Det som gjør er å bruke SUBSTITUTE til å erstatte alle mellomrom med en tilstrømning av gjentatte mellomrom ved å bruke REPT. Det resulterer i at teksten ser slik ut:
“Excel er virkelig fantastisk”

Tilstrømningen av gjentatt gjentas nøye med en total lengde på originalteksten ved å bruke LEN. Det betyr at posisjonsnummeret du vil begynne å trekke ut fra er et multiplum av den totale lengden. For det første ordet, trekk ut fra posisjon 1. For det andre vil det være total lengde + 1. For det tredje, total lengde x 2 + 1. Etc. For å få det nende ordet, bruk RADER.

Til slutt bruker antall tegn alltid den totale lengden på originalteksten.

Finn det niende ordet i strengen

Vi kan kombinere TRIM, LEN, SUBSTITUTE, REPT med MID som følger for å få siste ord i strengen.

= TRIM (MIDT (SUBSTITUTE (A $ 2, "", REPT ("", LEN (A $ 2))), (B2-1)*LEN (A $ 2) +1, LEN (A $ 2)))

Noe som vil gi oss følgende resultater:

Reverser en tekststreng

Du kan reversere en tekststreng ved å kombinere MID -funksjonen med TEXTJOINT som følger.

= TEKSTJOIN ("", 1, MIDD (A2, {10,9,8,7,6,5,4,3,2,1}, 1))

Noe som vil gi oss følgende resultater:

MID i Google Regneark

MID -funksjonen fungerer nøyaktig det samme i Google Sheets som i Excel:

Ytterligere merknader

Hvis num_chars er større enn den gjenværende lengden på teksten, returnerer MID -funksjonen all gjenværende tekst.

MID -eksempler i VBA

Du kan også bruke MID -funksjonen i VBA. Type:
application.worksheetfunction.mid (tekst, startnummer, num_chars)
For funksjonsargumentene (tekst osv.) Kan du enten skrive dem inn direkte i funksjonen, eller definere variabler som skal brukes i stedet.

Gå tilbake til listen over alle funksjoner i Excel

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave