Jedwali la yaliyomo
Katika nakala kadhaa za hivi majuzi, tumeangalia njia tofauti za kuondoa herufi kutoka kwa mifuatano katika Excel. Leo, tutachunguza kesi moja zaidi ya utumiaji - jinsi ya kufuta kila kitu kabla au baada ya herufi maalum.
Futa maandishi kabla, baada au kati ya herufi 2 ukitumia Tafuta & Badilisha
Kwa upotoshaji wa data katika visanduku vingi, Tafuta na Ubadilishe ndicho zana sahihi. Ili kuondoa sehemu ya mfuatano uliotangulia au unaofuata herufi mahususi, hizi ni hatua za kutekeleza:
- Chagua visanduku vyote unapotaka kufuta maandishi.
- Bonyeza Ctrl + H ili kufungua Tafuta na Ubadilishe kidirisha.
- Katika kisanduku cha Tafuta nini , weka mojawapo ya michanganyiko ifuatayo:
- Kuondoa maandishi kabla ya herufi fulani , charaza herufi inayotanguliwa na nyota (*char).
- Ili kuondoa maandishi baada ya herufi fulani , charaza herufi ikifuatwa na nyota (char) *).
- Ili kufuta kamba ndogo kati ya herufi mbili , andika kinyota kilichozungukwa na herufi 2 (char*char).
- Ondoka kwenye Badilisha na kisanduku tupu.
- Bofya Badilisha zote .
Kwa mfano, ili kuondoa kila kitu baada ya koma ikijumuisha koma yenyewe, weka koma na ishara ya kinyota (,*) kwenye kisanduku cha Tafuta nini , na utapata matokeo yafuatayo:
Ili kufuta kamba ndogo kabla ya koma , andika kinyota, koma,kila kitu baada ya koma ya 1 katika A2, fomula katika B2 ni:
=RemoveText(A3, ", ", 1, TRUE)
Kufuta kila kitu kabla ya koma ya 1 katika A2, fomula katika C2 ni:
=RemoveText(A3, ", ", 1, FALSE)
Kwa kuwa utendakazi wetu maalum unakubali mfuatano wa kitenganishi , tunaweka koma na nafasi (", ") katika hoja ya 2 ili kuepuka shida ya kupunguza nafasi zinazoongoza baadaye.
Utendaji wetu maalum hufanya kazi kwa uzuri, sivyo? Lakini ikiwa unafikiri ni suluhisho la kina, bado hujaona mfano unaofuata :)
Futa kila kitu kabla, baada au kati ya vibambo
Ili kupata chaguo zaidi za kuondoa herufi binafsi au maandishi kutoka kwa visanduku vingi, kwa kulinganisha au nafasi, ongeza Ultimate Suite kwenye kisanduku chako cha zana cha Excel.
Hapa, tutaangalia kwa makini kipengele cha Ondoa kwa Nafasi kilicho kwenye
9>Ablebits Datatab > Nakalakikundi > Ondoa.
Hapa chini, tutashughulikia hizi mbili matukio ya kawaida.
Ondoa kila kitu kabla au baada ya maandishi fulani
Tuseme mifuatano ya chanzo chako yote ina neno au maandishi ya kawaida na ungependa kufuta kila kitu kabla au baada ya maandishi hayo. Ili kuifanya, chagua chanzo chako cha data, endesha zana ya Ondoa kwa Nafasi , na uisanidi kama inavyoonyeshwa hapa chini:
- Chagua herufi zote kabla ya maandishi au Herufi zote baada ya chaguo la maandishi na uandike maandishi muhimu (au herufi) kwenye kisanduku kinachofuata.kwake.
- Kulingana na kama herufi kubwa na ndogo zinafaa kuchukuliwa kama herufi tofauti au zile zile, chagua au uondoe uteuzi kwenye kisanduku cha Nyeti kwa Kesi .
- Gonga Ondoa .
Katika mfano huu, tunaondoa vibambo vyote vinavyotangulia neno "kosa" katika seli A2:A8:
Na upate matokeo hasa tunayotafuta:
Ondoa maandishi kati ya vibambo viwili
katika hali ambayo taarifa isiyo muhimu ni kati ya herufi 2 mahususi, hivi ndivyo unavyoweza kufanya. unaweza kuifuta kwa haraka:
- Chagua Ondoa kamba ndogo zote na uandike herufi mbili katika visanduku vilivyo hapa chini.
- Ikiwa herufi za "kati" zitaondolewa pia. , angalia kisanduku cha Ikijumuisha vikomo .
- Bofya Ondoa .
Kama kwa mfano, tunafuta kila kitu kati ya herufi mbili za tilde (~), na kupata mifuatano iliyosafishwa kikamilifu kama matokeo:
Ili kujaribu vipengele vingine muhimu vilivyojumuishwa na hii ya kazi nyingi. chombo, nakuhimiza kupakua e toleo la hesabu mwishoni mwa chapisho hili. Asante kwa kusoma na kutumaini kukuona kwenye blogu yetu wiki ijayo!
Vipakuliwa vinavyopatikana
Ondoa herufi za kwanza au za mwisho - mifano (.xlsm file)
Ultimate Suite - toleo la majaribio (.exe faili)
na nafasi (*, ) katika Pata ninikisanduku.Tafadhali kumbuka kuwa tunabadilisha si koma tu bali koma na nafasi ili kuzuia kuongoza. nafasi katika matokeo. Ikiwa data yako itatenganishwa kwa koma bila nafasi, basi tumia kinyota ikifuatiwa na koma (*,).
Ili kufuta maandishi kati ya koma mbili , tumia nyota iliyozungukwa na koma (,*,).
Kidokezo. Ikiwa ungependa kuwa na majina na nambari za simu zitenganishwe kwa koma, basi chapa koma (,) katika sehemu ya Badilisha na .
Ondoa sehemu ya maandishi kwa kutumia Flash Fill
Katika matoleo ya kisasa ya Excel (2013 na matoleo mapya zaidi), kuna njia moja rahisi zaidi ya kufuta maandishi yanayotangulia au kufuata herufi mahususi - kipengele cha Kujaza Flash. Hivi ndivyo inavyofanya kazi:
- Katika kisanduku kando ya kisanduku cha kwanza chenye data yako, charaza tokeo linalotarajiwa na ubonyeze Enter .
- Anza kuandika thamani inayofaa katika kisanduku kifuatacho. Baada ya Excel kuhisi mchoro katika thamani unazoingiza, itaonyesha onyesho la kukagua visanduku vilivyosalia kwa kufuata mchoro sawa.
- Bofya kitufe cha Enter ili ukubali pendekezo.
Umemaliza!
Ondoa maandishi kwa kutumia fomula
Katika Microsoft Excel, upotoshaji mwingi wa data unaofanywa kwa kutumia vipengele vilivyojengewa ndani pia unaweza kukamilishwa kwa fomula. Tofauti na mbinu za awali, fomula hazifanyi mabadiliko yoyote kwa data asili na kukupa udhibiti zaidimatokeo.
Jinsi ya kuondoa kila kitu baada ya herufi maalum
Ili kufuta maandishi baada ya herufi fulani, fomula ya jumla ni:
LEFT( seli , TAFUTA (" char ", kisanduku ) -1)Hapa, tunatumia kitendakazi cha TAFUTA kupata nafasi ya herufi na kuipitisha kwenye kitendakazi cha LEFT, kwa hivyo inachomoa. idadi inayolingana ya wahusika tangu mwanzo wa kamba. Herufi moja imetolewa kutoka kwa nambari iliyorejeshwa na SEARCH ili kuondoa kikomo kutoka kwa matokeo.
Kwa mfano, ili kuondoa sehemu ya mfuatano baada ya koma, unaingiza fomula iliyo hapa chini katika B2 na kuiburuta chini kupitia B7. :
=LEFT(A2, SEARCH(",", A2) -1)
Jinsi ya kuondoa kila kitu kabla ya herufi maalum
Ili kufuta sehemu ya mfuatano wa maandishi kabla ya herufi fulani, fomula ya jumla ni:
RIGHT( seli , LEN( seli ) - SEARCH(" char ", seli ))Hapa, tunahesabu tena nafasi ya mhusika anayelengwa kwa usaidizi wa TAFUTA, kuiondoa kutoka kwa urefu wa kamba iliyorejeshwa na LEN, na kupitisha tofauti hiyo kwa kazi ya KULIA, kwa hivyo inavuta herufi nyingi kutoka mwisho wa safu. mfuatano.
Kwa mfano, ili kuondoa maandishi kabla ya koma, fomula ni:
=RIGHT(A2, LEN(A2) - SEARCH(",", A2))
Kwa upande wetu, koma hufuatwa na herufi ya nafasi. Ili kuepuka nafasi zinazoongoza katika matokeo, tunafunga fomula ya msingi katika chaguo za kukokotoa za TRIM:
=TRIM(RIGHT(A2, LEN(A2) - SEARCH(",", A2)))
Vidokezo:
- zote mbiliya mifano iliyo hapo juu inadhania kuwa kuna mfano mmoja tu wa kikomo kwenye mfuatano wa asili. Iwapo kuna matukio mengi, maandishi yataondolewa kabla/baada ya tukio la kwanza .
- Kitendaji cha TAFUTA ni si nyeti kwa ukubwa , kumaanisha kuwa hakuna tofauti kati ya herufi ndogo na kubwa. Ikiwa herufi yako mahususi ni herufi na unataka kutofautisha herufi, basi tumia nyeti-nyeti TAFUTA badala ya TAFUTA.
Jinsi ya kufuta maandishi baada ya kutokea kwa Nth. ya herufi
Katika hali wakati mfuatano wa chanzo una matukio mengi ya kikomo, unaweza kuhitaji kuondoa maandishi baada ya tukio maalum. Kwa hili, tumia fomula ifuatayo:
LEFT( seli , TAFUTA("#", SUBSTITUTE( seli , " char ), "#" , n )) -1)Ambapo n ni utokeaji wa herufi ambapo baada ya hapo ili kuondoa maandishi.
Mantiki ya ndani ya fomula hii inahitaji kutumia baadhi ya herufi. ambayo haipo popote kwenye data ya chanzo, ishara ya hashi (#) kwa upande wetu. Ikiwa herufi hii itatokea kwenye seti yako ya data, basi tumia kitu kingine badala ya "#".
Kwa mfano, kuondoa kila kitu baada ya koma ya 2 katika A2 (na koma yenyewe), fomula ni:
=LEFT(A2, FIND("#", SUBSTITUTE(A2, ",", "#", 2)) -1)
Jinsi fomula hii inavyofanya kazi:
Sehemu muhimu ya fomula ni chaguo za kukokotoa za FIND inayokokotoa nafasi ya nthdelimiter (comma kwa upande wetu). Hivi ndivyo jinsi:
Tunabadilisha koma ya 2 katika A2 na alama ya heshi (au herufi nyingine yoyote ambayo haipo kwenye data yako) kwa usaidizi wa SUBSTITUTE:
SUBSTITUTE(A2, ",", "#", 2)
Mfuatano unaotokana huenda kwa hoja ya 2 ya FIND, kwa hivyo inapata nafasi ya "#" katika mfuatano huo:
FIND("#", "Emma, Design# (102) 123-4568")
FIND inatuambia kuwa "#" ni herufi ya 13. katika kamba. Ili kujua idadi ya herufi zinazoitangulia, toa 1 tu, na utapata 12 kama matokeo:
FIND("#", SUBSTITUTE(A2, ",", "#", 2)) - 1
Nambari hii huenda moja kwa moja kwenye hoja ya num_chars ya KUSHOTO ikiiomba ivute herufi 12 za kwanza kutoka A2:
=LEFT(A2, 12)
Ndivyo!
Jinsi ya kufuta maandishi kabla ya Nth kutokea kwa herufi
Mfumo wa jumla wa kuondoa mfuatano mdogo kabla ya herufi fulani ni:
RIGHT(SUBSTITUTE( seli , " char ", "#", n ) ), LEN( seli ) - TAFUTA("#", SUBSTITUTE( seli , " char ", "#", n )) -1)Kwa mfano, kuondoa maandishi kabla ya koma ya 2 katika A2, fomula ni:
=RIGHT(SUBSTITUTE(A2, ",", "#", 2), LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", 2)) -1)
Ili kuondoa nafasi inayoongoza, tunatumia tena TRIM. fanya kazi kama kanga:
=TRIM(RIGHT(SUBSTITUTE(A2, ",", "#", 2), LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", 2))))
Jinsi fomula hii inavyofanya kazi:
Kwa muhtasari, tunapata maelezo ni herufi ngapi ziko baada ya nth delimiter na kutoa kamba ndogo ya urefu unaolingana kutoka kulia. Ufuatao ni uchanganuzi wa fomula:
Kwanza, tunabadilisha koma ya 2 katika A2 kwa heshi.ishara:
SUBSTITUTE(A2, ",", "#", 2)
Mfuatano unaotokana huenda kwa maandishi hoja ya HAKI:
RIGHT("Emma, Design# (102) 123-4568", …
Ifuatayo, tunahitaji fafanua ni herufi ngapi za kutoa kutoka mwisho wa mfuatano. Kwa hili, tunapata nafasi ya alama ya heshi katika mfuatano wa hapo juu (ambayo ni 13):
FIND("#", SUBSTITUTE(A2, ",", "#", 2))
Na uitoe kutoka kwa jumla ya urefu wa mfuatano (ambao ni sawa na 28):
LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", 2))
Tofauti (15) inakwenda kwenye hoja ya pili ya HAKI inayoiagiza ivute herufi 15 za mwisho kutoka kwa mfuatano wa hoja ya kwanza:
RIGHT("Emma, Design# (102) 123-4568", 15)
Toleo ni kamba ndogo " (102) 123-4568", ambayo iko karibu sana na matokeo unayotaka, isipokuwa nafasi inayoongoza. Kwa hivyo, tunatumia chaguo za kukokotoa za TRIM ili kuiondoa.
Jinsi ya kuondoa maandishi baada ya kutokea kwa herufi mara ya mwisho
Ikiwa thamani zako zitatenganishwa kwa idadi tofauti ya vikomo, utafanya hivyo. inaweza kutaka kuondoa kila kitu baada ya mfano wa mwisho wa delimiter hiyo. Hili linaweza kufanywa kwa fomula ifuatayo:
LEFT( seli , TAFUTA("#", SUBSTITUTE( seli , " char ), "# ", LEN( kisanduku ) - LEN(SUBSTITUTE( kisanduku , " char ", "")))) -1)Tuseme safu wima A ina habari mbalimbali kuhusu wafanyakazi, lakini thamani baada ya koma ya mwisho daima ni nambari ya simu. Lengo lako ni kuondoa nambari za simu na kuhifadhi maelezo mengine yote.
Ili kufikia lengo, unaweza kuondoa maandishi baada ya koma ya mwisho katika A2 ukitumia hii.formula:
=LEFT(A2, FIND("#", SUBSTITUTE(A2, ",", "#", LEN(A2) - LEN(SUBSTITUTE(A2, ",","")))) -1)
Nakili fomula chini ya safuwima, na utapata matokeo haya:
Jinsi hii formula inafanya kazi:
Kiini cha fomula ni kwamba tunabainisha nafasi ya kikomo cha mwisho (koma) katika mfuatano na kuvuta kamba ndogo kutoka kushoto hadi kikomo. Kupata nafasi ya kikomo ndiyo sehemu gumu zaidi, na hivi ndivyo tunavyoishughulikia:
Kwanza, tunagundua ni koma ngapi kwenye mfuatano wa asili. Kwa hili, tunabadilisha kila koma bila chochote ("") na kutumikia kamba inayosababisha kwa kazi ya LEN:
LEN(SUBSTITUTE(A2, ",",""))
Kwa A2, matokeo ni 35, ambayo ni idadi ya wahusika. kwa A2 bila koma.
Ondoa nambari iliyo hapo juu kutoka kwa jumla ya urefu wa mfuatano (herufi 38):
LEN(A2) - LEN(SUBSTITUTE(A2, ",",""))
… na utapata 3, ambayo ni jumla ya nambari. ya koma katika A2 (na pia nambari ya ordinal ya koma ya mwisho).
Inayofuata, unatumia mseto ambao tayari umefahamika wa vitendaji vya FIND na SUBSTITUTE ili kupata nafasi ya koma ya mwisho katika mfuatano. Nambari ya mfano (koma ya 3 kwa upande wetu) imetolewa na fomula iliyotajwa hapo juu ya LEN SUBSTITUTE:
FIND("#", SUBSTITUTE(A2, ",", "#", 3))
Inaonekana kwamba koma ya 3 ni herufi ya 23 katika A2, kumaanisha kwamba tunahitaji kutoa herufi 22 zinazoitangulia. Kwa hivyo, tunaweka fomula iliyo hapo juu minus 1 katika num_chars hoja ya LEFT:
LEFT(A2, 23-1)
Jinsi ya kuondoa maandishi kabla ya kutokea kwa herufi mara ya mwisho
Ili kufutakila kitu kabla ya tukio la mwisho la herufi maalum, fomula ya jumla ni:
RIGHT( seli , LEN( seli ) - FIND("#", SUBSTITUTE( ) seli , " char ", "#", LEN( seli ) - LEN(SUBSTITUTE( seli , " char ) ", ""))))))Katika jedwali letu la sampuli, ili kuondoa maandishi kabla ya koma ya mwisho, fomula inachukua fomu hii:
=RIGHT(A2, LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", LEN(A2) - LEN(SUBSTITUTE(A2, ",","")))))
Kama mguso wa kumalizia, iweke kwenye chaguo la kukokotoa la TRIM ili kuondoa nafasi zinazoongoza:
=TRIM(RIGHT(A2, LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", LEN(A2) - LEN(SUBSTITUTE(A2, ",",""))))))
Jinsi fomula hii inavyofanya kazi:
Kwa muhtasari, tunapata nafasi ya koma ya mwisho kama ilivyofafanuliwa katika mfano uliopita na kuiondoa kutoka kwa jumla ya urefu wa mfuatano:
LEN(A2) - FIND("#", SUBSTITUTE(A2, ",", "#", LEN(A2) - LEN(SUBSTITUTE(A2, ",",""))))
Kwa matokeo, tunapata idadi ya herufi baada ya koma ya mwisho na kuipitisha kwa kitendakazi KULIA, kwa hivyo huleta herufi nyingi kutoka mwisho wa mfuatano.
Kitendaji maalum cha kuondoa maandishi kwa kila upande wa herufi
Kama umeona katika mifano hapo juu, unaweza kutatua karibu kesi yoyote ya utumiaji kwa kutumia asilia ya Excel f michanganyiko katika michanganyiko tofauti. Shida ni kwamba unahitaji kukumbuka fomula chache za hila. Hmm, vipi ikiwa tutaandika kazi yetu wenyewe ili kufunika matukio yote? Inaonekana kama wazo zuri. Kwa hivyo, ongeza nambari ifuatayo ya VBA kwenye kitabu chako cha kazi (hatua za kina za kuingiza VBA katika Excel ziko hapa):
Function RemoveText(str As String , delimiter As String , tukio As Integer , is_after AsBoolean ) Dim delimiter_num, start_num, delimiter_len As Integer Dim str_result As String delimiter_num = 0 start_num = 1 str_result = "" delimiter_len = Len(delimiter) Kwa i = 1 Ili kutokea delimiter_num = InStr(start_numt, vb) delimiter, vb) < delimiter_num Kisha start_num = delimiter_num + delimiter_len Maliza Ikifuata i Kama 0 < delimiter_num Kisha Ikiwa Kweli = ni_baada ya Kisha str_result = Kati(str, 1, start_num - delimiter_len - 1) Else str_result = Mid(str, start_num) Maliza Ikiwa Mwisho Ikiwa RemoveText = str_result Mwisho KaziKitendaji chetu kinaitwa RemoveText na ina syntax ifuatayo:
RemoveText(string, delimiter, events, is_after)Where:
String - ndio mfuatano wa maandishi asilia. Inaweza kuwakilishwa na rejeleo la seli.
Delimiter - herufi kabla/baada ya kuondoa maandishi.
Tukio - mfano wa delimiter.
Is_after - thamani ya Boolean ambayo inaonyesha upande gani wa kikomo ili kuondoa maandishi. Inaweza kuwa herufi moja au mfuatano wa herufi.
- KWELI - futa kila kitu baada ya kikomo (pamoja na kikomo chenyewe).
- SIYO - futa kila kitu kabla ya kikomo (pamoja na kikomo chenyewe). delimiter yenyewe).
Pindi msimbo wa chaguo za kukokotoa unapowekwa kwenye kitabu chako cha kazi, unaweza kuondoa mifuatano midogo kutoka kwenye seli ukitumia fomula fupi na maridadi.
Kwa mfano, ili kufuta