VBA StrComp | StrComp ఫంక్షన్ ఉపయోగించి VBA లోని స్ట్రింగ్స్ను సరిపోల్చండి
ఎక్సెల్ VBA StrComp ఫంక్షన్
VBA StrComp రెండు స్ట్రింగ్ విలువలు ఒకేలా ఉన్నాయో లేదో పోల్చడానికి ఉపయోగించే అంతర్నిర్మిత ఫంక్షన్. అయినప్పటికీ, ఫలితాలు డిఫాల్ట్ చేయబడవు వర్క్షీట్లో మాదిరిగా ఇది నిజం లేదా తప్పు.
మేము ఫలితాలను చూసే ముందు మొదట StrComp ఫంక్షన్ యొక్క వాక్యనిర్మాణాన్ని మీకు చూపిస్తాను.
- స్ట్రింగ్ 1: స్ట్రింగ్ 1 అనేది మనం పోల్చిన మొదటి స్ట్రింగ్ లేదా విలువ.
- స్ట్రింగ్ 2: స్ట్రింగ్ 2 అనేది మనం పోల్చిన రెండవ స్ట్రింగ్ లేదా విలువ స్ట్రింగ్ 1.
- సరిపోల్చండి: మేము ఇక్కడ మూడు ఎంపికలను సరఫరా చేయవచ్చు.
- 0 = బైనరీ పోల్చండి. ఇది కేస్ సెన్సిటివ్ లెక్కలను చేస్తుంది. ఉదాహరణకు “హలో” “హలో” కి సమానం కాదు ఎందుకంటే రెండు పదాల కేసులు భిన్నంగా ఉంటాయి. మీరు ఈ పరామితిని విస్మరిస్తే ఇది డిఫాల్ట్ విలువ. vbBinaryCompare
- 1 = టెక్స్ట్ పోల్చండి. ఈ ఐచ్చికము నాన్-కేస్ సున్నితమైన గణనలను చేస్తుంది. ఉదాహరణకు “హలో” “హలో” ఈవెంట్కు సమానం, అయితే రెండు పదాల కేసులు భిన్నంగా ఉంటాయి. vbTextCompare
- 2 = యాక్సెస్ పోల్చండి. ఇది డేటాబేస్ పోలికను చేస్తుంది.
స్ట్రింగ్ పోలిక (StrComp) ఫంక్షన్ ఫలితాలు
వర్క్షీట్లో రెండు విలువలను పోల్చినప్పుడు నేను చెప్పినట్లుగా, ఫలితం ట్రూ లేదా ఫాల్స్గా లభిస్తుంది. కానీ VBA స్ట్రింగ్ పోలిక ఫంక్షన్ ఫలితాలు ఒకేలా ఉండవు.
- మేము ఎప్పుడు సున్నా (0) పొందుతాము స్ట్రింగ్ 1 సమానముగా స్ట్రింగ్ 2.
- మనకు ఒకటి (1) లభిస్తుంది స్ట్రింగ్ 1 విలువ కంటే ఎక్కువ స్ట్రింగ్ 2 విలువ.
- మేము ఎప్పుడు మైనస్ వన్ (-1) పొందుతాము స్ట్రింగ్ 1 విలువ కంటే తక్కువ స్ట్రింగ్ 2
- మేము ఎప్పుడు NULL ను పొందుతాము స్ట్రింగ్ 1 లేదా స్ట్రింగ్ 2 విలువ NULL.
VBA StrComp ఫంక్షన్ను ఉపయోగించడానికి ఉదాహరణలు
మీరు ఈ VBA StrComp Excel మూసను ఇక్కడ డౌన్లోడ్ చేసుకోవచ్చు - VBA StrComp Excel మూసఉదాహరణ # 1
సరళమైన ఉదాహరణతో ప్రారంభిద్దాం. ఉదాహరణకు, మేము రెండు విలువలను పోల్చి చూస్తాము, అనగా “ఎక్సెల్ VBA” & “ఎక్సెల్ VBA”.
కోడ్:
ఉప StrComp_Example1 () స్ట్రింగ్గా మసకబారిన ఫస్ట్వాల్యూ 'స్ట్రింగ్ను నిల్వ చేయడానికి 1 విలువ మసక సెకండ్వాల్యూను స్ట్రింగ్గా నిల్వ చేయడానికి' స్ట్రింగ్ను నిల్వ చేయడానికి 2 విలువ మసక ఫలితం స్ట్రింగ్గా 'StrComp ఫార్ములా యొక్క ఫలితాన్ని నిల్వ చేయడానికి ఫస్ట్వాల్యూ = "ఎక్సెల్ VBA"' స్ట్రింగ్ 1 విలువను కేటాయించండి సెకండ్వాల్యూ = "ఎక్సెల్ VBA" 'స్ట్రింగ్ 2 విలువను కేటాయించండి ఫలితం = StrComp (FirstValue, SecondValue, vbBinaryCompare)' StrComp ఫంక్షన్ వర్తించు MsgBox Result 'ఫలితాన్ని సందేశ పెట్టెలో చూపించు ముగింపు ఉప
నేను ఈ కోడ్ను నడుపుతున్నప్పుడు మనకు జీరో వస్తుంది (0) ఫలితంగా రెండు స్ట్రింగ్ 1 మరియు స్ట్రింగ్ 2 విలువలు ఒకటే.
ఉదాహరణ # 2
ఇప్పుడు నేను రెండు పదాల కేసులను మారుస్తాను.
స్ట్రింగ్ 1 = ఎక్సెల్ Vba
స్ట్రింగ్ 2 = ఎక్సెల్ VBA
కోడ్:
ఉప StrComp_Example2 () స్ట్రింగ్గా మసకబారిన ఫస్ట్వాల్యూ 'స్ట్రింగ్ను నిల్వ చేయడానికి 1 విలువ మసక సెకండ్వాల్యూని స్ట్రింగ్గా నిల్వ చేయడానికి' స్ట్రింగ్ను నిల్వ చేయడానికి 2 విలువ మసక ఫలితం స్ట్రింగ్గా 'StrComp ఫార్ములా యొక్క ఫలితాన్ని నిల్వ చేయడానికి FirstValue = "Excel Vba"' స్ట్రింగ్ 1 విలువను కేటాయించండి సెకండ్వాల్యూ = "ఎక్సెల్ VBA" 'స్ట్రింగ్ 2 విలువను కేటాయించండి ఫలితం = StrComp (FirstValue, SecondValue, vbBinaryCompare)' StrComp ఫంక్షన్ వర్తించు MsgBox Result 'ఫలితాన్ని సందేశ పెట్టెలో చూపించు ముగింపు ఉప
నేను ఈ కోడ్ను అమలు చేసినప్పుడు మనకు లభిస్తుంది 1 ఎందుకంటే మేము పోల్చండి వాదనను “vbBinaryCompare ” ఇది కేస్ సున్నితమైన అక్షరాల కోసం తనిఖీ చేస్తుంది.
ఇప్పుడు నేను మారుస్తాను సరిపోల్చండి నుండి ఎంపిక “vbBinaryCompare ” కు “vbTextCompare ”
కోడ్:
ఉప StrComp_Example3 () స్ట్రింగ్గా మసకబారిన ఫస్ట్వాల్యూ 'స్ట్రింగ్ను నిల్వ చేయడానికి 1 విలువ మసక సెకండ్వాల్యూని స్ట్రింగ్గా నిల్వ చేయడానికి' స్ట్రింగ్ను నిల్వ చేయడానికి 2 విలువ మసక ఫలితం స్ట్రింగ్గా 'StrComp ఫార్ములా యొక్క ఫలితాన్ని నిల్వ చేయడానికి FirstValue = "Excel Vba"' స్ట్రింగ్ 1 విలువను కేటాయించండి సెకండ్వాల్యూ = "ఎక్సెల్ VBA" 'స్ట్రింగ్ 2 విలువను కేటాయించండి ఫలితం = StrComp (FirstValue, SecondValue, vbTextCompare)' StrComp ఫంక్షన్ను వర్తించు MsgBox Result 'ఫలితాన్ని సందేశ పెట్టెలో చూపించు ముగింపు ఉప
దీనితో సరిపోల్చండి, మేము సున్నా పొందుతాము (0) ఎందుకంటే vbaTextCompare కేస్ సున్నితమైన పదాలను విస్మరిస్తుంది.
ఉదాహరణ # 3
IF కండిషన్తో VBA StrComp యొక్క కేస్ స్టడీ
దిగువ చిత్రం వంటి డేటా మీకు ఉందని అనుకోండి.
మనం పోల్చాలి స్ట్రింగ్ 1 తో స్ట్రింగ్ 2 మరియు వస్తాయి ఫలితం రెండూ ఒకేలా ఉంటే “ఖచ్చితమైనవి” గా, లేకపోతే ఫలితం “సరిగ్గా లేదు”.
దిగువ కోడ్ మాకు పని చేస్తుంది.
కోడ్:
ఉప StrComp_Example4 () మసక ఫలితం I = 2 నుండి 6 ఫలితం = StrComp (కణాలు (i, 1). విలువ, కణాలు (i, 2). విలువ) ఫలితం ఉంటే = 0 అప్పుడు కణాలు (i, 3 ) .వాల్యూ = "ఖచ్చితమైన" ఇతర కణాలు (i, 3) .వాల్యూ = "సరిగ్గా లేదు" నెక్స్ట్ ఐ ఎండ్ సబ్
నేను పై VBA కోడ్ను ఎక్సెల్ లో రన్ చేసినప్పుడు మనకు ఈ క్రింది ఫలితం వస్తుంది.
మీరు సి 4 సెల్ చూస్తే స్ట్రింగ్ 1 మరియు స్ట్రింగ్ 2 అక్షరాలు ఒకే విధంగా ఉంటాయి కాని అక్షరాలు కేస్ సెన్సిటివ్, కాబట్టి ఫలితం “సరిగ్గా లేదు”. ఈ సమస్యను అధిగమించడానికి మేము పోల్చండి vbTextCompare.
C4 సెల్ కోసం ఫలితాన్ని “ఖచ్చితమైనది” గా పొందడానికి సవరించిన కోడ్ క్రింద ఉంది.
కోడ్:
ఉప StrComp_Example4 () మసకబారిన ఫలితం I = 2 నుండి 6 ఫలితం = StrComp (కణాలు (i, 1). విలువ, కణాలు (i, 2). విలువ, vbTextCompare) ఫలితం = 0 అప్పుడు కణాలు (i) , 3) .వాల్యూ = "ఖచ్చితమైన" ఇతర కణాలు (i, 3) .వాల్యూ = "సరిగ్గా లేదు" నెక్స్ట్ ఐ ఎండ్ సబ్
ఈ కోడ్ క్రింది ఫలితాన్ని అందిస్తుంది.