Innholdsfortegnelse
Når du arbeider med ustrukturerte tekstdata i regnearkene dine, må du ofte analysere dem for å hente relevant informasjon. Denne artikkelen vil lære deg noen enkle måter å fjerne et hvilket som helst antall tegn fra venstre eller høyre side av en tekststreng.
Hvordan fjerne tegn fra venstre i Excel
Fjerne første tegn fra en streng er en av de vanligste oppgavene i Excel, og det kan utføres med 3 forskjellige formler.
Fjern første tegn i Excel
For å slette det første tegnet fra en streng kan du bruke enten REPLACE-funksjonen eller en kombinasjon av RIGHT- og LEN-funksjoner.
REPLACE( string, 1, 1, "")Her tar vi bare 1 tegn fra den første posisjonen og erstatt den med en tom streng ("").
HØYRE( streng, LEN( streng) - 1)I denne formelen bruk LEN-funksjonen til å beregne den totale lengden på strengen og trekke 1 tegn fra den. Forskjellen vises til HØYRE, så den trekker ut så mange tegn fra slutten av strengen.
For å fjerne det første tegnet fra celle A2, går formlene som følger:
=REPLACE(A2, 1, 1, "")
=RIGHT(A2, LEN(A2) - 1)
Fjern tegn fra venstre
For å fjerne innledende tegn fra venstre side av en streng, bruker du også REPLACE eller RIGHT og LEN-funksjoner, men spesifiser hvor mange tegn du vil slette hver gang:
REPLACE( streng , 1, antall_tegn ,"")Eller
HØYRE( streng , LEN( streng ) - antall_tegn )For å fjerne for eksempel første 2 tegn fra strengen i A2, formlene er:
=REPLACE(A2, 1, 2, "")
=RIGHT(A2, LEN(A2) - 2)
For å fjerne første 3 tegn , formlene har denne formen:
=REPLACE(A2, 1, 3, "")
=RIGHT(A2, LEN(A2) - 3)
Skjermbildet nedenfor viser ERSTATT-formelen i aksjon. Med RIGHT LEN ville resultatene være nøyaktig de samme.
Egendefinert funksjon for å slette de første n tegnene
Hvis du ikke har noe imot å bruke VBA i regnearkene dine, kan lage din egen brukerdefinerte funksjon for å slette tegn fra begynnelsen av en streng, kalt RemoveFirstChars . Funksjonens kode er så enkel som denne:
Funksjon RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) SluttfunksjonNår koden er satt inn i arbeidsboken din ( de detaljerte instruksjonene er her), kan du fjerne de første n tegnene fra en gitt celle ved å bruke denne kompakte og intuitive formelen:
RemoveFirstChars(string, num_chars)For eksempel, for å slette den første tegn fra en streng i A2, formelen i B2 er:
=RemoveFirstChars(A2, 1)
For å fjerne de to første tegnene fra A3, er formelen i B3:
=RemoveFirstChars(A4, 2)
For å slette første tre tegn fra A4, er formelen i B4:
=RemoveFirstChars(A4, 3)
Mer om Bruke egendefinerte funksjoner i Excel.
Hvordan fjerne tegnfra høyre
For å fjerne tegn fra høyre side av en streng, kan du også bruke innebygde funksjoner eller lage din egen.
Fjern siste tegn i Excel
For å slette det siste tegnet i en celle, den generiske formelen er:
LEFT( streng , LEN( streng ) - 1)I denne formelen trekker du 1 fra total strenglengde og send forskjellen til VENSTRE-funksjonen for at den skal trekke ut så mange tegn fra begynnelsen av strengen.
For å fjerne det siste tegnet fra celle A2, er formelen i B2 for eksempel:
=LEFT(A2, LEN(A2) - 1)
Fjern tegn fra høyre
For å fjerne et gitt antall tegn fra slutten av en celle, er den generiske formelen:
VENSTRE( streng , LEN( streng ) - antall_tegn )Logikken er den samme som i formelen ovenfor, og nedenfor er et par eksempler.
For å fjerne de siste 3 tegnene , bruk 3 for antall_tegn :
=LEFT(A2, LEN(A2) - 3)
For å slette siste 5 tegn , oppgi 5 for antall_tegn :
28 40
Egendefinert funksjon for å fjerne siste n tegn i Excel
Hvis du vil ha din egen funksjon for å fjerne et hvilket som helst antall tegn fra høyre, legg til denne VBA kode til arbeidsboken din:
Funksjon RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) SluttfunksjonFunksjonen heter RemoveLastChars og dens syntaks trenger knaptnoen forklaring:
RemoveLastChars(string, num_chars)For å gi det en felttest, la oss bli kvitt det siste tegnet i A2:
=RemoveLastChars(A2, 1)
I tillegg fjerner vi de siste 2 tegnene fra høyre side av strengen i A3:
=RemoveLastChars(A3, 2)
For å slette de siste 3 tegnene fra celle A4 er formelen:
=RemoveLastChars(A4, 3)
Som du kan se på skjermbildet nedenfor, fungerer vår egendefinerte funksjon strålende!
Slik fjerner du tegn fra høyre og venstre samtidig
I situasjoner hvor du trenger å slette tegn på begge sider av en streng, kan du enten kjøre begge formlene ovenfor sekvensielt eller optimere jobben ved hjelp av MID-funksjonen.
MID( streng , venstre _ tegn + 1, LEN( streng ) - ( venstre _ tegn + høyre _ tegn )Hvor:
- tegn_venstre - antall tegn som skal slettes fra venstre.
- chars_right - antall tegn som skal slettes fra høyre.
Anta at du vil trekke ut t brukernavnet fra en streng som mailto:[email protected] . For dette må en del av teksten fjernes fra begynnelsen ( mailto: - 7 tegn) og fra slutten ( @gmail.com - 11 tegn).
Server tallene ovenfor til formelen:
=MID(A2, 7+1, LEN(A2) - (7+10))
...og resultatet lar deg ikke vente:
For å forstå hva som faktisk er pågår her, la oss huske syntaksen tilMID-funksjon, som brukes til å trekke en delstreng av en viss størrelse fra midten av den opprinnelige strengen:
MID(tekst, startnummer, antall_tegn)Argumentet tekst reiser ingen spørsmål - det er kildestrengen (A2 i vårt tilfelle).
For å få posisjonen til det første tegnet som skal trekkes ut ( startnummer ), legger du til 1 til antallet tegn som skal fjernes fra venstre (7+1).
For å bestemme hvor mange tegn som skal returneres ( antall_tegn ), beregner du summen av fjernede tegn (7 + 11) og trekker summen fra lengden av hele strengen: LEN(A2) - (7+10)).
Få resultatet som tall
Uansett hvilken av formlene ovenfor du bruker, er utdata alltid tekst, selv når den returnerte verdien inneholder bare tall. For å returnere resultatet som et tall , pakk enten kjerneformelen inn i VERDI-funksjonen eller utføre en matematisk operasjon som ikke påvirker resultatet, f.eks. multipliser med 1 eller legg til 0. Denne teknikken er spesielt nyttig når du vil beregne resultatene videre.
Anta at du har fjernet det første tegnet fra cellene A2:A6 og vil summere de resulterende verdiene. Forbløffende nok gir en triviell SUM-formel null. Hvorfor det? Selvfølgelig, fordi du legger sammen strenger, ikke tall. Utfør en av operasjonene nedenfor, og problemet er løst!
=VALUE(REPLACE(A2, 1, 1, ""))
=RIGHT(A2, LEN(A2) - 1) * 1
=RemoveFirstChars(A2, 1) + 0
Fjern først eller siste tegn med Flash Fill
I Excel2013 og nyere versjoner er det en enkel måte å slette de første og siste tegnene i Excel - Flash Fill-funksjonen.
- I en celle ved siden av den første cellen med de originale dataene, skriv inn ønsket resultat utelate det første eller siste tegnet fra den opprinnelige strengen, og trykk Enter .
- Begynn å skrive den forventede verdien i neste celle. Hvis Excel registrerer mønsteret i dataene du legger inn, vil det følge det samme mønsteret i resten av cellene og vise en forhåndsvisning av dataene dine uten det første/siste tegnet.
- Bare trykk Enter-tasten for å godta forhåndsvisningen.
Fjern tegn etter posisjon med Ultimate Suite
Tradisjonelt kan brukerne av Ultimate Suite håndtere oppgaven med noen få klikk uten å måtte å huske en håndfull forskjellige formler.
For å slette de første eller siste n tegnene fra en streng, er dette hva du må gjøre:
- På Ablebits-dataene -kategorien, i Tekst -gruppen, klikk Fjern > Fjern etter posisjon .
For å fjerne det første tegnet konfigurerer vi for eksempel følgende alternativ:
Slik fjerner du en delstreng fra venstre eller høyre i Excel. Jeg takker for at du leser og ser frem til å se deg på bloggen vår neste ganguke!
Tilgjengelige nedlastinger
Fjern første eller siste tegn - eksempler (.xlsm-fil)
Ultimate Suite - prøveversjon (.exe-fil)