Die gebruik van Excel VERVANG en VERVANG funksies - formule voorbeelde

  • Deel Dit
Michael Brown

Die tutoriaal verduidelik die Excel VERVANG- en VERVANG-funksies met voorbeelde van gebruike. Sien hoe om die VERVANG-funksie met teksstringe, nommers en datums te gebruik, en hoe om verskeie VERVANG- of VERVANG-funksies binne een formule te nes.

Verlede week het ons verskeie maniere bespreek om VIND- en SOEK-funksies binne te gebruik. jou Excel-werkblaaie. Vandag gaan ons dieper kyk na twee ander funksies om teks in 'n sel te vervang op grond van sy ligging of om een ​​teksstring met 'n ander te vervang op grond van inhoud. Soos jy dalk geraai het, praat ek van die Excel VERVANG- en VERVANG-funksies.

    Excel VERVANG-funksie

    Die VERVANG-funksie in Excel laat jou toe om een ​​of meer te ruil karakters in 'n teksstring met 'n ander karakter of 'n stel karakters.

    VERVANG(ou_teks, begin_getal, aantal_tekens, nuwe_teks)

    Soos jy sien, het die Excel VERVANG-funksie 4 argumente, wat almal vereis word.

    • Ou_teks - die oorspronklike teks (of 'n verwysing na 'n sel met die oorspronklike teks) waarin jy sommige karakters wil vervang.
    • Begin_nommer - die posisie van die eerste karakter binne ou_teks wat jy wil vervang.
    • Getal_tekens - die aantal karakters wat jy wil vervang.
    • Nuwe_teks - die vervangingsteks.

    Om byvoorbeeld die woord " son " na " seun " te verander, kan jy die volgende gebruikformule:

    =REPLACE("sun", 2, 1, "o")

    En as jy die oorspronklike woord in een of ander sel plaas, sê A2, kan jy die ooreenstemmende selverwysing in die ou_teks-argument verskaf:

    =REPLACE(A2, 2, 1, "o")

    Let wel. As die begin_getal of getal_tekens-argument negatief of nie-numeries is, gee 'n Excel Vervang-formule die #WAARDE! fout.

    Die gebruik van Excel VERVANG-funksie met numeriese waardes

    Die VERVANG-funksie in Excel is ontwerp om met teksstringe te werk. Natuurlik kan jy dit gebruik om numeriese karakters wat deel is van 'n teksstring te vervang, byvoorbeeld:

    =REPLACE(A2, 7, 4, "2016")

    Let op dat ons "2016 insluit" " in dubbele aanhalingstekens soos jy gewoonlik met tekswaardes doen.

    Op 'n soortgelyke manier kan jy een of meer syfers binne 'n getal vervang. Byvoorbeeld:

    =REPLACE(A4, 4, 4,"6")

    En weer moet jy die vervangingswaarde in dubbele aanhalingstekens ("6") insluit.

    Let wel. 'n Excel VERVANG-formule gee altyd 'n teksstring terug, nie nommer nie. In die skermskoot hierbo, let op die linkerbelyning van die teruggestuurde tekswaarde in B2, en vergelyk dit met die regsbelynde oorspronklike nommer in A2. En omdat dit 'n tekswaarde is, sal jy dit nie in ander berekeninge kan gebruik nie, tensy jy dit terugskakel na getal, byvoorbeeld deur te vermenigvuldig met 1 of deur enige ander metode te gebruik wat beskryf word in Hoe om teks na getal om te skakel.

    Gebruik Excel REPLACE-funksie met datums

    Soos jy sopas gesien het, werk die REPLACE-funksie goed metnommers, behalwe dat dit 'n teksstring terugstuur :) As u onthou dat datums in die interne Excel-stelsel as getalle gestoor word, kan u probeer om 'n paar Vervang-formules op datums te gebruik. Resultate sal nogal verleentheid wees.

    Byvoorbeeld, jy het 'n datum in A2, sê 1-Okt-14, en jy wil " Okt " verander na " Nov ". So, jy skryf die formule VERVANG(A2, 4, 3, "Nov") wat vir Excel sê om 3 tekens in selle A2 te vervang wat met die 4de karakter begin ... en het die volgende resultaat gekry:

    Hoekom is dit? Omdat "01-Okt-14" slegs 'n visuele voorstelling is van die onderliggende reeksnommer (41913) wat die datum verteenwoordig. Dus, ons Vervang-formule verander die laaste 3 syfers in die bogenoemde reeksnommer na " Nov " en gee die teksstring "419Nov" terug.

    Om die Excel REPLACE-funksie te kry om korrek mee te werk datums, kan jy eers datums na teksstringe omskakel deur die TEKS-funksie of enige ander tegniek te gebruik wat in Hoe om datum na teks om te skakel in Excel gedemonstreer. Alternatiewelik kan jy die TEXT-funksie direk insluit in die ou_teks-argument van die VERVANG-funksie:

    =REPLACE(TEXT(A2, "dd-mmm-yy"), 4, 3, "Nov")

    Onthou asseblief dat die resultaat van die formule hierbo is 'n teksstring , en daarom werk hierdie oplossing slegs as jy nie van plan is om die gewysigde datums in verdere berekeninge te gebruik nie. As jy datums eerder as teksstringe nodig het, gebruik die DATUMWAARDE-funksie om die waardes wat teruggestuur word deur te veranderdie Excel REPLACE-funksie terug na datums:

    =DATEVALUE(REPLACE(TEXT(A2, "dd-mmm-yy"), 4, 3, "Nov"))

    Geneste VERVANG-funksies om veelvuldige vervangings in 'n sel te doen

    Dikwels sal jy dalk meer as een vervanging in dieselfde sel. Natuurlik kan jy een vervanging doen, 'n tussenresultaat in 'n bykomende kolom uitvoer en dan die VERVANG-funksie weer gebruik. 'n Beter en meer professionele manier is egter om geneste VERVANG-funksies te gebruik waarmee jy verskeie vervangings met 'n enkele formule kan uitvoer. In hierdie konteks beteken "nesting" om een ​​funksie binne 'n ander te plaas.

    Beskou die volgende voorbeeld. Gestel jy het 'n lys telefoonnommers in kolom A geformateer as "123456789" en jy wil hulle meer soos telefoonnommers laat lyk deur koppeltekens by te voeg. Met ander woorde, jou doel is om "123456789" in "123-456-789" te verander.

    Dit is maklik om die eerste koppelteken in te voeg. Jy skryf 'n gewone Excel Vervang-formule wat nul karakters met 'n koppelteken vervang, d.w.s. voeg 'n koppelteken in die 4de posisie in 'n sel by:

    =REPLACE(A2,4,0,"-")

    Die resultaat van die hierbo Vervang formule is soos volg:

    Goed, en nou moet ons nog een koppelteken in die 8ste posisie invoeg. Om dit te doen, plaas jy die bogenoemde formule binne 'n ander Excel VERVANG funksie. Meer presies, jy insluit dit in die ou_teks argument van die ander funksie, sodat die tweede VERVANG funksie die waarde sal hanteer wat deur dieVERVANG eers, en nie die waarde in sel A2 nie:

    =REPLACE(REPLACE(A2,4,0,"-"),8,0,"-")

    As gevolg hiervan kry jy die telefoonnommers in die verlangde formatering:

    Op 'n soortgelyke manier kan jy geneste VERVANG-funksies gebruik om teksstringe soos datums te laat lyk deur 'n skuinsstreep (/) waar toepaslik by te voeg:

    =(REPLACE(REPLACE(A2,3,0,"/"),6,0,"/"))

    Boonop kan jy teksstringe in werklike datums omskakel deur die bogenoemde VERVANG-formule met die DATUMWAARDE-funksie om te draai:

    =DATEVALUE(REPLACE(REPLACE(A2,3,0,"/"),6,0,"/"))

    En natuurlik is jy nie beperk in die aantal funksies nie jy kan binne een formule nes (die moderne weergawes van Excel 2010, 2013 en 2016 laat tot 8192 karakters en tot 64 geneste funksies in 'n formule toe).

    Jy kan byvoorbeeld 3 geneste VERVANG-funksies gebruik om laat 'n nommer in A2 soos datum en tyd verskyn:

    =REPLACE(REPLACE(REPLACE(REPLACE(A2,3,0,"/") ,6,0,"/"), 9,0, " "), 12,0, ":")

    Vervang 'n string wat in 'n ander posisie in elke sel verskyn

    Tot dusver het ons in al die voorbeelde met waardes van 'n soortgelyke aard te doen gehad en vervangings in dieselfde posisie gemaak aan in elke sel. Maar werklike take is dikwels meer ingewikkeld as dit. In jou werkblaaie sal die karakters wat vervang moet word dalk nie noodwendig op dieselfde plek in elke sel verskyn nie, en daarom sal jy die posisie van die eerste karakter moet vind wat vervang moet word. Die volgende voorbeeld sal demonstreer waarvan ek praat.

    Gestel jy het 'n lys e-posseadressering in kolom A. En die naam van een maatskappy het verander van "ABC" na byvoorbeeld "BCA". So, jy moet al die kliënte se e-posadresse dienooreenkomstig opdateer.

    Maar die probleem is dat die kliëntname van verskillende lengtes is, en daarom kan jy nie presies spesifiseer waar die maatskappynaam begin nie. Met ander woorde, jy weet nie watter waarde om in die begin_num-argument van die Excel REPLACE-funksie te verskaf nie. Om dit uit te vind, gebruik die Excel FIND-funksie om die posisie van die eerste char in die string "@abc" te bepaal:

    =FIND("@abc",A2)

    En verskaf dan die FIND-funksie hierbo in die start_num argument van jou VERVANG formule:

    =REPLACE(A2, FIND("@abc",A2), 4, "@bca")

    Wenk. Ons sluit "@" in ons Excel Soek en Vervang-formule in om toevallige vervangings in die naamgedeelte van e-posadresse te vermy. Natuurlik is daar 'n baie skrale kans dat sulke wedstryde sal plaasvind, en steeds wil jy dalk aan die veilige kant wees.

    Soos jy in die volgende kiekie sien, het die formule geen probleem met die vind en vervanging van die ou teks met die nuwe een. As die teksstring wat vervang moet word nie gevind word nie, gee die formule die #VALUE! fout:

    En ons wil hê die formule moet die oorspronklike e-posadres in plaas van die fout terugstuur. So, kom ons sluit ons VIND & amp; VERVANG formule in die IFERROR-funksie:

    =IFERROR(REPLACE(A2, FIND("@abc",A2), 4, "@bca"),A2)

    En hierdie verbeterde formule werk perfek, nie waar nie?

    Nog 'n praktiesetoepassing van die REPLACE-funksie is om die eerste letter in 'n sel met hoofletters te gebruik. Wanneer jy ook al met 'n lys name, produkte, en dies meer te doen het, kan jy die bo-geskakelde formule gebruik om die eerste letter na HOOFLETTERS te verander.

    Wenk. As jy die vervangings in die oorspronklike data wil maak, sal 'n makliker manier wees om die Excel FIND en VERVANG dialoog te gebruik.

    Excel PLAASVERVANG-funksie

    Die PLAASVERVANG-funksie in Excel vervang een of meer gevalle van 'n gegewe karakter of teksstring met 'n gespesifiseerde karakter(s).

    Die sintaksis van die Excel PLAATSVERVANG-funksie is soos volg:

    PLAASVERVANG(teks, ou_teks, nuwe_teks, [instance_num])

    Die eerste drie argumente word vereis en die laaste een is opsioneel.

    • Teks - die oorspronklike teks waarin jy karakters wil vervang. Kan as 'n toetsstring, selverwysing of 'n resultaat van 'n ander formule verskaf word.
    • Ou_teks - die karakter(s) wat jy wil vervang.
    • Nuwe_teks - die nuwe karakter(s) om ou_teks mee te vervang.
    • Instance_num - die voorkoms van ou_teks wat jy wil vervang. As dit weggelaat word, sal elke voorkoms van die ou teks na die nuwe teks verander word.

    Byvoorbeeld, al die onderstaande formules vervang "1" met "2" in sel A2, maar gee verskillende resultate afhangende van watter getal jy in die laaste argument verskaf:

    =SUBSTITUTE(A2, "1", "2", 1) - Vervang die eerste voorkoms van "1" met"2".

    =SUBSTITUTE(A2, "1", "2", 2) - Vervang die tweede voorkoms van "1" met "2".

    =SUBSTITUTE(A2, "1", "2") - Vervang alle voorkoms van "1" met "2".

    In die praktyk word die SUBSTITUT-funksie ook gebruik om ongewenste karakters uit selle te verwyder. Vir werklike voorbeelde, sien asseblief:

    • Hoe om karakters of woorde uit string te verwyder
    • Hoe om ongewenste karakters uit selle uit te vee

    Let wel. Die SUBSTITUT-funksie in Excel is hooflettergevoelig . Byvoorbeeld, die volgende formule vervang alle gevalle van die hoofletter "X" met "Y" in sel A2, maar dit sal nie enige gevalle van die kleinletter "x" vervang nie.

    Vervang veelvuldige waardes met 'n enkele formule (geneste PLAASVERVANGER)

    Soos die geval is met die Excel VERVANG-funksie, kan jy verskeie PLAASVERVANG-funksies binne 'n enkele formule nes om verskeie vervangings op 'n slag te doen, d.w.s. verskeie karakters of substringe met 'n enkele formule.

    Gestel jy het 'n teksstring soos " PR1, ML1, T1 " in sel A2, waar "PR" staan ​​vir "Project, "ML " staan ​​vir "Milestone" en "T" beteken "Taak". Wat jy wil hê, is om die drie kodes met volle name te vervang. Om dit te bereik, kan jy 3 verskillende PLAASVERVANG-formules skryf:

    =SUBSTITUTE(A2,"PR", "Project ")

    =SUBSTITUTE(A2, "ML", "Milestone ")

    =SUBSTITUTE(A2, "T", "Task ")

    En nes hulle dan in mekaar:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2,"PR","Project "),"ML","Milestone "),"T","Task ")

    Let op dat ons 'n spasie aan die einde van elke nuwe_teks-argument vir beterleesbaarheid.

    Om ander maniere te leer om veelvuldige waardes op 'n slag te vervang, sien asseblief Hoe om massasoek en vervang in Excel te doen.

    Excel VERVANG vs. Excel PLAASVERVANGER

    Die Excel VERVANG- en PLAASVERVANG-funksies is baie soortgelyk aan mekaar deurdat albei ontwerp is om teksstringe te ruil. Die verskille tussen die twee funksies is soos volg:

    • SUBSTITUTE vervang een of meer gevalle van 'n gegewe karakter of 'n teksstring. Dus, as jy weet wat die teks is wat vervang moet word, gebruik die Excel VERVANG funksie.
    • VERVANG verander karakters in 'n gespesifiseerde posisie van 'n teksstring. Dus, as jy die posisie van die karakter(s) ken wat vervang moet word, gebruik die Excel VERVANG-funksie.
    • Die VERVANG-funksie in Excel laat toe om 'n opsionele parameter (instance_num) by te voeg wat spesifiseer watter voorval van ou_teks moet na nuwe_teks verander word.

    Dit is hoe jy die VERVANG- en VERVANG-funksies in Excel gebruik. Hopelik sal hierdie voorbeelde nuttig wees om u take op te los. Ek bedank jou vir die lees en hoop om volgende week op ons blog te sien!

    Laai oefenwerkboek af

    VERVANG en VERVANG formulevoorbeelde (.xlsx-lêer)

    Michael Brown is 'n toegewyde tegnologie-entoesias met 'n passie om komplekse prosesse te vereenvoudig deur sagteware-instrumente te gebruik. Met meer as 'n dekade se ondervinding in die tegnologiebedryf, het hy sy vaardighede in Microsoft Excel en Outlook, sowel as Google Sheets en Docs, opgeskerp. Michael se blog is toegewy daaraan om sy kennis en kundigheid met ander te deel, en verskaf maklik-om-te volg wenke en tutoriale vir die verbetering van produktiwiteit en doeltreffendheid. Of jy nou 'n ervare professionele persoon of 'n beginner is, Michael se blog bied waardevolle insigte en praktiese raad om die meeste uit hierdie noodsaaklike sagteware-nutsmiddels te kry.