ഉള്ളടക്ക പട്ടിക
വിബിഎ ഉപയോഗിച്ച് ഒരു സെല്ലിനുള്ളിൽ ഡ്യൂപ്ലിക്കേറ്റ് പദങ്ങളോ ടെക്സ്റ്റ് സ്ട്രിംഗുകളോ ഹൈലൈറ്റ് ചെയ്യുന്നത് എങ്ങനെയെന്ന് ട്യൂട്ടോറിയൽ കാണിക്കുന്നു.
എക്സൽ സോപാധിക ഫോർമാറ്റിംഗ് നിങ്ങൾക്ക് ചിന്തിക്കാൻ കഴിയുന്ന എല്ലാ വഴികളിലും തനിപ്പകർപ്പുകൾ ഹൈലൈറ്റ് ചെയ്യുന്നത് സാധ്യമാക്കുന്നു: ഒരു കോളത്തിലോ ഒന്നിലധികം കോളങ്ങളിലോ, തുടർച്ചയായ ഡ്യൂപ്ലിക്കേറ്റ് സെല്ലുകളിലോ, ഒരു കീ കോളത്തിലെ സമാന മൂല്യങ്ങളെ അടിസ്ഥാനമാക്കിയുള്ള മുഴുവൻ വരികളിലോ, 1-ആം സംഭവങ്ങൾക്കൊപ്പം അല്ലെങ്കിൽ അല്ലാതെ. പക്ഷേ, പതിവുപോലെ, ഒരു "പക്ഷേ" ഉണ്ട്. മുഴുവൻ സെല്ലുകളേക്കാൾ ഡ്യൂപ്ലിക്കേറ്റ് ടെക്സ്റ്റ് ഹൈലൈറ്റ് ചെയ്യാൻ നിങ്ങൾ താൽപ്പര്യപ്പെടുമ്പോൾ സോപാധിക ഫോർമാറ്റിംഗ് നിയമങ്ങൾ ഒരു സെൽ തലത്തിൽ പ്രവർത്തിക്കുന്നു. മാക്രോകൾ ഉപയോഗിച്ച് മാത്രമേ ഇത് ചെയ്യാൻ കഴിയൂ. നിങ്ങൾക്ക് VBA-യിൽ പരിചയമില്ലെങ്കിലും, ഈ പേജ് അടയ്ക്കാൻ തിരക്കുകൂട്ടരുത്. ഇവിടെ, ഉപയോഗിക്കാൻ തയ്യാറുള്ള കോഡ് ഉദാഹരണങ്ങളും അവ എങ്ങനെ ഉപയോഗിക്കണം എന്നതിനെക്കുറിച്ചുള്ള വിശദമായ നിർദ്ദേശങ്ങളും നിങ്ങളുടെ വർക്ക്ഷീറ്റുകളിൽ നിങ്ങൾ കണ്ടെത്തും.
ടെക്സ്റ്റ് കെയ്സ് അവഗണിച്ച് സെല്ലിൽ തനിപ്പകർപ്പ് വാക്കുകൾ ഹൈലൈറ്റ് ചെയ്യുക
ചുവടെയുള്ള ചിത്രത്തിൽ കാണിച്ചിരിക്കുന്നതുപോലെ ചുവന്ന ഫോണ്ട് നിറത്തിലുള്ള ഒരു സെല്ലിനുള്ളിൽ ഡ്യൂപ്ലിക്കേറ്റ് വാക്കുകളോ ടെക്സ്റ്റ് സ്ട്രിംഗുകളോ എങ്ങനെ ഷേഡ് ചെയ്യാമെന്ന് ഈ ഉദാഹരണം കാണിക്കുന്നു. ചെറിയക്ഷരങ്ങളും വലിയക്ഷരങ്ങളും ഒരേ പ്രതീകങ്ങളായി കണക്കാക്കുന്നത് ശ്രദ്ധിക്കുക. ഉദാഹരണത്തിന്, ഓറഞ്ച് , ഓറഞ്ച് , ഓറഞ്ച് എന്നിവ ഒരേ പദമായി കണക്കാക്കപ്പെടുന്നു.
മാക്രോയുടെ കോഡ് ഇപ്രകാരമാണ്:
പബ്ലിക് സബ് ഹൈലൈറ്റ് ഡ്യൂപ്കേസ് ഇൻസെൻസിറ്റീവ്() സെൽ റേഞ്ച് ഡിം ഡിലിമിറ്റർ ആയി സ്ട്രിംഗ് ഡിലിമിറ്റർ = ഇൻപുട്ട് ബോക്സ്( "സെല്ലിലെ മൂല്യങ്ങളെ വേർതിരിക്കുന്ന ഡിലിമിറ്റർ നൽകുക" , "ഡിലിമിറ്റർ" , ", " ) ഓരോ സെല്ലിനുംApplication.Selection Call HighlightDupeWordsInCell(Cell, Delimiter, False ) Next End Sub Sub HighlightDupeWordsInCell(സെൽ റേഞ്ച് ആയി, ഓപ്ഷണൽ ഡിലിമിറ്റർ സ്ട്രിംഗ് ആയി = " " , ഓപ്ഷണൽ കേസ് സെൻസിറ്റീവ് ആയി ബൂളിയൻ = ട്രൂ ) മങ്ങിയ വാചകം ( സ്ട്രിംഗായി മങ്ങിയ വാക്കുകൾ) String Dim wordIndex, matchCount, positionInText Integer ആയി CaseSensitive ആണെങ്കിൽ വാക്കുകൾ = Split(Cell.Value, Delimiter) മറ്റ് വാക്കുകൾ = Split(LCase(Cell.Value), Delimiter) End For wordIndex = LBound (പദങ്ങൾ) ലേക്ക് UBound (പദങ്ങൾ) - 1 വാക്ക് = വാക്കുകൾ(wordIndex) matchCount = 0 for nextWordIndex = wordIndex + 1 To UBound (പദങ്ങൾ) വേഡ് = വാക്കുകൾ (nextWordIndex) എങ്കിൽ matchCount = matchCount + 1 End അടുത്താൽ അടുത്തത് WordIndex ആണെങ്കിൽ > 0 തുടർന്ന് വാചകം = "" സൂചികയ്ക്ക് = LBound (പദങ്ങൾ) UBound (പദങ്ങൾ) ലേക്ക് ടെക്സ്റ്റ് = ടെക്സ്റ്റ് & വാക്കുകൾ(ഇൻഡക്സ്) എങ്കിൽ (പദങ്ങൾ(ഇൻഡക്സ്) = വാക്ക്) പിന്നെ സെൽ.അക്ഷരങ്ങൾ(ലെൻ(ടെക്സ്റ്റ്) - ലെൻ(വേഡ്) + 1, ലെൻ(വേഡ്)).Font.Color = vbRed End എങ്കിൽ ടെക്സ്റ്റ് = ടെക്സ്റ്റ് & Delimiter Next End ആണെങ്കിൽ അടുത്ത wordIndex End Subഒരു സെൽ കേസ് സെൻസിറ്റീവിലെ തനിപ്പകർപ്പ് ടെക്സ്റ്റ് ഹൈലൈറ്റ് ചെയ്യുക
മിക്ക സാഹചര്യങ്ങളിലും, Excel-ലെ ടെക്സ്റ്റ് എൻട്രികൾക്കൊപ്പം പ്രവർത്തിക്കുമ്പോൾ ഞങ്ങൾ ലെറ്റർ കെയ്സ് അവഗണിക്കുകയാണ്. എന്നിരുന്നാലും, ചില സാഹചര്യങ്ങളിൽ, ടെക്സ്റ്റ് കേസ് പ്രധാനമാണ്. ഉദാഹരണത്തിന്, നിങ്ങൾ ഐഡികളോ പാസ്വേഡുകളോ അല്ലെങ്കിൽ അത്തരത്തിലുള്ള മറ്റ് രേഖകളോ ആണ് കൈകാര്യം ചെയ്യുന്നതെങ്കിൽ, 1-AA , 1-aa , 1-Aa<തുടങ്ങിയ സ്ട്രിംഗുകൾ 2> ഡ്യൂപ്ലിക്കേറ്റുകളല്ല, ഹൈലൈറ്റ് ചെയ്യാൻ പാടില്ല:
ഈ സാഹചര്യത്തിൽ,കോഡിന്റെ ഇനിപ്പറയുന്ന പതിപ്പ് ഉപയോഗിക്കുക:
Public Sub HighlightDupesCaseSensitive() Dim Cell as Range Dim Delimiter as String Delimiter = InputBox( "ഒരു സെല്ലിൽ മൂല്യങ്ങളെ വേർതിരിക്കുന്ന ഡിലിമിറ്റർ നൽകുക" , "Delimiter" , ", " ) ഓരോന്നിനും സെൽ ആപ്ലിക്കേഷനിൽ. സെലക്ഷൻ കോൾ HighlightDupeWordsInCell(സെൽ, ഡിലിമിറ്റർ, ട്രൂ ) അടുത്ത അവസാനം സബ് സബ് ഹൈലൈറ്റ് ഡ്യൂപ്വേഡ്സ്ഇൻസെൽ(സെൽ ശ്രേണിയായി, ഓപ്ഷണൽ ഡിലിമിറ്റർ സ്ട്രിംഗ് ആയി = " " , ഓപ്ഷണൽ കേസ് സെൻസിറ്റീവ് ആയി ബൂളിയൻ = ട്രൂ ആയി ) മങ്ങിയ വാചകം ( സ്ട്രിംഗായി മങ്ങിയ വാചകം) വാക്ക് സ്ട്രിംഗ് മങ്ങിയ wordIndex, matchCount, positionInText Integer ആയി CaseSensitive ആണെങ്കിൽ വാക്കുകൾ = Split(Cell.Value, Delimiter) മറ്റ് വാക്കുകൾ = Split(LCase(Cell.Value), Delimiter) അവസാനം wordIndex ന് = LBound (പദങ്ങൾ) ആണെങ്കിൽ UBound (പദങ്ങൾ) വാക്കുകൾ) - 1 വാക്ക് = വാക്കുകൾ(wordIndex) matchCount = 0 for nextWordIndex = wordIndex + 1 മുതൽ UBound വരെ (പദങ്ങൾ) വേഡ് = വാക്കുകൾ (nextWordIndex) എങ്കിൽ matchCount = matchCount + 1 End Next If NextWordIndex ആണെങ്കിൽ matchCount > 0 തുടർന്ന് വാചകം = "" സൂചികയ്ക്ക് = LBound (പദങ്ങൾ) UBound (പദങ്ങൾ) ലേക്ക് ടെക്സ്റ്റ് = ടെക്സ്റ്റ് & വാക്കുകൾ(ഇൻഡക്സ്) എങ്കിൽ (പദങ്ങൾ(ഇൻഡക്സ്) = വാക്ക്) പിന്നെ സെൽ.അക്ഷരങ്ങൾ(ലെൻ(ടെക്സ്റ്റ്) - ലെൻ(വേഡ്) + 1, ലെൻ(വേഡ്)).Font.Color = vbRed End എങ്കിൽ ടെക്സ്റ്റ് = ടെക്സ്റ്റ് & Delimiter Next End If Next wordIndex End SubExcel-ൽ ഡ്യൂപ്ലിക്കേറ്റ് വാക്കുകൾ ഹൈലൈറ്റ് ചെയ്യുന്നതിന് മാക്രോകൾ എങ്ങനെ ഉപയോഗിക്കാം
നിങ്ങൾ VBA ഉപയോഗിക്കുന്നതിൽ തുടക്കക്കാരനാണെങ്കിൽ, ചുവടെയുള്ള ഘട്ടം ഘട്ടമായുള്ള നിർദ്ദേശങ്ങൾ നിങ്ങളെ സുഖകരമായി നയിക്കും . പരിചയസമ്പന്നരായ ഉപയോക്താക്കൾക്ക് ചെയ്യാംഡൌൺലോഡ് ലിങ്ക് തിരഞ്ഞെടുത്ത് ബാക്കിയുള്ളത് ഒഴിവാക്കുക :)
നിങ്ങളുടെ വർക്ക്ബുക്കിലേക്ക് കോഡ് ചേർക്കുക
നിങ്ങളുടെ Excel വർക്ക്ബുക്കിൽ മാക്രോയുടെ കോഡ് ചേർത്തുകൊണ്ട് ആരംഭിക്കുക. എങ്ങനെയെന്നത് ഇതാ:
- ഡ്യൂപ്പുകളെ ഹൈലൈറ്റ് ചെയ്യേണ്ട വർക്ക്ബുക്ക് തുറക്കുക.
- വിഷ്വൽ ബേസിക് എഡിറ്റർ തുറക്കാൻ Alt + F11 അമർത്തുക.
- ഇടത് പാളിയിൽ, ഈ വർക്ക്ബുക്ക് റൈറ്റ് ക്ലിക്ക് ചെയ്ത് സന്ദർഭ മെനുവിൽ നിന്ന് തിരുകുക > മൊഡ്യൂൾ തിരഞ്ഞെടുക്കുക.
- കോഡ് വിൻഡോയിൽ കോഡ് ഒട്ടിക്കുക.
- ഭാവിയിലെ ഉപയോഗത്തിനായി മാക്രോ സൂക്ഷിക്കാൻ, നിങ്ങളുടെ വർക്ക്ബുക്ക് മാക്രോ-പ്രാപ്തമാക്കിയ .xlsm ഫയലായി സംരക്ഷിക്കുന്നത് ഉറപ്പാക്കുക.
പകരം, നിങ്ങൾക്ക് ഞങ്ങളുടെ സാമ്പിൾ വർക്ക്ബുക്ക് ഡൗൺലോഡ് ചെയ്ത് അവിടെ നിന്ന് മാക്രോ പ്രവർത്തിപ്പിക്കാം. സാമ്പിൾ വർക്ക്ബുക്കിൽ ഇനിപ്പറയുന്ന മാക്രോകൾ അടങ്ങിയിരിക്കുന്നു:
- HighlightDupesCaseInsensitive - ലെറ്റർ കേസ് അവഗണിച്ച് ഒരു സെല്ലിനുള്ളിൽ ഷേഡുകൾ തനിപ്പകർപ്പുകൾ.
- HighlightDupesCaseSensitive - ഹൈലൈറ്റുകൾ ലെറ്റർ കെയ്സ് പരിഗണിക്കുന്ന ഒരു സെല്ലിലെ ഡ്യൂപ്പുകൾ.
കൂടുതൽ വിവരങ്ങൾക്ക്, Excel-ൽ VBA കോഡ് എങ്ങനെ ചേർക്കാമെന്ന് കാണുക.
മാക്രോ റൺ ചെയ്യുക
കോഡ് ഉപയോഗിച്ച് നിങ്ങളുടെ സ്വന്തം വർക്ക്ബുക്കിലേക്കോ ഞങ്ങളുടെ സാമ്പിൾ ഫയലിലേക്കോ ചേർത്തു ഡൗൺലോഡ് ചെയ്ത് തുറക്കുക, ഈ രീതിയിൽ മാക്രോ പ്രവർത്തിപ്പിക്കുക:
- നിങ്ങളുടെ വർക്ക്ഷീറ്റിൽ, തനിപ്പകർപ്പ് ടെക്സ്റ്റ് ഹൈലൈറ്റ് ചെയ്യാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്ന സെല്ലുകൾ തിരഞ്ഞെടുക്കുക. ഇത് ഒരു ശ്രേണിയോ ഒന്നിലധികം നോൺ-അടുത്ത ശ്രേണികളോ ആകാം.
- Alt + F8 അമർത്തുക .
- താൽപ്പര്യമുള്ള മാക്രോ തിരഞ്ഞെടുത്ത് Run ക്ലിക്ക് ചെയ്യുക.
- ഡിലിമിറ്റർ വ്യക്തമാക്കാൻ മാക്രോ നിങ്ങളോട് ആവശ്യപ്പെടുംഅത് തിരഞ്ഞെടുത്ത സെല്ലുകളിലെ മൂല്യങ്ങളെ വേർതിരിക്കുന്നു. പ്രീസെറ്റ് ഡിലിമിറ്റർ (നമ്മുടെ കാര്യത്തിൽ ഒരു കോമയും ഒരു സ്ഥലവും) ഇൻപുട്ട് ബോക്സിൽ സ്വയമേവ ദൃശ്യമാകും. നിങ്ങളുടെ ആവശ്യങ്ങൾക്കനുസരിച്ച്, നിങ്ങൾക്ക് ഡിഫോൾട്ട് ഡിലിമിറ്റർ ഉപേക്ഷിക്കാം അല്ലെങ്കിൽ മറ്റൊന്ന് ടൈപ്പ് ചെയ്യാം, തുടർന്ന് ശരി ക്ലിക്കുചെയ്യുക.
ഒരു നിമിഷം കഴിഞ്ഞ്, തിരഞ്ഞെടുത്തവയിലെ എല്ലാ തനിപ്പകർപ്പ് സ്ട്രിംഗുകളും സെല്ലുകൾ ചുവപ്പ് നിറത്തിൽ ഷേഡുള്ളതായിരിക്കും (അല്ലെങ്കിൽ നിങ്ങളുടെ കോഡിൽ ഏത് ഫോണ്ട് കളർ സജ്ജീകരിച്ചിരിക്കുന്നുവോ അത്).
നുറുങ്ങ്. ഒരു സെല്ലിനുള്ളിൽ ഡ്യൂപ്ലിക്കേറ്റുകൾ നീക്കം ചെയ്യാൻ , ഞങ്ങളുടെ അൾട്ടിമേറ്റ് സ്യൂട്ടിൽ ഉൾപ്പെടുത്തിയിരിക്കുന്ന നിരവധി തവണ ലാഭിക്കുന്ന ടൂളുകളിൽ ഒന്നായ ഡ്യൂപ്ലിക്കേറ്റ് സബ്സ്ട്രിംഗുകൾ നീക്കംചെയ്യുക.
നിങ്ങളുടെ ആവശ്യങ്ങൾക്കായി കോഡ് എങ്ങനെ ക്രമീകരിക്കാം
ഈ ഉപയോഗ കുറിപ്പുകളും VBA-യെ കുറിച്ചുള്ള അടിസ്ഥാന അറിവും (അല്ലെങ്കിൽ ചുവടെയുള്ള നിർദ്ദേശങ്ങൾ കൃത്യമായി പിന്തുടരുക) ഉപയോഗിച്ച്, നിങ്ങളുടെ ആവശ്യങ്ങൾക്ക് അനുസൃതമായി നിങ്ങൾക്ക് കോഡുകൾ എളുപ്പത്തിൽ പരിഷ്കരിക്കാനാകും.
ഒരേ മൊഡ്യൂളിൽ സ്ഥാപിക്കുക
നിങ്ങൾ ശ്രദ്ധിച്ചേക്കാവുന്നതുപോലെ, രണ്ട് മാക്രോകളും ( HighlightDupesCaseSensitive , HighlightDupesCaseInsensitive ) HighlightDupeWordsInCell ഫംഗ്ഷനിലേക്ക് വിളിക്കുക. മുകളിലുള്ള രണ്ട് മാക്രോകൾ തമ്മിലുള്ള വ്യത്യാസം പറഞ്ഞ ഫംഗ്ഷനിലേക്ക് കടന്ന 3-ാമത്തെ പാരാമീറ്ററിൽ (കേസ് സെൻസിറ്റീവ്) മാത്രമാണ്.
കേസ്-സെൻസിറ്റീവ് തിരയലിനായി, ഇത് TRUE ആയി സജ്ജീകരിച്ചിരിക്കുന്നു:
Call HighlightDupeWordsInCell(Cell, Delimiter, True)
കേസ്-ഇൻസെൻസിറ്റീവ് തിരയലിനായി, ഇത് FALSE എന്ന് സജ്ജീകരിച്ചിരിക്കുന്നു:
Call HighlightDupeWordsInCell(Cell, Delimiter, False)
മാക്രോകൾ പ്രവർത്തിക്കുന്നതിന്, HighlightDupeWordsInCell ഫംഗ്ഷന്റെ കോഡ് സ്ഥാപിക്കണം. അതേ മൊഡ്യൂൾമാക്രോസ്.
ഡീലിമിറ്റർ
റൺ ചെയ്യുമ്പോൾ, തിരഞ്ഞെടുത്ത സെല്ലുകളിലെ വാക്കുകൾ/സ്ട്രിംഗുകൾ വേർതിരിക്കുന്ന ഡിലിമിറ്റർ വ്യക്തമാക്കാൻ മാക്രോ നിങ്ങളോട് ആവശ്യപ്പെടും. ഡിഫോൾട്ട് ഡിലിമിറ്റർ ഒരു കോമയും ഒരു സ്പെയ്സും (", ") ആണ്, ഇത് ഇൻപുട്ട് ബോക്സിൽ പ്രീസെറ്റ് ചെയ്തിരിക്കുന്നു:
Delimiter = InputBox("Specify the delimiter that separates values in a cell", "Delimiter", ", ")
നിങ്ങളുടെ കോഡിൽ, നിങ്ങൾക്ക് മറ്റേതെങ്കിലും പ്രതീകം(കൾ) ഉപയോഗിക്കാൻ സ്വാതന്ത്ര്യമുണ്ട്. മുൻകൂട്ടി നിശ്ചയിച്ചിട്ടുള്ള ഡിലിമിറ്റർ ആയി.
നിറം
സ്വതവേ, HighlightDupeWordsInCell ഫംഗ്ഷൻ ഷേഡുകൾ ചുവപ്പ് ഫോണ്ട് നിറത്തിൽ തനിപ്പകർപ്പുകൾ. ഈ വരിയിൽ നിറം നിർവചിച്ചിരിക്കുന്നു:
Cell.Characters(positionInText, Len(word)).Font.Color = vbRed
ഇവിടെ, vbRed എന്നത് ഒരു തരം VBA വർണ്ണ സ്ഥിരാങ്കമാണ്. മറ്റൊരു വർണ്ണത്തിൽ ഡ്യൂപ്പുകൾ പ്രദർശിപ്പിക്കുന്നതിന്, നിങ്ങൾക്ക് vbRed-നെ മറ്റൊരു സ്ഥിരാങ്കമായ vbGreen, vbYellow, vbBlue മുതലായവ ഉപയോഗിച്ച് മാറ്റിസ്ഥാപിക്കാം. T പിന്തുണയ്ക്കുന്ന വർണ്ണ സ്ഥിരാങ്കങ്ങളുടെ ലിസ്റ്റ് ഇവിടെ കാണാം.
അതാണ് Excel സെല്ലുകളിൽ തനിപ്പകർപ്പ് വാക്കുകൾ എങ്ങനെ ഹൈലൈറ്റ് ചെയ്യാം. വായിച്ചതിന് ഞാൻ നന്ദി പറയുന്നു, അടുത്ത ആഴ്ച ഞങ്ങളുടെ ബ്ലോഗിൽ നിങ്ങളെ കാണുമെന്ന് പ്രതീക്ഷിക്കുന്നു!
ലഭ്യമായ ഡൗൺലോഡുകൾ
ഒരു സെല്ലിലെ ഡ്യൂപ്ലിക്കേറ്റുകൾ ഹൈലൈറ്റ് ചെയ്യുന്നതിനുള്ള കോഡ് ഉദാഹരണങ്ങൾ (.xlsm ഫയൽ)
Ultimate സ്യൂട്ട് 14 ദിവസത്തെ പൂർണ്ണമായ പ്രവർത്തന പതിപ്പ് (.exe ഫയൽ)