எக்செல்: ஒரே நேரத்தில் பல மதிப்புகளைக் கண்டுபிடித்து மாற்றவும்

  • இதை பகிர்
Michael Brown

உள்ளடக்க அட்டவணை

இந்த டுடோரியலில், பல வார்த்தைகள், சரங்கள் அல்லது தனிப்பட்ட எழுத்துக்களைக் கண்டுபிடித்து மாற்றுவதற்கான பல வழிகளைப் பார்ப்போம், எனவே உங்கள் தேவைகளுக்கு மிகவும் பொருத்தமான ஒன்றை நீங்கள் தேர்வு செய்யலாம்.

எக்செல் இல் பொதுவாக மக்கள் எவ்வாறு தேடுவார்கள்? பெரும்பாலும், கண்டுபிடி & ஒற்றை மதிப்புகளுக்கு நன்றாக வேலை செய்யும் அம்சத்தை மாற்றவும். ஆனால் உங்களிடம் பத்து அல்லது நூற்றுக்கணக்கான பொருட்களை மாற்றினால் என்ன செய்வது? நிச்சயமாக, யாரும் அந்த மாற்றீடுகளை கைமுறையாக ஒன்றன் பின் ஒன்றாக செய்ய விரும்ப மாட்டார்கள், பின்னர் தரவு மாறும்போது அதை மீண்டும் செய்யவும். அதிர்ஷ்டவசமாக, எக்செல் இல் வெகுஜன மாற்றியமைக்க இன்னும் சில பயனுள்ள முறைகள் உள்ளன, மேலும் அவை ஒவ்வொன்றையும் விரிவாக ஆராயப் போகிறோம்.

    உள்ளமைக்கப்பட்ட மாற்றீட்டைக் கொண்டு பல மதிப்புகளைக் கண்டுபிடித்து மாற்றவும்

    எக்செல் இல் பல உள்ளீடுகளைக் கண்டறிந்து மாற்றுவதற்கான எளிதான வழி, SUBSTITUTE செயல்பாட்டைப் பயன்படுத்துவதாகும்.

    சூத்திரத்தின் தர்க்கம் மிகவும் எளிமையானது: பழைய மதிப்பை புதியதாக மாற்ற சில தனிப்பட்ட செயல்பாடுகளை எழுதுகிறீர்கள். . பின்னர், நீங்கள் அந்த செயல்பாடுகளை ஒன்றோடொன்று இணைக்கிறீர்கள், இதனால் ஒவ்வொரு அடுத்தடுத்த மாற்றீடும் அடுத்த மதிப்பைத் தேட முந்தைய மாற்றீட்டின் வெளியீட்டைப் பயன்படுத்துகிறது. old_text1 , new_text1 ), old_text2 , new_text2 ), old_text3 , new_text3 )

    A2:A10 இல் உள்ள இடங்களின் பட்டியலில், சுருக்கப்பட்ட நாட்டின் பெயர்களை ( FR , UK மற்றும் USA போன்றவை) முழுவதுமாக மாற்ற விரும்புகிறீர்கள் என்று வைத்துக்கொள்வோம்.நீங்கள் குறியீட்டைச் செருகிய பணிப்புத்தகத்தில் மட்டுமே MassReplace செயல்பாடு செயல்படும். இதை எப்படிச் சரியாகச் செய்வது என்று உங்களுக்குத் தெரியாவிட்டால், எக்செல் இல் VBA குறியீட்டை எவ்வாறு செருகுவது என்பதில் விவரிக்கப்பட்டுள்ள படிகளைப் பின்பற்றவும்.

    உங்கள் பணிப்புத்தகத்தில் குறியீடு சேர்க்கப்பட்டவுடன், செயல்பாடு நுண்ணறிவு சூத்திரத்தில் தோன்றும் - மட்டும் செயல்பாட்டின் பெயர், வாதங்கள் அல்ல! இருப்பினும், தொடரியல் நினைவில் கொள்வது பெரிய விஷயமில்லை என்று நான் நம்புகிறேன்:

    MassReplace(input_range, find_range, replace_range)

    எங்கே:

    • Input_range - மூல வரம்பு எங்கே நீங்கள் மதிப்புகளை மாற்ற வேண்டும்.
    • Find_range - தேட வேண்டிய எழுத்துகள், சரங்கள் அல்லது சொற்கள் அல்லது வார்த்தைகளை மாற்ற வேண்டும்.

    எக்செல் 365 இல், டைனமிக் வரிசைகளுக்கான ஆதரவு காரணமாக, இது ஒரு சாதாரண சூத்திரமாக வேலை செய்கிறது, இது மேல் கலத்தில் மட்டுமே உள்ளிட வேண்டும் (B2):

    =MassReplace(A2:A10, D2:D4, E2:E4)

    ப்ரீ-டைனமிக் எக்செல் இல், இது பழைய-பாணி CSE வரிசை சூத்திரமாக வேலை செய்கிறது: நீங்கள் முழு மூல வரம்பையும் (B2:B10) தேர்ந்தெடுத்து, தட்டச்சு செய்க சூத்திரம், அதை முடிக்க Ctrl + Shift + Enter விசைகளை ஒரே நேரத்தில் அழுத்தவும்.

    நன்மைகள் : Excel 2019 இல் தனிப்பயன் LAMBDA செயல்பாட்டிற்கு ஒரு நல்ல மாற்று , எக்செல் 2016 மற்றும் முந்தைய பதிப்புகள்

    குறைபாடுகள் : பணிப்புத்தகம் மேக்ரோ-இயக்கப்பட்ட .xlsm கோப்பாக சேமிக்கப்பட வேண்டும்

    எக்செல் இல் VBA மேக்ரோவுடன் மொத்தமாக மாற்றியமைக்க

    நீங்கள் ஆட்டோவை விரும்பினால் மேக்ரோக்களுடன் பொதுவான பணிகளை இணைத்தல், பிறகு நீங்கள்ஒரு வரம்பில் பல மதிப்புகளைக் கண்டறிந்து மாற்றுவதற்கு பின்வரும் VBA குறியீட்டைப் பயன்படுத்தலாம்.

    Sub BulkReplace() Dim Rng As Range, SourceRng As Range, ReplaceRng என ரேஞ்ச் ஆன் எரர் ரெஸ்யூம் அடுத்த செட் SourceRng = Application.InputBox( "மூல தரவு: " , "மொத்தமாக மாற்றியமை" , விண்ணப்பம்.தேர்வு.முகவரி, வகை :=8) பிழை பிழை Application.ScreenUpdating = True End If End Sub

    மேக்ரோவை உடனடியாகப் பயன்படுத்த, குறியீட்டைக் கொண்ட எங்கள் மாதிரிப் பணிப்புத்தகத்தைப் பதிவிறக்கலாம். அல்லது உங்கள் சொந்த பணிப்புத்தகத்தில் குறியீட்டைச் செருகலாம்.

    மேக்ரோவை எவ்வாறு பயன்படுத்துவது

    மேக்ரோவை இயக்கும் முன், கீழே உள்ள படத்தில் காட்டப்பட்டுள்ளபடி பழைய மற்றும் புதிய மதிப்புகளை இரண்டு அடுத்தடுத்த நெடுவரிசைகளில் தட்டச்சு செய்யவும் ( C2:D4).

    பிறகு, உங்கள் மூலத் தரவைத் தேர்ந்தெடுத்து, Alt + F8 ஐ அழுத்தி, BulkReplace மேக்ரோவைத் தேர்ந்தெடுத்து, Run என்பதைக் கிளிக் செய்யவும்.

    <0

    மூலக் கோபம் முன்னரே தேர்ந்தெடுக்கப்பட்டதால், குறிப்பைச் சரிபார்த்து, சரி என்பதைக் கிளிக் செய்யவும்:

    அதன் பிறகு, மாற்று வரம்பைத் தேர்ந்தெடுத்து , சரி என்பதைக் கிளிக் செய்யவும்:

    முடிந்தது!

    நன்மைகள் : ஒருமுறை அமைக்கவும், எந்த நேரத்திலும் மீண்டும் பயன்படுத்தவும்

    குறைபாடுகள் : மேக்ரோவை ஒவ்வொரு தரவுடனும் இயக்க வேண்டும்change

    Multiple find and replace in Excel with Substring tool

    முதல் எடுத்துக்காட்டில், எக்செல் இல் பல மதிப்புகளை மாற்றுவதற்கு உள்ளமைக்கப்பட்ட SUBSTITUTE எளிதான வழி என்று குறிப்பிட்டேன். நான் தவறு செய்தேன் என்பதை ஒப்புக்கொள்கிறேன். எங்கள் அல்டிமேட் சூட் விஷயங்களை இன்னும் எளிதாக்குகிறது!

    உங்கள் ஒர்க்ஷீட்டில் வெகுஜன மாற்றீடு செய்ய, Ablebits Data தாவலுக்குச் சென்று Substring Tools > என்பதைக் கிளிக் செய்யவும். துணைச்சரங்களை மாற்றவும் .

    உபச்சரங்களை மாற்றவும் உரையாடல் பெட்டி தோன்றும், இது மூல வரம்பையும் <1ஐயும் வரையறுக்கும்படி கேட்கும்>சப்ஸ்ட்ரிங்ஸ் வரம்பு.

    இரண்டு வரம்புகளைத் தேர்ந்தெடுத்து, மாற்று பொத்தானைக் கிளிக் செய்து, வலதுபுறம் செருகப்பட்ட புதிய நெடுவரிசையில் முடிவுகளைக் கண்டறியவும். அசல் தரவு. ஆம், இது மிகவும் எளிதானது!

    உதவிக்குறிப்பு. மாற்று என்பதைக் கிளிக் செய்வதற்கு முன், நீங்கள் கருத்தில் கொள்ள வேண்டிய ஒரு முக்கியமான விஷயம் உள்ளது - கேஸ்-சென்சிட்டிவ் பெட்டி. பெரிய எழுத்து மற்றும் சிறிய எழுத்துக்களை வெவ்வேறு எழுத்துகளாகக் கையாள விரும்பினால், அதைத் தேர்ந்தெடுக்க மறக்காதீர்கள். இந்த எடுத்துக்காட்டில், நாங்கள் இந்த விருப்பத்தைத் தேர்வு செய்கிறோம், ஏனெனில் நாங்கள் பெரிய எழுத்துச்சரங்களை மட்டுமே மாற்ற விரும்புகிறோம், மேலும் "fr", "uk" அல்லது "ak" போன்ற துணைச்சரங்களை அப்படியே விட்டுவிட வேண்டும்.

    சரங்களில் மற்ற மொத்த செயல்பாடுகளை என்ன செய்ய முடியும் என்பதை அறிய நீங்கள் ஆர்வமாக இருந்தால், எங்கள் அல்டிமேட் சூட்டில் உள்ள பிற சப்ஸ்ட்ரிங் கருவிகளைப் பார்க்கவும். அல்லது இன்னும் சிறப்பாக, கீழே உள்ள மதிப்பீட்டு பதிப்பைப் பதிவிறக்கி முயற்சிக்கவும்!

    இவ்வாறு கண்டுபிடித்து மாற்றலாம்எக்செல் இல் ஒரே நேரத்தில் பல வார்த்தைகள் மற்றும் எழுத்துக்கள். படித்ததற்கு நன்றி, அடுத்த வாரம் எங்கள் வலைப்பதிவில் உங்களைப் பார்ப்பீர்கள் என்று நம்புகிறேன்!

    கிடைக்கும் பதிவிறக்கங்கள்

    எக்செல் (.xlsm கோப்பு) இல் பலவற்றைக் கண்டுபிடித்து மாற்றவும்

    Ultimate Suite 14 -நாள் முழு செயல்பாட்டு பதிப்பு (.exe கோப்பு)

    பெயர்கள்.

    இதைச் செய்ய, D2:D4 இல் பழைய மதிப்புகளையும், E2:E4 இல் புதிய மதிப்புகளையும் கீழே உள்ள ஸ்கிரீன்ஷாட்டில் உள்ளிடவும். பின்னர், கீழே உள்ள சூத்திரத்தை B2 இல் வைத்து, Enter ஐ அழுத்தவும்:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2:A10, D2, E2), D3, E3), D4, E4)

    …மேலும் நீங்கள் அனைத்து மாற்றீடுகளையும் ஒரே நேரத்தில் செய்துவிடுவீர்கள்:

    தயவுசெய்து, மேலே உள்ள அணுகுமுறையானது டைனமிக் வரிசைகளை ஆதரிக்கும் Excel 365 இல் மட்டுமே செயல்படும் மிக உயர்ந்த கலத்திற்கு (B2) எழுதப்பட்டது, பின்னர் கீழே உள்ள கலங்களுக்கு நகலெடுக்கப்பட்டது:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, $D$2, $E$2), $D$3, $E$3), $D$4, $E$4)

    தயவுசெய்து கவனம் செலுத்துங்கள், இந்த விஷயத்தில், மாற்று மதிப்புகளை முழுமையான செல் குறிப்புகளுடன் பூட்டுகிறோம். சூத்திரத்தை கீழே நகலெடுக்கும்போது அவை மாறாது.

    குறிப்பு. SUBSTITUTE செயல்பாடு கேஸ்-சென்சிட்டிவ் , அதாவது அசல் தரவில் தோன்றும் அதே எழுத்து வழக்கில் பழைய மதிப்புகளை ( old_text ) தட்டச்சு செய்ய வேண்டும்.

    எவ்வளவு எளிதாக இருக்க முடியுமோ, இந்த முறை குறிப்பிடத்தக்க குறைபாட்டைக் கொண்டுள்ளது - பதிலீட்டுக்கு டஜன் கணக்கான உருப்படிகள் இருந்தால், உள்ளமை செயல்பாடுகளை நிர்வகிப்பது மிகவும் கடினமாகிவிடும்.

    நன்மைகள் : எளிதானது -செயல்படுத்த; எல்லா எக்செல் பதிப்புகளிலும் துணைபுரிகிறது

    குறைபாடுகள் : குறிப்பிட்ட எண்ணிக்கையிலான கண்டுபிடிப்பு/மாற்று மதிப்புகளுக்குப் பயன்படுத்துவது சிறந்தது

    பல்வேறு உள்ளீடுகளை XLOOKUP மூலம் தேடவும் மாற்றவும்

    <0 நீங்கள் முழு செல் உள்ளடக்கத்தையும் மாற்ற விரும்பும் சூழ்நிலையில், அதன் பகுதி அல்ல, XLOOKUP செயல்பாடு கைக்கு வரும்.

    நாம்நீங்கள் A நெடுவரிசையில் நாடுகளின் பட்டியலை வைத்திருப்பதாகக் கூறவும், மேலும் அனைத்து சுருக்கங்களையும் தொடர்புடைய முழுப் பெயர்களுடன் மாற்றுவதை நோக்கமாகக் கொண்டுள்ளீர்கள். முந்தைய உதாரணத்தைப் போலவே, "கண்டுபிடி" மற்றும் "மாற்று" உருப்படிகளை தனித்தனி நெடுவரிசைகளில் (முறையே D மற்றும் E) உள்ளிடுவதன் மூலம் தொடங்குகிறீர்கள், பின்னர் இந்த சூத்திரத்தை B2 இல் உள்ளிடவும்:

    =XLOOKUP(A2, $D$2:$D$4, $E$2:$E$4, A2)

    எக்செல் மொழியிலிருந்து மனித மொழிக்கு மொழிபெயர்க்கப்பட்டது, சூத்திரம் என்ன செய்கிறது:

    D2:D4 (lookup_array) இல் A2 மதிப்பைத் (lookup_value) தேடி, E2:E4 (return_array) இலிருந்து ஒரு பொருத்தத்தை வழங்கவும். கிடைக்கவில்லை எனில், A2 இலிருந்து அசல் மதிப்பை இழுக்கவும்.

    கீழே உள்ள கலங்களுக்கு சூத்திரத்தை நகலெடுக்க நிரப்பு கைப்பிடியை இருமுறை கிளிக் செய்யவும், இதன் விளைவாக உங்களை காத்திருக்க வைக்காது:

    XLOOKUP செயல்பாடு Excel 365 இல் மட்டுமே இருப்பதால், மேலே உள்ள சூத்திரம் முந்தைய பதிப்புகளில் வேலை செய்யாது. இருப்பினும், IFERROR அல்லது IFNA மற்றும் VLOOKUP:

    =IFNA(VLOOKUP(A2, $D$2:$E$4, 2, FALSE), A2)

    குறிப்பு: இந்த நடத்தையை நீங்கள் எளிதாகப் பின்பற்றலாம். SUBSTITUTE போலல்லாமல், XLOOKUP மற்றும் VLOOKUP செயல்பாடுகள் கேஸ்-சென்சிட்டிவ் அல்ல , அதாவது அவை எழுத்து வழக்கைப் புறக்கணித்து தேடல் மதிப்புகளைத் தேடுகின்றன. உதாரணமாக, எங்கள் சூத்திரம் FR மற்றும் fr இரண்டையும் பிரான்ஸ் உடன் மாற்றும்.

    நன்மைகள் : வழக்கமான செயல்பாடுகளின் வழக்கத்திற்கு மாறான பயன்பாடு; எல்லா எக்செல் பதிப்புகளிலும் வேலை செய்கிறது

    குறைபாடுகள் : செல் அளவில் வேலை செய்கிறது, செல் உள்ளடக்கத்தின் ஒரு பகுதியை மாற்ற முடியாது

    சுழற்சியான LAMBDA செயல்பாட்டைப் பயன்படுத்தி பல மாற்றீடு

    மைக்ரோசாப்ட்365 சந்தாதாரர்கள், எக்செல் ஒரு சிறப்பு செயல்பாட்டை வழங்குகிறது, இது பாரம்பரிய சூத்திர மொழியைப் பயன்படுத்தி தனிப்பயன் செயல்பாடுகளை உருவாக்க அனுமதிக்கிறது. ஆம், நான் லாம்டாவைப் பற்றி பேசுகிறேன். இந்த முறையின் அழகு என்னவென்றால், இது மிக நீண்ட மற்றும் சிக்கலான சூத்திரத்தை மிகவும் கச்சிதமான மற்றும் எளிமையான ஒன்றாக மாற்றும். மேலும், எக்செல் இல் இல்லாத உங்களின் சொந்த செயல்பாடுகளை உருவாக்க இது உங்களை அனுமதிக்கிறது, முன்பு VBA உடன் மட்டுமே சாத்தியமாக இருந்தது.

    தனிப்பயன் LAMBDA செயல்பாடுகளை உருவாக்குவது மற்றும் பயன்படுத்துவது பற்றிய விரிவான தகவலுக்கு, இந்த டுடோரியலைப் பார்க்கவும்: எப்படி எக்செல் இல் LAMBDA செயல்பாடுகளை எழுத. இங்கே, நாம் இரண்டு நடைமுறை உதாரணங்களைப் பற்றி விவாதிப்போம்.

    நன்மைகள் : இதன் விளைவாக நேர்த்தியான மற்றும் பயன்படுத்த எளிதான செயல்பாடு, மாற்று ஜோடிகளின் எண்ணிக்கை எதுவாக இருந்தாலும்

    குறைபாடுகள் : Excel 365 இல் மட்டுமே கிடைக்கும்; பணிப்புத்தகம்-குறிப்பிட்டது மற்றும் வெவ்வேறு பணிப்புத்தகங்களில் மீண்டும் பயன்படுத்த முடியாது

    எடுத்துக்காட்டு 1. ஒரே நேரத்தில் பல சொற்கள் / சரங்களைத் தேடி, மாற்றவும்

    ஒரே நேரத்தில் பல சொற்கள் அல்லது உரையை மாற்ற, தனிப்பயன் ஒன்றை உருவாக்கியுள்ளோம் LAMBDA செயல்பாடு, MultiReplace என பெயரிடப்பட்டது, இது பின்வரும் படிவங்களில் ஒன்றை எடுக்கலாம்:

    =LAMBDA(text, old, new, IF(old"", MultiReplace(SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0)), text))

    அல்லது

    =LAMBDA(text, old, new, IF(old="", text, MultiReplace(SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0))))

    இரண்டும் சுழல்நிலை தங்களை அழைக்கும் செயல்பாடுகள். வெளியேறும் புள்ளி எவ்வாறு நிறுவப்பட்டது என்பதில் மட்டுமே வேறுபாடு உள்ளது.

    முதல் சூத்திரத்தில், பழைய பட்டியல் காலியாக உள்ளதா (பழைய"") என்பதை IF செயல்பாடு சரிபார்க்கிறது. TRUE எனில், MultiReplace செயல்பாடு அழைக்கப்படுகிறது. FALSE எனில், செயல்பாடு உரை அதன் தற்போதைய வடிவத்தை அளித்து வெளியேறுகிறது.

    இரண்டாவது சூத்திரம் தலைகீழ் தர்க்கத்தைப் பயன்படுத்துகிறது: பழைய காலியாக இருந்தால் (old=""), பிறகு <1ஐத் திரும்பவும்>உரை மற்றும் வெளியேறு; இல்லையெனில் MultiReplace ஐ அழைக்கவும்.

    தந்திரமான பகுதி நிறைவேற்றப்பட்டது! கீழே உள்ள ஸ்கிரீன்ஷாட்டில் காட்டப்பட்டுள்ளபடி, பெயர் மேலாளரில் MultiReplace செயல்பாட்டிற்கு பெயரிடுவதற்கு நீங்கள் என்ன செய்ய வேண்டும். விரிவான வழிகாட்டுதல்களுக்கு, LAMBDA செயல்பாட்டை எவ்வாறு பெயரிடுவது என்பதைப் பார்க்கவும்.

    செயல்பாட்டிற்கு ஒரு பெயர் கிடைத்ததும், மற்ற உள்ளமைக்கப்பட்ட செயல்பாட்டைப் போலவே நீங்கள் அதைப் பயன்படுத்தலாம்.

    இறுதிப் பயனர் கண்ணோட்டத்தில் நீங்கள் தேர்வுசெய்த இரண்டு சூத்திர மாறுபாடுகளில் எதுவாக இருந்தாலும், தொடரியல் இது போன்ற எளிமையானது:

    MultiReplace(text, old, new)

    எங்கே:

      17> உரை - மூலத் தரவு
    • பழைய - கண்டுபிடிக்க வேண்டிய மதிப்புகள்
    • புதிய - மாற்ற வேண்டிய மதிப்புகள்

    முந்தைய உதாரணத்தை இன்னும் கொஞ்சம் மேலே எடுத்துக்கொண்டால், நாட்டின் சுருக்கங்களை மட்டுமல்ல, மாநில சுருக்கங்களையும் மாற்றுவோம். இதற்கு, D2 இல் தொடங்கும் நெடுவரிசையில் சுருக்கங்களையும் ( பழைய மதிப்புகள்) மற்றும் E2 இல் தொடங்கும் நெடுவரிசையில் முழுப் பெயர்களையும் ( புதிய மதிப்புகள்) தட்டச்சு செய்யவும்.

    இல். B2, MultiReplace செயல்பாட்டை உள்ளிடவும்:

    =MultiReplace(A2:A10, D2, E2)

    Enter ஐ அழுத்தி முடிவுகளை அனுபவிக்கவும் :)

    இந்த சூத்திரம் எவ்வாறு செயல்படுகிறது

    சூத்திரத்தைப் புரிந்துகொள்வதற்கான துப்பு, மறுநிகழ்வைப் புரிந்துகொள்வதாகும். இது சிக்கலானதாகத் தோன்றலாம், ஆனால் கொள்கை மிகவும் எளிமையானது. ஒவ்வொன்றுடன்மறு செய்கை, ஒரு சுழல்நிலை செயல்பாடு ஒரு பெரிய சிக்கலின் ஒரு சிறிய நிகழ்வை தீர்க்கிறது. எங்கள் விஷயத்தில், MultiReplace செயல்பாடு பழைய மற்றும் புதிய மதிப்புகள் மூலம் சுழல்கிறது, மேலும் ஒவ்வொரு லூப்பிலும் ஒரு மாற்றீட்டைச் செய்கிறது:

    MultiReplace (SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0))

    உள்ளமைக்கப்பட்ட SUBSTITUTE செயல்பாடுகளைப் போலவே, முந்தைய SUBSTITUTE இன் முடிவு அடுத்த SUBSTITUTEக்கான text அளவுருவாக மாறும். வேறு வார்த்தைகளில் கூறுவதானால், MultiReplace இன் ஒவ்வொரு அடுத்தடுத்த அழைப்பிலும், SUBSTITUTE செயல்பாடு அசல் உரை சரத்தை அல்ல, ஆனால் முந்தைய அழைப்பின் வெளியீட்டை செயலாக்குகிறது.

    <1 இல் உள்ள அனைத்து உருப்படிகளையும் கையாள>பழைய பட்டியலானது, மேலே உள்ள கலத்தில் தொடங்கி, OFFSET செயல்பாட்டைப் பயன்படுத்தி, ஒவ்வொரு தொடர்புக்கும் 1 வரிசையை கீழே நகர்த்தவும்:

    OFFSET(old, 1, 0)

    அதே க்கும் செய்யப்படுகிறது. புதிய பட்டியல்:

    OFFSET(new, 1, 0)

    முக்கியமான விஷயம் என்னவென்றால், சுழல்நிலை அழைப்புகள் எப்போதும் தொடர்வதைத் தடுக்க வெளியேறும் புள்ளி வழங்குவது. இது IF செயல்பாட்டின் உதவியுடன் செய்யப்படுகிறது - பழைய செல் காலியாக இருந்தால், செயல்பாடு உரை அதன் தற்போதைய வடிவம் மற்றும் வெளியேறுகிறது:

    =LAMBDA(text, old, new, IF(old="", text, MultiReplace(…)))

    அல்லது

    =LAMBDA(text, old, new, IF(old"", MultiReplace(…), text))

    எடுத்துக்காட்டு 2. Excel இல் பல எழுத்துக்களை மாற்றவும்

    கொள்கையில், முந்தைய எடுத்துக்காட்டில் விவாதிக்கப்பட்ட MultiReplace செயல்பாடு முடியும் மேலே உள்ள ஸ்கிரீன்ஷாட்களில் உள்ள சுருக்கமான மற்றும் முழுப் பெயர்களைப் போலவே, ஒவ்வொரு பழைய மற்றும் புதிய எழுத்து தனித்தனி கலத்தில் உள்ளிடப்பட்டிருந்தால், தனிப்பட்ட எழுத்துக்களையும் கையாளவும்.

    பழையதை உள்ளிட விரும்பினால்ஒரு கலத்தில் உள்ள எழுத்துக்கள் மற்றும் மற்றொரு கலத்தில் உள்ள புதிய எழுத்துக்கள், அல்லது அவற்றை நேரடியாக சூத்திரத்தில் தட்டச்சு செய்து, இந்த சூத்திரங்களில் ஒன்றைப் பயன்படுத்தி ReplaceChars என்ற பெயரில் மற்றொரு தனிப்பயன் செயல்பாட்டை உருவாக்கலாம்:

    =LAMBDA(text, old_chars, new_chars, IF(old_chars"", ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1)), text))

    அல்லது

    =LAMBDA(text, old_chars, new_chars, IF(old_chars="", text, ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1))))

    உங்கள் புதிய Lambda செயல்பாட்டிற்கு வழக்கம் போல் பெயர் மேலாளரில் பெயரிட நினைவில் கொள்ளுங்கள்:

    உங்கள் புதிய தனிப்பயன் செயல்பாடு பயன்படுத்தத் தயாராக உள்ளது:

    ReplaceChars(text, old_chars, new_chars)

    எங்கே:

    • உரை - அசல் சரங்கள்
    • பழைய - தேட வேண்டிய எழுத்துக்கள்
    • புதிய - இடமாற்றம் செய்ய வேண்டிய எழுத்துகள்

    புல சோதனையை வழங்க, இறக்குமதி செய்யப்பட்ட தரவுகளில் அடிக்கடி நிகழ்த்தப்படும் ஒன்றைச் செய்வோம் - ஸ்மார்ட் மேற்கோள்கள் மற்றும் ஸ்மார்ட் அபோஸ்ட்ரோபிகளை நேரான மேற்கோள்கள் மற்றும் நேரான அபோஸ்ட்ரோபிகளுடன் மாற்றவும்.

    முதலில், ஸ்மார்ட் மேற்கோள்கள் மற்றும் ஸ்மார்ட் அபோஸ்ட்ரோபியை D2, நேரான மேற்கோள்கள் மற்றும் நேரான அபோஸ்ட்ரோபியை E2 இல் உள்ளிடுவோம். , சிறந்த வாசிப்புத்திறனுக்காக எழுத்துகளை இடைவெளிகளுடன் பிரித்தல். (இரண்டு கலங்களிலும் ஒரே டிலிமிட்டரைப் பயன்படுத்துவதால், அது முடிவில் எந்தப் பாதிப்பையும் ஏற்படுத்தாது - எக்செல் ஒரு இடத்தை இடமாற்றம் செய்யும்.)

    அதன் பிறகு, இந்த சூத்திரத்தை B2 இல் உள்ளிடுவோம்:

    =ReplaceChars(A2:A4, D2, E2)

    மேலும் நாங்கள் தேடும் முடிவுகளை சரியாகப் பெறுங்கள்:

    சூத்திரத்தில் எழுத்துகளை நேரடியாக தட்டச்சு செய்வதும் சாத்தியமாகும். எங்கள் விஷயத்தில், இது போன்ற நேர் மேற்கோள்களை "நகல்" செய்ய நினைவில் கொள்ளுங்கள்:

    =ReplaceChars(A2:A4, "“ ” ’", """ "" '")

    இந்த சூத்திரம் எவ்வாறு செயல்படுகிறது

    ReplaceChars செயல்பாடு சுழற்சிகள் old_chars மற்றும் new_chars சரங்கள் மற்றும் இடதுபுறத்தில் உள்ள முதல் எழுத்தில் இருந்து ஒரு நேரத்தில் ஒரு மாற்றீடு செய்கிறது. இந்த பகுதி SUBSTITUTE செயல்பாட்டின் மூலம் செய்யப்படுகிறது:

    SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars))

    ஒவ்வொரு மறு செய்கையின் போதும், RIGHT செயல்பாடு old_chars மற்றும் இரண்டின் இடப்பக்கத்திலிருந்து ஒரு எழுத்தை அகற்றும். new_chars strings, அதனால் LEFT ஆனது அடுத்த ஜோடி எழுத்துகளை மாற்றியமைக்கப் பெறலாம்:

    ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1))

    ஒவ்வொரு சுழல்நிலை அழைப்புக்கும் முன், IF செயல்பாடு old_chars சரத்தை மதிப்பிடும் . அது காலியாக இல்லை என்றால், செயல்பாடு தன்னை அழைக்கிறது. கடைசி எழுத்து மாற்றப்பட்டவுடன், மறு செய்கை செயல்முறை முடிவடைகிறது, சூத்திரம் உரை அதன் தற்போதைய வடிவத்தை அளித்து வெளியேறுகிறது.

    குறிப்பு. எங்கள் முக்கிய சூத்திரங்களில் பயன்படுத்தப்படும் SUBSTITUTE செயல்பாடு கேஸ்-சென்சிட்டிவ் என்பதால், Lambdas ( MultiReplace மற்றும் ReplaceChars ) இரண்டும் பெரிய எழுத்துக்களையும் சிறிய எழுத்துக்களையும் வெவ்வேறு எழுத்துகளாகக் கருதுகின்றன.

    உங்கள் எக்செல் இல் LAMBDA செயல்பாடு கிடைக்காத பட்சத்தில், VBA ஐப் பயன்படுத்தி பாரம்பரிய முறையில் மல்டி-ரீபிளேஸிற்கான பயனர் வரையறுக்கப்பட்ட செயல்பாட்டை நீங்கள் எழுதலாம்.

    LAMBDA-வரையறுத்த MultiReplace செயல்பாட்டிலிருந்து UDF ஐ வேறுபடுத்த, அதை வேறு விதமாகப் பெயரிடப் போகிறோம், MassReplace என்று சொல்லுங்கள். செயல்பாட்டின் குறியீடு பின்வருமாறு:

    Function MassReplace(InputRng as Range, FindRng as Range, ReplaceRng as Range) என மாறுபாடு () DimarRes() முடிவுகளைச் சேமிப்பதற்கான மாறுபாடு 'வரிசையாக மங்கலான arSearchReplace(), sTmp As String 'array என ஃபைன்ட்/ரீப்லேஸ் ஜோடிகளை எங்கே சேமிப்பது, தற்காலிக சரம் Dim iFindCurRow, cntFindRows என நீண்ட 'தேடல் வரிசையின் தற்போதைய வரிசையின் அட்டவணை, எண்ணிக்கை வரிசைகளின் மங்கலான iInputCurRow, iInputCurCol, cntInputRows, cntInputCols மூல வரம்பில் உள்ள தற்போதைய வரிசையின் நீளமான 'குறியீடு, மூல வரம்பில் தற்போதைய நெடுவரிசையின் அட்டவணை, வரிசைகளின் எண்ணிக்கை, நெடுவரிசைகளின் எண்ணிக்கை cntInputRows = InputRng.Rows. எண்ணிக்கை cntInputRng .கோலம் iFindCurRow, 1) = FindRng.Cells(iFindCurRow, 1).மதிப்பு arSearchReplace(iFindCurRow, 2) = ReplaceRng.Cells(iFindCurRow, 1).அடுத்த மதிப்பு 'ஐஇன்புட் 1CurRow ஐஇன்புட்டிற்கான ஆதார வரம்பில் தேடுதல் மற்றும் மாற்றுதல் 1 முதல் cntInputCols sTm வரை p = InputRng.Cells(iInputCurRow, iInputCurCol).மதிப்பு 'ஒவ்வொரு கலத்திலும் உள்ள அனைத்து ஃபைண்ட்/ரீப்ளேஸ் ஜோடிகளை iFindCurRowக்கு மாற்றுதல் = 1 க்கு cntFindRows sTmp = Replace(sTmp, arSearchReplace(iFindCurRow, 1), arSowriplace (iInputCurRow, iInputCurCol) = sTmp அடுத்தது MassReplace = arRes இறுதிச் செயல்பாடு

    LAMBDA-வரையறுத்த செயல்பாடுகளைப் போல, UDFகள் ஒர்க்புக்-அகலமானவை . அதாவது தி

    மைக்கேல் பிரவுன் ஒரு பிரத்யேக தொழில்நுட்ப ஆர்வலர், மென்பொருள் கருவிகளைப் பயன்படுத்தி சிக்கலான செயல்முறைகளை எளிதாக்குவதில் ஆர்வம் கொண்டவர். தொழில்நுட்பத் துறையில் ஒரு தசாப்தத்திற்கும் மேலான அனுபவத்துடன், மைக்ரோசாஃப்ட் எக்செல் மற்றும் அவுட்லுக், அத்துடன் கூகுள் தாள்கள் மற்றும் டாக்ஸில் தனது திறமைகளை மெருகேற்றியுள்ளார். மைக்கேலின் வலைப்பதிவு அவரது அறிவையும் நிபுணத்துவத்தையும் மற்றவர்களுடன் பகிர்ந்துகொள்வதற்காக அர்ப்பணிக்கப்பட்டுள்ளது, உற்பத்தித்திறன் மற்றும் செயல்திறனை மேம்படுத்துவதற்கு எளிதாகப் பின்பற்றக்கூடிய உதவிக்குறிப்புகள் மற்றும் பயிற்சிகளை வழங்குகிறது. நீங்கள் ஒரு அனுபவமிக்க நிபுணராக இருந்தாலும் அல்லது தொடக்கநிலையாளராக இருந்தாலும், மைக்கேலின் வலைப்பதிவு இந்த அத்தியாவசிய மென்பொருள் கருவிகளில் இருந்து அதிகமானவற்றைப் பெறுவதற்கு மதிப்புமிக்க நுண்ணறிவுகளையும் நடைமுறை ஆலோசனைகளையும் வழங்குகிறது.