સામગ્રીઓનું કોષ્ટક
ટ્યુટોરીયલ બતાવે છે કે કેવી રીતે એક્સેલમાં વિવિધ ટેક્સ્ટ સ્ટ્રીંગ્સમાંથી ફોર્મ્યુલા અને એક્સટ્રેક્ટ ટૂલનો ઉપયોગ કરીને નંબર કાઢવો.
જ્યારે આપેલ લંબાઈના ટેક્સ્ટ સ્ટ્રિંગનો ભાગ કાઢવાની વાત આવે છે , એક્સેલ કાર્યને ઝડપથી હેન્ડલ કરવા માટે ત્રણ સબસ્ટ્રિંગ ફંક્શન્સ (ડાબે, જમણે અને મધ્ય) પ્રદાન કરે છે. જ્યારે આલ્ફાન્યૂમેરિક સ્ટ્રિંગમાંથી નંબરો કાઢવાની વાત આવે છે, ત્યારે માઈક્રોસોફ્ટ એક્સેલ આપે છે... કંઈ નહીં.
એક્સેલમાં સ્ટ્રિંગમાંથી નંબર મેળવવા માટે, થોડી ચાતુર્ય, થોડી ધીરજ અને વિવિધ કાર્યોનો સમૂહ લે છે. એકબીજામાં માળો. અથવા, તમે એક્સટ્રેક્ટ ટૂલ ચલાવી શકો છો અને માઉસ ક્લિકથી કામ પૂર્ણ કરી શકો છો. નીચે તમને બંને પદ્ધતિઓ પર સંપૂર્ણ વિગતો મળશે.
ટેક્સ્ટ સ્ટ્રિંગના અંતમાંથી નંબર કેવી રીતે કાઢવો
જ્યારે તમારી પાસે આલ્ફાન્યૂમેરિક સ્ટ્રિંગ્સની કૉલમ હોય જ્યાં નંબર પછી આવે છે ટેક્સ્ટ, તમે તેને મેળવવા માટે નીચેના સૂત્રનો ઉપયોગ કરી શકો છો.
RIGHT( cell, LEN( cell) - MAX(IF(ISNUMBER(MID( cell)>, રો 2>))), 0)))આપણે થોડા સમય પછી સૂત્રના તર્ક પર ધ્યાન આપીશું. હમણાં માટે, ફક્ત સેલ ને મૂળ સ્ટ્રિંગ (અમારા કિસ્સામાં A2) ધરાવતા કોષના સંદર્ભ સાથે બદલો, અને તે જ પંક્તિમાં કોઈપણ ખાલી કોષમાં સૂત્ર દાખલ કરો, B2 માં કહો:
=RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)))
આ સૂત્ર માત્ર અંતથી જ નંબર મેળવે છે. જો કોઈ શબ્દમાળામાં પણ શરૂઆતમાં અથવા મધ્યમાં સંખ્યાઓ હોય, તો તે છેઅવગણવામાં આવ્યું:
નિષ્કર્ષણ RIGHT ફંક્શન સાથે કરવામાં આવે છે જે ટેક્સ્ટ ફંક્શન્સની શ્રેણી સાથે સંબંધિત છે. આ ફંક્શનનું આઉટપુટ હંમેશા ટેક્સ્ટ છે. અમારા કિસ્સામાં, પરિણામ એ સંખ્યાત્મક સબસ્ટ્રિંગ છે, જે એક્સેલની દ્રષ્ટિએ ટેક્સ્ટ પણ છે, નંબર નહીં.
જો તમને પરિણામની જરૂર હોય તો નંબર (જેનો તમે આગળની ગણતરીઓમાં ઉપયોગ કરી શકો છો), પછી ફોર્મ્યુલાને VALUE ફંક્શનમાં લપેટી દો અથવા પરિણામ બદલતું ન હોય તેવી અંકગણિત કામગીરી કરો, કહો, 1 વડે ગુણાકાર કરો અથવા 0 ઉમેરો. શબ્દમાળાઓમાં ભૂલોને પકડવા માટે સિંગલ નંબર, IFERROR ફંક્શનનો ઉપયોગ કરો. ઉદાહરણ તરીકે:
=IFERROR(VALUE(RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)*1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)))), "")
અથવા
=IFERROR(RIGHT(A2, LEN(A2) - MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1) *1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0))) +0, "")
નોંધ. ડાયનેમિક એરે એક્સેલ (ઓફિસ 365 અને 2021) માં, તમે એન્ટર કી વડે સામાન્ય રીતે ફોર્મ્યુલા દાખલ કરો છો. એક્સેલ 2019 અને પહેલાના સમયમાં, તે માત્ર અરે ફોર્મ્યુલા તરીકે કામ કરે છે, તેથી તેને પૂર્ણ કરવા માટે Ctrl + Shift + Enter દબાવવાનું યાદ રાખો.
આ ફોર્મ્યુલા કેવી રીતે કાર્ય કરે છે:
આલ્ફાન્યૂમેરિક સ્ટ્રિંગમાંથી નંબર કાઢવા માટે, તમારે જાણવાની પ્રથમ વસ્તુ એ છે કે નિષ્કર્ષણ ક્યાંથી શરૂ કરવું. સ્ટ્રીંગમાં છેલ્લા બિન-સંખ્યાત્મક અક્ષરની સ્થિતિ આ મુશ્કેલ સૂત્રની મદદથી નક્કી કરવામાં આવે છે:
MAX(IF(ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN( A2))), 1)*1)=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0))
તર્ક સમજવા માટે, ચાલો તેની અંદરથી તપાસ કરીએ :
ROW(Indirect("1:"&LEN(A2))) સંયોજનસ્ત્રોત સ્ટ્રિંગ (A2) માં કુલ અક્ષરોને અનુરૂપ સંખ્યાઓનો ક્રમ બનાવે છે, અને અમે આ ક્રમિક સંખ્યાઓને MID ને પ્રારંભિક સંખ્યાઓ તરીકે સેવા આપીએ છીએ:
MID(A2, {1;2;3;4 ;5;6;7;8}, 1)
MID ફંક્શન A2 માંથી દરેક વ્યક્તિગત અક્ષરને ખેંચે છે અને તેમને એરે તરીકે પરત કરે છે:
{"0";"5";" -";"E";"C";"-";"0";"1"}
જેમ કે MID એ ટેક્સ્ટ ફંક્શન છે, તેનું આઉટપુટ હંમેશા ટેક્સ્ટ હોય છે (જેમ તમે નોટિસ કરી શકો છો, બધા અક્ષરો અવતરણ ચિહ્નોમાં બંધ છે). આંકડાકીય રાશિઓને સંખ્યામાં ફેરવવા માટે, અમે એરેને 1 વડે ગુણાકાર કરીએ છીએ (ડબલ નેગેશન --MID() સમાન અસર કરશે). આ ઓપરેશનનું પરિણામ એ સંખ્યાઓ અને #VALUE! બિન-સંખ્યાત્મક અક્ષરોનું પ્રતિનિધિત્વ કરતી ભૂલો:
ISNUMBER({0;5;#VALUE!;#VALUE!;#VALUE!;#VALUE!;0;1})
ISNUMBER કાર્ય એરેના દરેક ઘટકનું મૂલ્યાંકન કરે છે અને તેનો ચુકાદો બુલિયન મૂલ્યોના રૂપમાં આપે છે - સંખ્યાઓ માટે TRUE, અન્ય કંઈપણ માટે FALSE:
{TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE}
આ એરે IF ફંક્શનના લોજિકલ ટેસ્ટમાં જાય છે, જ્યાં એરેના દરેક ઘટકની સરખામણી FALSE સાથે કરવામાં આવે છે:
IF({TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE ;TRUE}=FALSE, ROW(INDIRECT("1:"&LEN(A2))), 0)
દરેક FALSE (બિન-સંખ્યાત્મક મૂલ્ય) માટે, અન્ય ROW(INDIRECT()) ફંક્શન આપે છે શબ્દમાળામાં તેની સંબંધિત સ્થિતિ. દરેક TRUE (સંખ્યાત્મક મૂલ્ય) માટે, શૂન્ય પરત કરવામાં આવે છે. પરિણામી એરે આ રીતે દેખાય છેઅનુસરે છે:
{0;0;3;4;5;6;0;0}
બાકી સરળ છે. MAX ફંક્શન ઉપરોક્ત એરેમાં સૌથી વધુ સંખ્યા શોધે છે, જે શબ્દમાળામાં છેલ્લી બિન-સંખ્યાત્મક મૂલ્યની સ્થિતિ છે (અમારા કિસ્સામાં 6). સરળ રીતે, LEN દ્વારા પરત કરવામાં આવેલ સ્ટ્રિંગની કુલ લંબાઈમાંથી તે સ્થિતિ બાદ કરો અને પરિણામને જમણી બાજુએ પાસ કરો જેથી તે જણાવે કે સ્ટ્રિંગની જમણી બાજુથી કેટલા અક્ષરો કાઢવાના છે:
જમણે(A2, LEN) (A2) - 6)
થઈ ગયું!
ટેક્સ્ટ સ્ટ્રિંગની શરૂઆતથી નંબર કેવી રીતે કાઢવો
જો તમે એવા રેકોર્ડ્સ સાથે કામ કરી રહ્યા છો જ્યાં ટેક્સ્ટ નંબર પછી દેખાય છે, તો તમે આ સામાન્ય સૂત્રનો ઉપયોગ કરીને સ્ટ્રિંગની શરૂઆતથી નંબર કાઢો:
LEFT( સેલ, MATCH(FALSE, ISNUMBER(MID( cell, ROW(Indirect("1:") "&LEN( સેલ)+1)), 1) *1), 0) -1)A2 માં મૂળ શબ્દમાળા સાથે, નંબર મેળવવા માટે નીચેના સૂત્રનો ઉપયોગ કરો:
=LEFT(A2, MATCH(FALSE, ISNUMBER(MID(A2, ROW(INDIRECT("1:"&LEN(A2)+1)), 1) *1), 0) -1)
મધ્યમાં કે અંતમાં કેટલા અંકો હોય તે કોઈ બાબત નથી, માત્ર પ્રારંભિક સંખ્યા જ કાઢવામાં આવે છે:
નોંધ. એક્સેલ 365 અને એક્સેલ 2021 માં, ડાયનેમિક એરેના સમર્થનને કારણે, નિયમિત ફોર્મ્યુલા બરાબર કામ કરે છે. એક્સેલ 2019 અને તેના પહેલાના સમયમાં, તમારે તેને સ્પષ્ટપણે એરે ફોર્મ્યુલા બનાવવા માટે Ctrl + Shift + Enter દબાવવું જોઈએ.
આ ફોર્મ્યુલા કેવી રીતે કાર્ય કરે છે:
અહીં, સ્ત્રોત સ્ટ્રિંગ વત્તા 1 (તેની ભૂમિકાવધારાના અક્ષર થોડી વાર પછી સ્પષ્ટ થશે.
ROW(INDIRECT("1:"&LEN(A2)+1))
MID અને ISNUMBER એ જ કામ કરે છે જેમ કે અગાઉનું ઉદાહરણ - MID વ્યક્તિગત અક્ષરોને ખેંચે છે અને ISNUMBER તેમને તાર્કિક મૂલ્યોમાં રૂપાંતરિત કરે છે. TRUE's અને FALSE's ની પરિણામી એરે લુકઅપ એરે તરીકે MATCH ફંક્શન પર જાય છે:
MATCH(FALSE, {TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;TRUE;TRUE;FALSE}, 0)
મેચ પ્રથમ FALSE ની સંબંધિત સ્થિતિની ગણતરી કરે છે, જે આપણને સ્ટ્રિંગમાં પ્રથમ બિન-સંખ્યાત્મક અક્ષરની સ્થિતિ આપે છે (A2 માં 3). પહેલાની સંખ્યાઓ કાઢવા માટે, અમે પ્રથમ ટેક્સ્ટ અક્ષરની સ્થિતિમાંથી 1 બાદ કરીએ છીએ અને LEFT ફંક્શનની સંખ્યા_અક્ષરો તર્કમાં તફાવત પ્રદાન કરીએ છીએ:
LEFT(A2, 3-1)
હવે, ROW(INDIRECT()+1)) દ્વારા જનરેટ થયેલ ક્રમમાં "વધારાના" અક્ષર પર પાછા જાઓ. જેમ તમે પહેલાથી જ જાણો છો, આ ક્રમ MID કાર્ય માટે પ્રારંભિક બિંદુઓ પ્રદાન કરે છે. +1 વિના, MID મૂળ સ્ટ્રિંગમાં જેટલા અક્ષરો છે તેટલા જ અક્ષરો બહાર કાઢશે. જો શબ્દમાળામાં માત્ર સંખ્યાઓ હોય, તો ISNUMBER માત્ર TRUE પરત કરશે જ્યારે MATCH ને ઓછામાં ઓછા એક FALSE ની જરૂર છે. તેની ખાતરી કરવા માટે, અમે સ્ટ્રિંગની કુલ લંબાઈમાં એક વધુ અક્ષર ઉમેરીએ છીએ, જેને MID ફંક્શન ખાલી સ્ટ્રિંગમાં કન્વર્ટ કરશે. ઉદાહરણ તરીકે, B7 માં, MID આ એરે આપે છે:
{"1";"2";"3";"4";""}
નોંધ. જમણી ફંક્શનની જેમ, ડાબે પણ સંખ્યાત્મક પરત કરે છેસબસ્ટ્રિંગ , જે તકનીકી રીતે ટેક્સ્ટ છે, નંબર નહીં. આંકડાકીય સ્ટ્રિંગને બદલે સંખ્યા તરીકે પરિણામ મેળવવા માટે, VALUE ફંક્શનમાં સૂત્રને માળો અથવા પ્રથમ ઉદાહરણમાં બતાવ્યા પ્રમાણે પરિણામને 1 વડે ગુણાકાર કરો.
સ્ટ્રિંગમાં કોઈપણ સ્થાનેથી સંખ્યા કેવી રીતે મેળવવી
જો તમારું કાર્ય શબ્દમાળામાં ગમે ત્યાંથી સંખ્યા કાઢવાનું સૂચન કરે છે, તો તમે MrExcel ફોરમ પર પ્રકાશિત નીચે આપેલા મનને આશ્ચર્યજનક સૂત્રનો ઉપયોગ કરી શકો છો:
=SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1)) * ROW(INDIRECT("1:"&LEN(A2))), 0), ROW(INDIRECT("1:"&LEN(A2))))+1, 1) * 10^ROW(INDIRECT("1:"&LEN(A2)))/10)
જ્યાં A2 છે મૂળ ટેક્સ્ટ સ્ટ્રિંગ.
આ ફોર્મ્યુલાને તોડવા માટે એક અલગ લેખની જરૂર પડશે, જેથી તમે તેને તમારી વર્કશીટમાં કૉપિ કરી શકો તેની ખાતરી કરવા માટે કે તે ખરેખર કામ કરે છે :)
પરિણામોની તપાસ કર્યા પછી, જો કે, તમે એક નજીવી ખામી જોશો - જો સ્ત્રોત શબ્દમાળામાં સંખ્યા ન હોય, તો સૂત્ર શૂન્ય પરત કરે છે, જેમ કે ઉપરના સ્ક્રીનશોટમાં પંક્તિ 6 માં. આને ઠીક કરવા માટે, તમે IF સ્ટેટમેન્ટમાં સૂત્રને લપેટી શકો છો, જેનો તાર્કિક પરીક્ષણ સ્રોત સ્ટ્રિંગમાં કોઈપણ સંખ્યા ધરાવે છે કે કેમ તે તપાસે છે. જો તે થાય, તો ફોર્મ્યુલા નંબરને બહાર કાઢે છે, અન્યથા ખાલી સ્ટ્રિંગ પરત કરે છે:
=IF(SUM(LEN(A2)-LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"}, "")))>0, SUMPRODUCT(MID(0&A2, LARGE(INDEX(ISNUMBER(--MID(A2,ROW(INDIRECT("$1:$"&LEN(A2))),1))* ROW(INDIRECT("$1:$"&LEN(A2))),0), ROW(INDIRECT("$1:$"&LEN(A2))))+1,1) * 10^ROW(INDIRECT("$1:$"&LEN(A2)))/10),"")
નીચેના સ્ક્રીનશોટમાં બતાવ્યા પ્રમાણે, સુધારેલ ફોર્મ્યુલા સુંદર રીતે કામ કરે છે (અમારા એક્સેલ ગુરુ, એલેક્સને અભિનંદન, આ સુધારણા માટે):
અગાઉના તમામ ઉદાહરણોથી વિપરીત, આ ફોર્મ્યુલાનું પરિણામ નંબર છે. આની ખાતરી કરવા માટે, ફક્ત કૉલમ B માં જમણે-સંરેખિત મૂલ્યો પર ધ્યાન આપો અને આગળના શૂન્યને કાપી નાખો.
ટીપ. Excel 365 માં -એક્સેલ 2019, TEXTJOIN ફંક્શનની મદદથી વધુ સરળ ઉકેલ છે. કૃપા કરીને જુઓ કે ટેક્સ્ટ કેવી રીતે દૂર કરવી અને નંબરો રાખવા.
અલ્ટિમેટ સ્યુટ સાથે ટેક્સ્ટ સ્ટ્રિંગમાંથી નંબર કાઢો
તમે હમણાં જ જોયું તેમ, ટેક્સ્ટ સ્ટ્રિંગમાંથી નંબર ખેંચવા માટે કોઈ તુચ્છ એક્સેલ ફોર્મ્યુલા નથી. જો તમને તમારા ડેટા સેટ્સ માટે ફોર્મ્યુલાને સમજવામાં અથવા તેને ટ્વિક કરવામાં મુશ્કેલી હોય, તો તમને એક્સેલમાં સ્ટ્રિંગમાંથી નંબર મેળવવાની આ સરળ રીત ગમશે.
તમારા એક્સેલ રિબનમાં અમારા અલ્ટીમેટ સ્યુટ ઉમેરવા સાથે, તમે આ રીતે કોઈપણ આલ્ફાન્યૂમેરિક સ્ટ્રિંગમાંથી ઝડપથી નંબર મેળવી શકો છો:
- Ablebits Data ટેબ > ટેક્સ્ટ જૂથ પર જાઓ અને એક્સ્ટ્રેક્ટ પર ક્લિક કરો :
- સ્રોત શબ્દમાળાઓ સાથેના તમામ કોષોને પસંદ કરો.
- એક્સટ્રેક્ટ ટૂલના ફલક પર, એક્સ્ટ્રેક્ટ નંબર્સ રેડિયો બટન પસંદ કરો.
- તમે પરિણામોને ફોર્મ્યુલા અથવા મૂલ્યો બનાવવા માંગો છો તેના આધારે, સૂત્ર તરીકે દાખલ કરો બોક્સ પસંદ કરો અથવા તેને પસંદ કર્યા વિના છોડો (ડિફૉલ્ટ).
મારી સલાહ છે કે આ બોક્સ પસંદ કરો જો તમે ઇચ્છો છો કે એક્સટ્રેક્ટેડ નંબરો સ્ત્રોત સ્ટ્રીંગ્સમાં કોઈપણ ફેરફાર થાય કે તરત જ આપમેળે અપડેટ થાય. જો તમે ઇચ્છો છો કે પરિણામો મૂળ શબ્દમાળાઓ પર સ્વતંત્ર હોય (દા.ત. જો તમે પછીના સમયે સ્રોત ડેટાને દૂર કરવાની યોજના બનાવો છો), તો આ બૉક્સ પસંદ કરશો નહીં.
- પરિણામો દાખલ કરો બટન પર ક્લિક કરો. થઈ ગયું!
પહેલાના ઉદાહરણની જેમ, પરિણામોનિષ્કર્ષણ એ સંખ્યાઓ છે, એટલે કે તમે તેમની સાથે ગણતરી, સરવાળો, સરેરાશ અથવા કોઈપણ અન્ય ગણતરી કરવા માટે સ્વતંત્ર છો.
આ ઉદાહરણમાં, અમે પરિણામોને <9 તરીકે દાખલ કરવાનું પસંદ કર્યું છે>મૂલ્યો , અને એડ-ઇન એ બરાબર કર્યું જે માટે પૂછવામાં આવ્યું હતું:
જો સૂત્ર તરીકે દાખલ કરો ચેકબોક્સ પસંદ કરવામાં આવ્યું હતું, તો તમે' d ફોર્મ્યુલા બારમાં સૂત્ર અવલોકન કરો. કયું જાણવા ઉત્સુક છો? ફક્ત અલ્ટીમેટ સ્યુટની ટ્રાયલ ડાઉનલોડ કરો અને તમારા માટે જુઓ :)
ઉપલબ્ધ ડાઉનલોડ્સ
એક્સેલ એક્સટ્રેક્ટ નંબર - સેમ્પલ વર્કબુક (.xlsx ફાઇલ)
અલ્ટીમેટ સ્યુટ - ટ્રાયલ વર્ઝન (.exe ફાઇલ)