Ta bort text inom parentes eller parentes från textsträngarna
Om du antar att du har en lista med textsträngar och en del av texterna är inneslutna inom parentes, nu vill du ta bort alla texter inom parentesen och inklusive parenteserna själva enligt skärmbilden nedan. I den här artikeln kommer jag att introducera några metoder för att lösa denna uppgift i Excel.
- Ta bort text inom parentes eller parentes från textsträngar med formel
- Ta bort text inom parentes eller parentes från textsträngar med användardefinierad funktion
Ta bort text inom parentes eller parentes från textsträngar med formel
Du kan skapa en formel baserad på SUBSTITUTE, MID FIND och LEN-funktionerna för att hantera detta jobb, den generiska syntaxen är:
- text: Textsträngen eller cellreferens som du vill använda.
Vänligen kopiera eller skriv in följande formel i en tom cell där du vill få resultatet:
Och dra sedan fyllningshandtaget ner till cellerna du vill använda denna formel, och alla texter inom parentes inklusive parenteser har tagits bort, se skärmdump:
Förklaring av formeln:
1. MID(LEFT(A2,FIND(")",A2)),FIND("(",A2),LEN(A2)): Denna MID-funktion känns igen som argumentet old_text i SUBSTITUTE-funktionen.
- VÄNSTER (A2, HITTA (")", A2)): Denna del av formeln används för att extrahera textsträngen från vänster till höger parentes i cell A2, och du får resultatet som detta: “Tom Hill (Houston Texas)”. Detta kommer att erkännas som textargumentet i MID-funktionen.
- HITTA ("(", A2): Denna HITTA-funktion returnerar positionen för den vänstra parentesen från cell A2, resultatet är: 10. Och denna delformel känns igen som argumentet start_num inom MID-funktionen.
- LENN (A2): LEN-funktionen får det totala antalet tecken i cell A2, och resultatet är: 27. Denna del känns igen som num_chars-argumentet för MID-funktionen.
- MID (VÄNSTER (A2, HITTA (")", A2)), HITTA ("(", A2), LEN (A2)) = MID ("Tom Hill (Houston Texas)", 10,27): Denna MID-funktion används för att extrahera tecknen från textsträngen som returneras av VÄNSTER-funktionen, börja från det tionde tecknet med en längd på 27 tecken, och du får resultatet som detta: “(Houston Texas)”.
2. SUBSTITUT (A2, MID (LEFT (A2, FIND (")", A2)), FIND ("(", A2), LEN (A2)), "") = SUBSTITUT (A2, "(Houston Texas) "," "): Äntligen används denna SUBSTITUTE-funktion för att ersätta den gamla texten som returneras av MID-funktionen med ingenting i textsträngen i cell A2.
Anmärkningar:
1. Om den del av texten som medföljer parenteserna behöver du bara ersätta parenteserna med parenteserna enligt nedanstående formel:
2. Om det inte finns några parenteser i cellvärdet, efter att ovanstående formel har tillämpats, visas ett fel, i det här fallet behöver du bara bifoga ovanstående formel i IFERROR-funktionen:
Ta bort text inom parentes eller parentes från textsträngar med användardefinierad funktion
Om det finns två eller flera parenteser i textsträngen kan ovanstående formel endast användas för att ta bort text i de första parenteserna. För att ta bort alla texter i flera parenteser som följande skärmdump visas, hur kan du uppnå det i Excel?
I det här fallet kan en användardefinierad funktion hjälpa dig att ta bort alla texter inom parentes. Gör med följande steg:
1. Håll ner Alt + F11 nycklar i Excel, och det öppnar Microsoft Visual Basic för applikationer fönster.
2. Klicka Insert > Modulernaoch klistra in följande VBA-kod i modulfönstret.
Function remtxt(ByVal str As String) As String
'updateby Extendoffice
While InStr(str, "(") > 0 And InStr(str, ")") > InStr(str, "(")
str = Left(str, InStr(str, "(") - 1) & Mid(str, InStr(str, ")") + 1)
Wend
remtxt = Trim(str)
End Function
3. Gå sedan tillbaka till kalkylbladet där du vill använda och skriv in denna formel i en tom cell: = remtxt (A2), dra sedan påfyllningshandtaget ner till cellerna du vill använda den här formeln, alla texter inom flera parenteser inklusive parenteser har tagits bort på en gång, se skärmdump:
Relativa funktioner som används:
- LEN:
- LEN-funktionen returnerar antalet tecken i en textsträng.
- MID:
- MID-funktionen används för att hitta och returnera ett visst antal tecken från mitten av den angivna textsträngen.
- FIND:
- HITTA-funktionen används för att hitta en sträng inom en annan sträng och returnerar startpositionen för strängen inuti en annan sträng.
- SUBSTITUTE:
- Excel SUBSTITUTE-funktionen ersätter text eller tecken i en textsträng med en annan text eller andra tecken.
Fler artiklar:
- Ta bort text före eller efter första eller sista specifika tecken från textsträngar
- Denna handledning kommer att prata om hur man tar bort texten före eller efter det första eller sista specifika tecknet, till exempel mellanslag, komma från en lista med textsträngar i Excel.
- Ta bort eller ta bort icke-numeriska tecken från textsträngar
- Ibland kan du behöva ta bort alla icke-numeriska tecken från textsträngarna och bara hålla siffrorna enligt nedanstående skärmdump. Denna artikel kommer att presentera några formler för att lösa denna uppgift i Excel.
- Ta bort eller ta bort numeriska tecken från textsträngar
- Om du bara vill ta bort alla siffror från en lista med textsträngar men behålla andra icke-numeriska tecken, kanske det finns några formler i Excel kan göra dig en tjänst.
- Ta bort text från en cell baserat på specifik position
- Denna handledning förklarar hur man använder formler för att ta bort text från en cell baserat på specifik position i Excel.
De bästa Office-produktivitetsverktygen
Kutools för Excel - Hjälper dig att sticka ut från mängden
Kutools för Excel har över 300 funktioner, Se till att det du behöver bara är ett klick bort...
Fliken Office - Aktivera läsning och redigering av flikar i Microsoft Office (inkluderar Excel)
- En sekund att växla mellan dussintals öppna dokument!
- Minska hundratals musklick åt dig varje dag, säg adjö till mushanden.
- Ökar din produktivitet med 50 % när du visar och redigerar flera dokument.
- Ger effektiva flikar till Office (inklusive Excel), precis som Chrome, Edge och Firefox.