Excels VÄNSTER-, HÖGER- och MID-funktioner fungerar utmärkt för att extrahera text, men bara om du vet den exakta positionen för de tecken du riktar in dig på. Vad gör man när man inte vet exakt var man ska börja utsöndringen? Om du till exempel hade följande lista med produktkoder, hur skulle du gå tillväga för att extrahera all text efter bindestrecket?
PRT-432
COPR-6758
SVCCALL-58574
VÄNSTER-funktionen skulle inte fungera eftersom du behöver rätt få tecken. Funktionen HÖGER fungerar inte ensam eftersom du måste berätta exakt hur många tecken som ska extraheras från höger om textsträngen. Varje nummer du anger kommer att dra antingen för många eller för få tecken från texten.
MID-funktionen ensam fungerar inte eftersom du måste tala om exakt var i texten för att börja extrahera. Återigen, alla nummer du anger kommer att dra antingen för många eller för få tecken från texten.
Verkligheten är att du ofta kommer att behöva hitta specifika karaktärer för att få rätt startposition för extraktion.
Det är här Excels FIND-funktion kommer till användning. Med FIND-funktionen kan du få positionsnumret för ett visst tecken och använda den teckenpositionen i andra operationer.
I exemplet som visas använder du FIND-funktionen tillsammans med MID-funktionen för att extrahera mittentalen från en lista med produktkoder. Som du kan se från formeln hittar du bindestreckets position och använder det positionsnumret för att mata MID-funktionen.
=MIDDEN(B3,HITTA("-",B3)+1,2)
FIND-funktionen har två obligatoriska argument. Det första argumentet är texten du vill hitta. Det andra argumentet är texten du vill söka efter. Som standard returnerar FIND-funktionen positionsnumret för tecknet du försöker hitta. Om texten du söker innehåller mer än ett av dina söktecken, returnerar FIND-funktionen positionsnumret för det första mötet.
Till exempel söker följande formel efter ett bindestreck i textsträngen "PWR-16-Small". Resultatet blir en siffra 4, eftersom det första bindestrecket det möter är det fjärde tecknet i textsträngen.
=HITTA("-","PWR-16-Small")
Du kan använda FIND-funktionen som ett argument i en MID-funktion för att extrahera ett visst antal tecken efter positionsnumret som returneras av FIND-funktionen.
Om du anger den här formeln i en cell får du de två siffrorna efter det första bindestrecket som finns i texten. Notera +1:an i formeln. Att inkludera +1 säkerställer att du flyttar över ett tecken för att komma till texten efter bindestrecket.
=MID("PWR-16-Small", FIND("-","PWR-16-Small")+1, 2)