உள்ளடக்க அட்டவணை
உண்மையான சூத்திரங்கள் மற்றும் தனிப்பயன் செயல்பாடுகளைப் பயன்படுத்தி Excel இல் உள்ள எண்களிலிருந்து உரையை எவ்வாறு பிரிப்பது என்பதை இந்தப் பயிற்சி உங்களுக்குக் கற்பிக்கும். உரை மற்றும் எண்களை இரண்டு தனித்தனி நெடுவரிசைகளாகப் பிரிப்பது எப்படி என்பதையும் நீங்கள் கற்றுக் கொள்வீர்கள்.
இதைக் கற்பனை செய்து பாருங்கள்: பகுப்பாய்விற்கான மூலத் தரவைப் பெறுகிறீர்கள் மற்றும் ஒரு நெடுவரிசையில் எண்கள் உரையுடன் கலந்திருப்பதைக் கண்டறியவும். பெரும்பாலான சூழ்நிலைகளில், நெருக்கமான ஆய்வுக்காக தனித்தனி நெடுவரிசைகளில் அவற்றை வைத்திருப்பது நிச்சயமாக மிகவும் வசதியாக இருக்கும்.
நீங்கள் ஒரே மாதிரியான தரவுகளுடன் பணிபுரிந்தால், இடது, வலது மற்றும் MID செயல்பாடுகளைப் பிரித்தெடுக்கலாம். ஒரே நிலையில் இருந்து அதே எண்ணிக்கையிலான எழுத்துக்கள். ஆனால் ஆய்வக சோதனைகளுக்கு இது ஒரு சிறந்த காட்சியாகும். நிஜ வாழ்க்கையில், எண்கள் உரைக்கு முன், உரைக்குப் பின் அல்லது உரைக்கு இடையில் வரும் வேறுபட்ட தரவுகளை நீங்கள் கையாள்வீர்கள். கீழேயுள்ள எடுத்துக்காட்டுகள் இந்தச் சம்பவத்திற்குத் துல்லியமாகத் தீர்வுகளை வழங்குகின்றன.
எக்செல் கலங்களில் உரையை அகற்றி எண்களை வைத்திருப்பது எப்படி
தீர்வு Excel 365, Excel 2021 இல் வேலை செய்கிறது , மற்றும் Excel 2019
Microsoft Excel 2019 முந்தைய பதிப்புகளில் இல்லாத சில புதிய செயல்பாடுகளை அறிமுகப்படுத்தியது. எண்களைக் கொண்டுள்ளது.
பொதுவான சூத்திரம்:
TEXTJOIN("", TRUE, IFERROR(MID( cell, ROW(INDIRECT( "1:""&LEN(<1")>செல்))), 1) *1, ""))எக்செல் 365 மற்றும் 2021 இல், இதுவும் வேலை செய்யும்:
TEXTJOIN("", TRUE,IFERROR(MID( செல், SEQUENCE(LEN( cell)), 1) *1, ""))முதல் பார்வையில், சூத்திரங்கள் சற்று பயமுறுத்துவதாகத் தோன்றலாம், ஆனால் அவை வேலை செய்கின்றன :)
உதாரணமாக, A2 இல் உள்ள எண்களில் இருந்து உரையை அகற்ற, கீழே உள்ள சூத்திரங்களில் ஒன்றை B2 இல் உள்ளிடவும், பின்னர் தேவையான பல கலங்களுக்கு நகலெடுக்கவும்.
Excel 365 - 2019 இல்:
=TEXTJOIN("", TRUE, IFERROR(MID(A2, ROW(INDIRECT( "1:"&LEN(A2))), 1) *1, ""))
Excel 2019 இல், இது Ctrl + Shift + Enter உடன் வரிசை சூத்திரமாக உள்ளிடப்பட வேண்டும். டைனமிக் வரிசை Excel இல், இது Enter விசையுடன் நிறைவு செய்யப்பட்ட ஒரு சாதாரண சூத்திரமாக வேலை செய்கிறது.
Excel 365 மற்றும் 2021:
=TEXTJOIN("", TRUE, IFERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1, ""))
இதன் விளைவாக, அனைத்து உரை எழுத்துகளும் ஒரு கலத்தில் இருந்து அகற்றப்பட்டு எண்கள் வைக்கப்படுகின்றன:
இந்த சூத்திரம் எவ்வாறு செயல்படுகிறது உள்ளே இருந்து சூத்திரம்:
நீங்கள் ROW(INDIRECT("1:"&LEN(string))) அல்லது SEQUENCE(LEN(string)) ஒன்றைப் பயன்படுத்தி மொத்த எண்ணுடன் தொடர்புடைய எண்களின் வரிசையை உருவாக்கலாம் மூல சரத்தில் உள்ள எழுத்துக்கள், பின்னர் அந்த வரிசை எண்களை MID செயல்பாட்டிற்கு தொடக்க எண்களாக ஊட்டவும். B2 இல், சூத்திரத்தின் இந்தப் பகுதி பின்வருமாறு தெரிகிறது:
MID(A2, {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15}, 1)
MID செயல்பாடு A2 இலிருந்து ஒவ்வொரு எழுத்தையும் பிரித்தெடுத்து, அவற்றை ஒரு வரிசையாக வழங்குகிறது:
{"2";"1";"0";" ";"S";"u";"n";"s";"e";"t";" ";"R";"o";"a";"d"}
இந்த அணிவரிசை 1 ஆல் பெருக்கப்படுகிறது. எண் மதிப்புகள் எந்த மாற்றமும் இல்லாமல் உயிர்வாழும், அதே நேரத்தில் எண் அல்லாத எழுத்தைப் பெருக்கினால் #VALUE கிடைக்கும்! பிழை:
{2;1;0;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
IFERROR செயல்பாடு கையாளுகிறதுஇந்தப் பிழைகள் மற்றும் அவற்றை வெற்று சரங்களுடன் மாற்றுகிறது:
{2;1;0;"";"";"";"";"";"";"";"";"";"";"";""}
இந்த இறுதி வரிசையானது TEXTJOIN செயல்பாட்டிற்கு வழங்கப்படுகிறது, இது அணிவரிசையில் உள்ள வெறுமையற்ற மதிப்புகளை இணைக்கிறது ( ignore_empty டிலிமிட்டருக்கான வெற்று சரத்தை ("") பயன்படுத்தி வாதம் TRUE என அமைக்கப்பட்டது:
TEXTJOIN("", TRUE, {2;1;0;"";"";"";"";"";"";"";"";"";"";"";""})
உதவிக்குறிப்பு. Excel 2016 - 2007 க்கு, ஒரு தீர்வு உள்ளது, ஆனால் சூத்திரம் மிகவும் சிக்கலானது. இந்த டுடோரியலில் நீங்கள் அதைக் காணலாம்: எக்செல் இல் எண்களை எவ்வாறு பிரித்தெடுப்பது.
எண்களிலிருந்து உரையை அகற்றுவதற்கான தனிப்பயன் செயல்பாடு
எல்லா எக்செல் பதிப்புகளுக்கும் தீர்வு வேலை செய்யும்
நீங்கள் Excel இன் பழைய பதிப்பைப் பயன்படுத்தினால் அல்லது மேலே உள்ள சூத்திரங்களையும் கண்டறிக நினைவில் கொள்வது கடினம், எளிமையான தொடரியல் மற்றும் RemoveText போன்ற பயனர் நட்பு பெயருடன் உங்கள் சொந்த செயல்பாட்டை உருவாக்குவதிலிருந்து எதுவும் உங்களைத் தடுக்காது. பயனர் வரையறுக்கப்பட்ட செயல்பாடு (UDF) இரண்டு வழிகளில் எழுதப்படலாம்:
VBA குறியீடு 1:
இங்கே, மூல சரத்தில் உள்ள ஒவ்வொரு எழுத்தையும் ஒவ்வொன்றாகப் பார்க்கிறோம் ஒன்று மற்றும் அது எண்ணாக உள்ளதா இல்லையா என்பதைச் சரிபார்க்கவும். எண்ணாக இருந்தால், விளைந்த சரத்தில் எழுத்து சேர்க்கப்படும்.
செயல்பாடு RemoveText(string As String ) மங்கலான sRes சரம் sRes = "" க்கு i = 1 முதல் லென்(str) என்றால் True = IsNumeric(Mid(str, i) , 1)) பிறகு sRes = sRes & Mid(str, i, 1) End எனில் அடுத்து i RemoveText = sRes End FunctionVBA code 2:
குறியீடு வழக்கமான வெளிப்பாட்டை செயலாக்க ஒரு பொருளை உருவாக்குகிறது. RegExp ஐப் பயன்படுத்தி, 0-9 இலக்கங்களைத் தவிர மற்ற எல்லா எழுத்துகளையும் மூல சரத்திலிருந்து அகற்றுவோம்.
செயல்பாடு RemoveText(string As String) CreateObject உடன் சரமாக ( "VBScript.RegExp" ) .Global = True .Pattern = "[^0-9]" RemoveText = .Replace(str, "" ) End Functionஉடன் முடிவு சிறிய பணித்தாள்களில், இரண்டு குறியீடுகளும் சமமாகச் செயல்படும். செயல்பாடு நூற்றுக்கணக்கான அல்லது ஆயிரக்கணக்கான முறை அழைக்கப்படும் பெரிய பணித்தாள்களில், VBScript.RegExp ஐப் பயன்படுத்தும் குறியீடு 2 வேகமாக வேலை செய்யும்.
உங்கள் பணிப்புத்தகத்தில் குறியீட்டைச் செருகுவதற்கான விரிவான வழிமுறைகளை இங்கே காணலாம்: VBA ஐ எவ்வாறு செருகுவது எக்செல் இல் குறியீடு.
இறுதிப் பயனரின் பார்வையில் நீங்கள் எந்த அணுகுமுறையைத் தேர்வு செய்தாலும், உரையை நீக்குவது மற்றும் எண்களை விடுவிப்பது போன்ற செயல்பாடு மிகவும் எளிமையானது:
RemoveText(string)உதாரணமாக, செல் A2 இலிருந்து எண் அல்லாத எழுத்துக்களை அகற்றவும், B2 இல் உள்ள சூத்திரம்:
=RemoveText(A2)
அதை நெடுவரிசையில் நகலெடுக்கவும், இந்த முடிவைப் பெறுவீர்கள்:
குறிப்பு. சொந்த சூத்திரங்கள் மற்றும் தனிப்பயன் செயல்பாடு இரண்டும் எண் சரத்தை வெளியிடுகின்றன. அதை எண்ணாக மாற்ற, முடிவை 1 ஆல் பெருக்கவும் அல்லது பூஜ்ஜியத்தைச் சேர்க்கவும் அல்லது சூத்திரத்தை VALUE செயல்பாட்டில் மடிக்கவும். எடுத்துக்காட்டாக:
=RemoveText(A2) + 0
=VALUE(RemoveText(A2))
எக்செல் உரைச் சரத்திலிருந்து எண்களை எவ்வாறு அகற்றுவது
தீர்வு Excel 365, Excel 2021 மற்றும் Excel இல் வேலை செய்கிறது 2019
எண்ணெழுத்து சரத்திலிருந்து எண்களை அகற்றுவதற்கான சூத்திரங்கள் முந்தைய எடுத்துக்காட்டில் விவாதிக்கப்பட்டதைப் போலவே இருக்கின்றன.
Excel 365 - 2019:
TEXTJOIN(" ", TRUE, IF(ISERR(MID( செல் , ROW(INDIRECT)"1:"&LEN( செல் ) )), 1) *1), MID( செல் , ROW(INDIRECT("1:"&LEN( ) செல் ))), 1), ""))எக்செல் 2019 இல், Ctrl + Shift + Enter விசைகளை ஒன்றாக அழுத்துவதன் மூலம் அதை வரிசை சூத்திரமாக உருவாக்க நினைவில் கொள்ளுங்கள்.
0>எக்செல் 365 மற்றும் 2021க்கு: TEXTJOIN("", TRUE, IF(ISERROR(MID( செல் , SEQUENCE( cell 1)) *1), MID ( செல் , SEQUENCE(LEN( செல் )), 1), ""))உதாரணமாக, A2 இல் உள்ள சரத்திலிருந்து எண்களை அகற்ற, சூத்திரம்:
=TEXTJOIN("", TRUE, IF(ISERR(MID(A2, ROW(INDIRECT( "1:"&LEN(A2) )), 1) *1), MID(A2, ROW(INDIRECT("1:"&LEN(A2))), 1), ""))
அல்லது
=TEXTJOIN("", TRUE, IF(ISERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1), MID(A2, SEQUENCE(LEN(A2)), 1), ""))
இதன் விளைவாக, கலத்திலிருந்து அனைத்து எண்களும் அகற்றப்பட்டு உரை எழுத்துகள் வைக்கப்படும்:
மேலே உள்ள ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி, ஒரு சரத்தில் உள்ள எந்த நிலையிலிருந்தும் எண் எழுத்துகளை ஃபார்முலா நீக்குகிறது: தொடக்கத்தில், முடிவில் மற்றும் நடுவில். இருப்பினும், ஒரு எச்சரிக்கை உள்ளது: ஒரு சரம் என்றால் எண்ணைத் தொடர்ந்து ஒரு ஸ்பேஸுடன் தொடங்குகிறது , அந்த இடம் தக்கவைக்கப்படுகிறது, இது முன்னணி இடங்களின் சிக்கலை உருவாக்குகிறது (B2 போன்றது).
உரைக்கு முன் கூடுதல் இடைவெளிகளை அகற்ற , TRIM செயல்பாட்டில் சூத்திரத்தை இப்படி மடிக்கவும்:
=TRIM(TEXTJOIN("", TRUE, IF(ISERROR(MID(A2, SEQUENCE(LEN(A2)), 1) *1), MID(A2, SEQUENCE(LEN(A2)), 1), "")))
இப்போது, உங்கள் முடிவுகள் முற்றிலும் சரியானவை!
இந்த சூத்திரம் எவ்வாறு செயல்படுகிறது:
சாராம்சத்தில், முந்தைய எடுத்துக்காட்டில் விளக்கப்பட்டதைப் போலவே சூத்திரம் செயல்படுகிறது. வித்தியாசம் என்னவென்றால், TEXTJOIN செயல்பாட்டிற்கு வழங்கப்பட்ட இறுதி வரிசையில் இருந்து, நீங்கள் எண்களை அகற்ற வேண்டும், உரையை அல்ல. இதைச் செய்ய, IF மற்றும் ISERROR செயல்பாடுகளின் கலவையைப் பயன்படுத்துகிறோம்.
நீங்கள் நினைவில் வைத்திருப்பது போல்,MID(...)+0 ஆனது எண்களின் வரிசையை உருவாக்குகிறது மற்றும் #VALUE! அதே நிலைகளில் உள்ள உரை எழுத்துக்களைக் குறிக்கும் பிழைகள்:
{2;1;0;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!;#VALUE!}
ISERROR செயல்பாடு பிழைகளைப் பிடித்து அதன் விளைவாக வரும் பூலியன் மதிப்புகளின் வரிசையை IF:
{FALSE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
IF செயல்பாடு TRUE ஐக் காணும் போது (ஒரு பிழை), அது தொடர்புடைய உரை எழுத்தை மற்றொரு MID செயல்பாட்டின் உதவியுடன் செயலாக்கப்பட்ட வரிசையில் செருகும். IF செயல்பாடு FALSE (ஒரு எண்) ஐக் காணும் போது, அதை வெற்று சரத்துடன் மாற்றுகிறது:
{"";"";"";" ";"S";"u";"n";"s";"e";"t";" ";"R";"o";"a";"d"}
இந்த இறுதி வரிசை TEXTJOIN க்கு அனுப்பப்படுகிறது, எனவே இது உரை எழுத்துக்களை ஒருங்கிணைத்து வெளியிடுகிறது முடிவு.
உரையிலிருந்து எண்களை அகற்றுவதற்கான தனிப்பயன் செயல்பாடு
எல்லா எக்செல் பதிப்புகளுக்கும் தீர்வு வேலை செய்யும்
ஒரு வலுவான சூத்திரம் வைக்கப்பட வேண்டும் என்பதை நினைவில் கொள்ளுங்கள் எளிமையானது, எந்த எண் எழுத்துகளையும் அகற்ற பயனர் வரையறுக்கப்பட்ட செயல்பாட்டின் (UDF) குறியீட்டைப் பகிர்ந்து கொள்கிறேன்.
VBA குறியீடு 1:
செயல்பாடு RemoveNumbers(str As String ) மங்கலான sRes As String sRes = "" க்கு i = 1 முதல் Len(str) என்றால் False = IsNumeric(Mid(str, i, 1)) பிறகு sRes = sRes & Mid(str, i, 1) முடிவு என்றால் அடுத்து i RemoveNumbers = sRes முடிவு செயல்பாடுVBA குறியீடு 2:
செயல்பாடு RemoveNumbers(string ஆக ) CreateObject உடன் சரமாக ( "VBScript.RegExp" ) .Global = True .Pattern = "[0-9]" RemoveNumbers2 = .Replace(str, "" ) End With End FunctionRemoveText செயல்பாட்டில் உள்ளது போல், இரண்டாவது குறியீட்டைப் பயன்படுத்துவது நல்லது பெரியசெயல்திறனை மேம்படுத்த பணித்தாள்கள்.
உங்கள் பணிப்புத்தகத்தில் குறியீடு சேர்க்கப்பட்டவுடன், இந்த தனிப்பயன் செயல்பாட்டைப் பயன்படுத்தி ஒரு கலத்திலிருந்து அனைத்து எண் எழுத்துகளையும் நீக்கலாம்:
RemoveNumbers(string)எங்கள் விஷயத்தில், B2 இல் உள்ள சூத்திரம்:
=RemoveNumbers(A2)
முன்னணி இடைவெளிகள் ஏதேனும் இருந்தால் ஒழுங்கமைக்க, TRIM இல் உள்ள தனிப்பயன் செயல்பாட்டை நீங்கள் ஒரு நேட்டிவ் ஃபார்முலாவைப் போன்று சேர்க்கலாம்:
=TRIM(RemoveNumbers(A2))
எண்களையும் உரையையும் தனித்தனி நெடுவரிசைகளாகப் பிரிக்கவும்
உரையையும் எண்களையும் இரண்டு நெடுவரிசைகளாகப் பிரிக்க விரும்பும் சூழ்நிலையில், ஒரே சூத்திரத்தில் வேலையைச் செய்தால் நன்றாக இருக்கும். , ஒப்புக்கொள்கிறீர்களா? இதற்காக, RemoveText மற்றும் RemoveNumbers செயல்பாடுகளின் குறியீட்டை SplitTextNumbers அல்லது Split என பெயரிடப்பட்ட ஒரு செயல்பாட்டில் இணைக்கிறோம், அல்லது நீங்கள் விரும்புவது எதுவாக இருந்தாலும் :)
VBA code 1:
Function SplitTextNumbers(str As String , is_remove_text As Boolean ) சரம் மங்கலாக sNum, sText, sChar சரமாக sCurChar = sNum = sText = "" க்கு i = 1 முதல் லென்(str) sCurChar = Mid(str, i, 1) True = IsNumeric(sCurChar) எனில் sNum = sNum & sCurChar வேறு sText = sText & sCurChar முடிவாக இருந்தால் அடுத்தது i என்றால் சரி = is_remove_text பின்னர் SplitTextNumbers = sNum வேறு SplitTextNumbers = sText End என்றால் முடிவடையும் செயல்VBA குறியீடு 2:
Function SplitTextNumbers(string_text என string_text) CreateObject உடன் ( "VBScript.RegExp" ) .Global = True என்றால் True = is_remove_text பிறகு .Pattern = "[^0-9]" வேறு.Pattern = "[0-9]" முடிவு என்றால் SplitTextNumbers = .Replace(str, "" ) End Function உடன் முடிவுஎங்கள் புதிய தனிப்பயன் செயல்பாட்டிற்கு இரண்டு வாதங்கள் தேவை:
SplitTextNumbers(string, is_remove_text)எங்கே is_remove_text என்பது எந்தெந்த எழுத்துக்களை அகற்ற வேண்டும் என்பதைக் குறிக்கும் பூலியன் மதிப்பு:
- TRUE அல்லது 1 - உரையை அகற்றி எண்களை வைத்திருங்கள்
- FALSE அல்லது 0 - எண்களை அகற்றி உரையை வைத்திருங்கள்
எங்கள் மாதிரி தரவுத்தொகுப்புக்கு, சூத்திரங்கள் இந்த படிவத்தை எடுக்கின்றன:
எண் அல்லாத எழுத்துகளை அகற்ற:
=SplitTextNumbers(A2, TRUE)
எண் எழுத்துக்களை நீக்க :
=SplitTextNumbers(A2, FALSE)
உதவிக்குறிப்பு. முன்னணி இடைவெளிகளின் சாத்தியமான சிக்கலைத் தவிர்க்க, TRIM செயல்பாட்டில் எண்களை அகற்றும் சூத்திரத்தை எப்போதும் போர்த்துமாறு பரிந்துரைக்கிறேன்:
=TRIM(SplitTextNumbers(A2, FALSE))
எண்கள் அல்லது உரையை அகற்றுவதற்கான சிறப்புக் கருவி
செயல்படுபவர்களுக்கு தேவையில்லாமல் விஷயங்களை சிக்கலாக்குவது பிடிக்காது, எக்செல் இல் உள்ள உரை அல்லது எண்களை அகற்றுவதற்கான எங்கள் சொந்த வழியை நான் காண்பிப்பேன்.
எங்கள் அல்டிமேட் சூட் உங்கள் எக்செல் ரிப்பனில் சேர்க்கப்பட்டதாக வைத்துக் கொண்டால், இதைத்தான் நீங்கள் செய்கிறீர்கள்:
- Ablebits Data தாவலில், உரை குழுவில், அகற்று > எழுத்துகளை அகற்று என்பதைக் கிளிக் செய்யவும். <21
உதவிக்குறிப்பு. முடிவுகள் சில முன்னணி இடைவெளிகளைக் கொண்டிருந்தால், டிரிம் ஸ்பேஸ்கள்கருவி எந்த நேரத்திலும் அவற்றை அகற்றும்.
எக்செல் இல் உள்ள ஒரு சரத்திலிருந்து உரை அல்லது எண் எழுத்துக்களை எப்படி அகற்றுவது. படித்ததற்கு நன்றி, அடுத்த வாரம் எங்கள் வலைப்பதிவில் உங்களைப் பார்ப்பதற்கு ஆவலுடன் காத்திருக்கிறேன்!
கிடைக்கும் பதிவிறக்கங்கள்
எக்செல்-ல் உள்ள உரை அல்லது எண்களை அகற்றவும் - எடுத்துக்காட்டுகள் (.xlsm கோப்பு)
அல்டிமேட் சூட் - சோதனை பதிப்பு (.exe கோப்பு)