విషయ సూచిక
VBAని ఉపయోగించి సెల్లో నకిలీ పదాలు లేదా టెక్స్ట్ స్ట్రింగ్లను ఎలా హైలైట్ చేయాలో ట్యుటోరియల్ చూపుతుంది.
Excel షరతులతో కూడిన ఫార్మాటింగ్ మీరు ఆలోచించగలిగే ప్రతి విధంగా నకిలీలను హైలైట్ చేయడం సాధ్యం చేస్తుంది: 1వ సంఘటనలతో లేదా లేకుండా, ఒకే నిలువు వరుస లేదా బహుళ నిలువు వరుసలు, వరుస నకిలీ సెల్లు మరియు కీ కాలమ్లోని ఒకే విలువల ఆధారంగా మొత్తం అడ్డు వరుసలు. కానీ, ఎప్పటిలాగే, "కానీ" ఉంది. షరతులతో కూడిన ఫార్మాటింగ్ నియమాలు సెల్ స్థాయిలో పని చేస్తాయి, అయితే మీరు మొత్తం సెల్ల కంటే నకిలీ వచనాన్ని హైలైట్ చేయాలనుకోవచ్చు. ఇది మాక్రోలతో మాత్రమే చేయబడుతుంది. మీకు VBAతో ఎలాంటి అనుభవం లేకపోయినా, దయచేసి ఈ పేజీని మూసివేయడానికి తొందరపడకండి. ఇక్కడ, మీరు ఉపయోగించడానికి సిద్ధంగా ఉన్న కోడ్ ఉదాహరణలు మరియు వాటిని మీ వర్క్షీట్లలో ఎలా ఉపయోగించాలో వివరణాత్మక సూచనలను కనుగొంటారు.
టెక్స్ట్ కేస్ను విస్మరిస్తూ సెల్లో నకిలీ పదాలను హైలైట్ చేయండి
క్రింది చిత్రంలో చూపిన విధంగా రెడ్ ఫాంట్ కలర్లో సెల్లో డూప్లికేట్ పదాలు లేదా టెక్స్ట్ స్ట్రింగ్లను ఎలా షేడ్ చేయాలో ఈ ఉదాహరణ చూపిస్తుంది. చిన్న అక్షరాలు మరియు పెద్ద అక్షరాలు ఒకే అక్షరాలుగా పరిగణించబడుతున్నాయని దయచేసి గమనించండి. ఉదాహరణకు, ఆరెంజ్ , ఆరెంజ్ మరియు ఆరెంజ్ ఒకే పదంగా పరిగణించబడతాయి.
ది స్థూల కోడ్ క్రింది విధంగా ఉంది:
పబ్లిక్ సబ్ హైలైట్ డ్యూప్స్కేస్ ఇన్సెన్సిటివ్() స్ట్రింగ్ డీలిమిటర్గా డిమ్ సెల్ డిమ్ డిలిమిటర్గా డిమ్ డిలిమిటర్ = ఇన్పుట్బాక్స్( "సెల్లో విలువలను వేరు చేసే డీలిమిటర్ను నమోదు చేయండి" , "డిలిమిటర్" , ", " ) ప్రతి సెల్కుApplication.Selection Call HighlightDupeWordsInCell(Cell, Delimiter, False ) తదుపరి ముగింపు ఉప ఉప HighlightDupeWordsInCell(సెల్ పరిధి వలె, ఐచ్ఛిక డీలిమిటర్ స్ట్రింగ్ వలె = " " , ఐచ్ఛిక కేస్సెన్సిటివ్ బూలియన్ = నిజం స్ట్రింగ్ డిమ్ వర్డ్ఇండెక్స్, మ్యాచ్కౌంట్, పొజిషన్ఇన్టెక్స్ట్ పూర్ణాంకం వలె కేస్సెన్సిటివ్ అయితే పదాలు = స్ప్లిట్(సెల్.విలువ, డీలిమిటర్) ఇతర పదాలు = స్ప్లిట్ (ఎల్సీస్(సెల్.విలువ), డీలిమిటర్) ఎండ్ WordIndex కోసం = LBound (పదాలు) UBound (పదాలు) - 1 పదం = పదాలు(wordIndex) matchCount = 0 nextWordIndex కోసం = wordIndex + 1 నుండి UBound (పదాలు) పదం = పదాలు(nextWordIndex) అయితే matchCount = matchCount + 1 End తదుపరిది అయితే తదుపరిWordIndex ఉంటే మ్యాచ్కౌంట్ > 0 అప్పుడు టెక్స్ట్ = "" ఇండెక్స్ కోసం = LBound (పదాలు) నుండి UBound (పదాలు) టెక్స్ట్ = టెక్స్ట్ & పదాలు(ఇండెక్స్) అయితే (పదాలు(ఇండెక్స్) = పదం) అప్పుడు సెల్.అక్షరాలు(లెన్(టెక్స్ట్) - లెన్(వర్డ్) + 1, లెన్(వర్డ్)).Font.Color = vbRed ముగింపు టెక్స్ట్ = టెక్స్ట్ & డీలిమిటర్ నెక్స్ట్ ఎండ్ ఐతే నెక్స్ట్ వర్డ్ఇండెక్స్ ఎండ్ సబ్సెల్ కేస్-సెన్సిటివ్లో డూప్లికేట్ టెక్స్ట్ని హైలైట్ చేయండి
చాలా సందర్భాలలో, ఎక్సెల్లో టెక్స్ట్ ఎంట్రీలతో పని చేస్తున్నప్పుడు మేము లెటర్ కేస్ను విస్మరిస్తాము. అయితే, కొన్ని పరిస్థితులలో, టెక్స్ట్ కేసు ముఖ్యమైనది. ఉదాహరణకు, మీరు IDలు, పాస్వర్డ్లు లేదా ఆ రకమైన ఇతర రికార్డులతో వ్యవహరిస్తుంటే, 1-AA , 1-aa మరియు 1-Aa<వంటి స్ట్రింగ్లు 2> నకిలీలు కావు మరియు హైలైట్ చేయకూడదు:
ఈ సందర్భంలో,కోడ్ యొక్క క్రింది సంస్కరణను ఉపయోగించండి:
పబ్లిక్ సబ్ హైలైట్ డ్యూప్స్కేస్సెన్సిటివ్() స్ట్రింగ్ డీలిమిటర్గా డిమ్ సెల్ డిమ్ డిలిమిటర్గా = ఇన్పుట్బాక్స్( "సెల్లో విలువలను వేరు చేసే డీలిమిటర్ను నమోదు చేయండి" , "డిలిమిటర్" , ", " ) అప్లికేషన్లో సెల్.సెలెక్షన్ కాల్ హైలైట్డ్యూప్వర్డ్స్ఇన్సెల్(సెల్, డీలిమిటర్, ట్రూ ) తదుపరి ముగింపు సబ్ సబ్ హైలైట్ డ్యూప్వర్డ్స్ఇన్సెల్(సెల్ రేంజ్గా, ఐచ్ఛిక డీలిమిటర్ స్ట్రింగ్గా = "" , ఐచ్ఛిక కేస్సెన్సిటివ్గా బూలియన్గా = ట్రూ ) మసక పదాలు ( స్ట్రింగ్గా డైమ్ టెక్స్ట్) పదం స్ట్రింగ్ డిమ్ వర్డ్ఇండెక్స్, మ్యాచ్కౌంట్, పొజిషన్ఇన్టెక్స్ట్ పూర్ణాంకం వలె కేస్సెన్సిటివ్ అయితే పదాలు = స్ప్లిట్(సెల్.వాల్యూ, డీలిమిటర్) ఇతర పదాలు = స్ప్లిట్(ఎల్సీస్(సెల్.విలువ), డీలిమిటర్) ఎండ్ వర్డ్ ఇండెక్స్ = ఎల్బౌండ్ (పదాలు) కోసం యుబౌండ్ (పదాలు). పదాలు) - 1 పదం = పదాలు(wordIndex) matchCount = 0 తదుపరిWordIndex కోసం = wordIndex + 1 నుండి UBound (పదాలు) పదం = పదాలు(nextWordIndex) అయితే, matchCount = matchCount + 1 End Next If NextWordIndex అయితే మ్యాచ్కౌంట్ > 0 అప్పుడు టెక్స్ట్ = "" ఇండెక్స్ కోసం = LBound (పదాలు) నుండి UBound (పదాలు) టెక్స్ట్ = టెక్స్ట్ & పదాలు(ఇండెక్స్) అయితే (పదాలు(ఇండెక్స్) = పదం) అప్పుడు సెల్.అక్షరాలు(లెన్(టెక్స్ట్) - లెన్(వర్డ్) + 1, లెన్(వర్డ్)).Font.Color = vbRed ముగింపు టెక్స్ట్ = టెక్స్ట్ & డీలిమిటర్ నెక్స్ట్ ఎండ్ ఐతే నెక్స్ట్ వర్డ్ఇండెక్స్ ఎండ్ సబ్ఎక్సెల్లో నకిలీ పదాలను హైలైట్ చేయడానికి మాక్రోలను ఎలా ఉపయోగించాలి
మీరు VBAని ఉపయోగించడంలో అనుభవశూన్యుడు అయితే, దిగువ దశల వారీ సూచనలు మీకు సౌకర్యవంతంగా ఉంటాయి . అనుభవజ్ఞులైన వినియోగదారులు ఉండవచ్చుడౌన్లోడ్ లింక్ని ఎంచుకుని, మిగిలిన వాటిని దాటవేయి :)
కోడ్ను మీ వర్క్బుక్కి జోడించండి
మీరు మీ Excel వర్క్బుక్లో మాక్రో కోడ్ని ఇన్సర్ట్ చేయడంతో ప్రారంభించండి. ఇక్కడ ఎలా ఉంది:
- మీరు నకిలీలను హైలైట్ చేయాలనుకుంటున్న వర్క్బుక్ని తెరవండి.
- విజువల్ బేసిక్ ఎడిటర్ను తెరవడానికి Alt + F11ని నొక్కండి.
- ఎడమ పేన్లో, ఈ వర్క్బుక్ పై కుడి-క్లిక్ చేసి, సందర్భ మెను నుండి చొప్పించు > మాడ్యూల్ ఎంచుకోండి.
- కోడ్ విండోలో కోడ్ను అతికించండి.
- భవిష్యత్ ఉపయోగం కోసం మాక్రోని ఉంచడానికి, మీ వర్క్బుక్ను మాక్రో-ఎనేబుల్ చేయబడిన .xlsm ఫైల్గా సేవ్ చేసుకోండి.
ప్రత్యామ్నాయంగా, మీరు మా నమూనా వర్క్బుక్ని డౌన్లోడ్ చేసుకోవచ్చు మరియు అక్కడ నుండి మాక్రోను రన్ చేయవచ్చు. నమూనా వర్క్బుక్ కింది మాక్రోలను కలిగి ఉంది:
- HighlightDupesCaseInsensitive - అక్షరం కేస్ను విస్మరిస్తూ సెల్లో షేడ్స్ డూప్లికేట్లు.
- HighlightDupesCaseSensitive - ముఖ్యాంశాలు సెల్లో డూప్లు లేఖ కేసును పరిగణనలోకి తీసుకుంటాయి.
మరింత సమాచారం కోసం, దయచేసి Excelలో VBA కోడ్ను ఎలా చొప్పించాలో చూడండి.
మాక్రోని
కోడ్తో రన్ చేయండి మీ స్వంత వర్క్బుక్ లేదా మా నమూనా ఫైల్ డౌన్లోడ్ చేయబడి, తెరవబడి, మాక్రోను ఈ విధంగా రన్ చేయడానికి జోడించబడింది:
- మీ వర్క్షీట్లో, మీరు నకిలీ వచనాన్ని హైలైట్ చేయాలనుకుంటున్న సెల్లను ఎంచుకోండి. ఇది ఒక పరిధి లేదా అనేక ప్రక్కనే లేని పరిధులు కావచ్చు.
- Alt + F8 నొక్కండి .
- ఆసక్తి ఉన్న స్థూలాన్ని ఎంచుకుని, రన్ ని క్లిక్ చేయండి.
- డిలిమిటర్ని పేర్కొనమని మాక్రో మిమ్మల్ని అడుగుతుందిఅది ఎంచుకున్న సెల్లలోని విలువలను వేరు చేస్తుంది. ప్రీసెట్ డీలిమిటర్ (మా విషయంలో కామా మరియు ఖాళీ) స్వయంచాలకంగా ఇన్పుట్ బాక్స్లో కనిపిస్తుంది. మీ అవసరాలను బట్టి, మీరు డిఫాల్ట్ డీలిమిటర్ను వదిలివేయవచ్చు లేదా వేరొక దానిని టైప్ చేసి, ఆపై సరే క్లిక్ చేయండి.
ఒక క్షణం తర్వాత, ఎంచుకున్న వాటిలో అన్ని నకిలీ స్ట్రింగ్లు కణాలు ఎరుపు రంగులో షేడ్ చేయబడతాయి (లేదా మీ కోడ్లో ఏదైనా ఫాంట్ రంగు సెట్ చేయబడి ఉంటుంది).
చిట్కా. సెల్లో త్వరగా నకిలీలను తీసివేయడానికి , మీరు మా అల్టిమేట్ సూట్లో చేర్చబడిన అనేక సార్లు ఆదా చేసే సాధనాల్లో ఒకటైన డూప్లికేట్ సబ్స్ట్రింగ్లను తీసివేయండి.
మీ అవసరాలకు కోడ్ను ఎలా సర్దుబాటు చేయాలి
0>ఈ వినియోగ గమనికలు మరియు VBA గురించి చాలా ప్రాథమిక జ్ఞానంతో (లేదా దిగువ సూచనలను అనుసరించడం ద్వారా), మీరు మీ అవసరాలకు అనుగుణంగా కోడ్లను సులభంగా సవరించవచ్చు.అదే మాడ్యూల్లో ఉంచండి
మీరు గమనించినట్లుగా, రెండు మాక్రోలు ( HighlightDupesCaseSensitive మరియు HighlightDupesCaseInsensitive ) HighlightDupeWordsInCell ఫంక్షన్కి కాల్ చేస్తాయి. పైన పేర్కొన్న రెండు మాక్రోల మధ్య వ్యత్యాసం పేర్కొన్న ఫంక్షన్కు పంపబడిన 3వ పరామితి (కేస్సెన్సిటివ్)లో మాత్రమే ఉంది.
కేస్-సెన్సిటివ్ శోధన కోసం, ఇది TRUEకి సెట్ చేయబడింది:
Call HighlightDupeWordsInCell(Cell, Delimiter, True)
కేస్-సెన్సిటివ్ శోధన కోసం, ఇది తప్పుకు సెట్ చేయబడింది:
Call HighlightDupeWordsInCell(Cell, Delimiter, False)
మాక్రోలు పని చేయడానికి, HighlightDupeWordsInCell ఫంక్షన్ కోడ్ తప్పనిసరిగా ఉంచబడుతుంది అదే మాడ్యూల్macros.
Delimiter
రన్ చేసినప్పుడు, ఎంచుకున్న సెల్లలో పదాలు/తీగలను వేరు చేసే డీలిమిటర్ను పేర్కొనమని మాక్రో మిమ్మల్ని అడుగుతుంది. డిఫాల్ట్ డీలిమిటర్ కామా మరియు స్పేస్ (", ") మరియు ఇది ఇన్పుట్బాక్స్లో ప్రీసెట్ చేయబడింది:
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 ఫైల్)
అల్టిమేట్ సూట్ 14-రోజుల పూర్తి-ఫంక్షనల్ వెర్షన్ (.exe ఫైల్)