VBA InStrRev | ఎక్సెల్ VBA InStrRev ఫంక్షన్‌ను ఎలా ఉపయోగించాలి?

ఎక్సెల్ VBA INSTRREV

VBA INSTRREV ఫంక్షన్, అంటే ‘ఇన్ స్ట్రింగ్ రివర్స్’, మరొక స్ట్రింగ్‌లో శోధన స్ట్రింగ్ (సబ్‌స్ట్రింగ్) యొక్క మొదటి సంఘటన యొక్క స్థానాన్ని తిరిగి ఇస్తుంది, స్ట్రింగ్ చివరి నుండి (కుడి నుండి ఎడమకు) మొదలుకొని, మనం శోధించదగిన స్ట్రింగ్ కోసం చూస్తున్నాము.

INSTRREV ఫంక్షన్ మేము కనుగొనవలసిన స్ట్రింగ్ చివరి నుండి శోధించదగిన స్ట్రింగ్ కోసం శోధించడం ప్రారంభిస్తుంది కాని మొదటి నుండి స్థానాన్ని లెక్కిస్తుంది. ఇంకొకటి ఉంది INSTR vba ఫంక్షన్ (అంటే ‘ఇన్ స్ట్రింగ్’) అది మరొక స్ట్రింగ్‌లో స్ట్రింగ్ కోసం శోధిస్తుంది మరియు స్థానాన్ని తిరిగి ఇస్తుంది, కాని ఈ ఫంక్షన్ మేము శోధించగలిగే స్ట్రింగ్ కోసం వెతుకుతున్న స్ట్రింగ్ ప్రారంభం నుండి శోధనను ప్రారంభిస్తుంది.

INSTRREV మరియు INSTR, రెండూ అంతర్నిర్మితమైనవి స్ట్రింగ్ / టెక్స్ట్ VBA ఫంక్షన్ MS ఎక్సెల్. మైక్రోసాఫ్ట్ విజువల్ బేసిక్ ఎడిటర్‌లో ఏదైనా స్థూల రాసేటప్పుడు మేము వాటిని ఉపయోగించవచ్చు.

సింటాక్స్

పై చిత్రంలో మనం చూడగలిగినట్లుగా, 2 తప్పనిసరి మరియు 2 ఐచ్ఛిక వాదనలు ఉన్నాయి.

  • స్ట్రింగ్ గా స్ట్రింగ్ చెక్: ఇది అవసరమైన వాదన. మేము శోధించిన స్ట్రింగ్ వ్యక్తీకరణను ఇవ్వాలి.
  • స్ట్రింగ్ మాచ్ స్ట్రింగ్: ఈ వాదన కూడా అవసరం. మేము శోధించిన స్ట్రింగ్ వ్యక్తీకరణను పేర్కొనాలి.
  • పొడవుగా ప్రారంభించండి = -1: ఇది ఐచ్ఛిక వాదన. మేము సంఖ్యా వ్యక్తీకరణను తెలుపుతాము. అప్రమేయంగా, ఇది -1 పడుతుంది అంటే శోధన చివరి అక్షర స్థానంలో ప్రారంభమవుతుంది. మేము 80 వంటి ఏదైనా సానుకూల విలువను పేర్కొంటే, అది ఎడమ 80 అక్షరాలలో స్ట్రింగ్ చివరి నుండి శోధించడం ప్రారంభిస్తుంది.
  • VbCompareMethod = vbBinaryCompare గా సరిపోల్చండి: ఈ వాదన ఐచ్ఛికం.

ఈ వాదన కోసం మేము ఈ క్రింది విలువలను పేర్కొనవచ్చు.

తిరిగి విలువలు

  1. INSTRREV ఫంక్షన్ 0 ఉంటే తిరిగి వస్తుంది స్ట్రింగ్ చెక్ సున్నా పొడవు లేదా స్ట్రింగ్ మ్యాచ్ కనుగొనబడలేదు లేదా ‘ప్రారంభం’ వాదన> పొడవు స్ట్రింగ్ మ్యాచ్.
  2. ఈ ఫంక్షన్ తిరిగి వస్తుంది 'శూన్య' ఒక ఉంటే స్ట్రింగ్ చెక్ లేదా స్ట్రింగ్ మ్యాచ్ ఉంది 'శూన్య'.
  3. ఉంటే స్ట్రింగ్ మ్యాచ్ సున్నా పొడవుతో ఉంటుంది, అప్పుడు ఫంక్షన్ తిరిగి వస్తుంది ప్రారంభం.
  4. ఉంటే స్ట్రింగ్ మ్యాచ్ స్ట్రింగ్ చెక్‌లో కనుగొనబడింది, అప్పుడు ఫంక్షన్ సరిపోలిన స్థానాన్ని తిరిగి ఇస్తుంది.

VBA INSTRREV ఫంక్షన్‌ను ఎలా ఉపయోగించాలి?

మీరు ఈ VBA INSTRREV ఎక్సెల్ మూసను ఇక్కడ డౌన్‌లోడ్ చేసుకోవచ్చు - VBA INSTRREV ఎక్సెల్ మూస

సినిమా పేర్లు మరియు వారి దర్శకుల కోసం మా వద్ద డేటా ఉందని అనుకుందాం. మేము డైరెక్టర్ పేర్లను విభజించాలనుకుంటున్నాము.

మాకు 1201 వరుసలలో డేటా ఉంది. మేము ఈ పనిని మానవీయంగా చేస్తే, దీనికి చాలా సమయం పడుతుంది.

అదే విధంగా, మేము VBA కోడ్‌ను ఉపయోగిస్తాము. దశలు:

  • మేము క్లిక్ చేయాలి ‘విజువల్ బేసిక్’ కమాండ్ అందుబాటులో ఉంది ‘కోడ్’ లో సమూహం ‘డెవలపర్’ ట్యాబ్ లేదా మేము నొక్కవచ్చు Alt + F11 దృశ్య ప్రాథమిక ఎడిటర్‌ను తెరవడానికి.

  • మేము ఒక ఇన్సర్ట్ చేస్తాము మాడ్యూల్ ఉపయోగించి ‘చొప్పించు’ మెను.

  • మేము అనే సబ్‌ట్రౌటిన్‌ను సృష్టిస్తాము ‘స్ప్లిటింగ్ నేమ్స్’.

  • మనకు 6 వేరియబుల్స్ అవసరం. కణాల విలువలను నిల్వ చేయడానికి ఒకటి, వీటిని మేము తారుమారు చేస్తాము. స్ట్రింగ్‌లో మొదటి స్థలం యొక్క స్థానాన్ని నిల్వ చేయడానికి రెండవది, స్ట్రింగ్‌లో చివరి స్థలం యొక్క స్థానాన్ని నిల్వ చేయడానికి మూడవది, చివరి వరుస సంఖ్యను నిల్వ చేయడానికి నాల్గవది, వరుస మరియు కాలమ్ కోసం ఐదవ మరియు ఆరవది, వీటిని ప్రక్కన ఉన్న కణాలలో విలువలను ముద్రించడానికి మేము ఉపయోగిస్తాము.

  • షీట్లో చివరిగా ఉపయోగించిన అడ్డు వరుసను తెలుసుకోవడానికి, మేము ఈ క్రింది కోడ్‌ను ఉపయోగించాలి.

ఈ కోడ్ మొదట సెల్ B1 ను ఎంచుకుని, ఆపై అదే కాలమ్‌లో చివరిగా ఉపయోగించిన సెల్‌ను ఎంచుకుంటుంది, ఆపై సెల్ యొక్క అడ్డు వరుస సంఖ్యను ‘లాస్ట్‌రో’ వేరియబుల్‌కు కేటాయిస్తాము.

  • ఇప్పుడు B కాలమ్‌లోని అన్ని కణాలను మార్చటానికి, మేము ఒక రన్ చేస్తాము ‘ఫర్’ లూప్.

  • B కాలమ్ యొక్క కణాల విలువను 2 వ వరుస నుండి 1201 వ వరుస వరకు వాటిని ‘s’ వేరియబుల్‌లో ఒక్కొక్కటిగా నిల్వ చేస్తాము.

  • మేము విలువను సెట్ చేయాలి వేరియబుల్ ‘కాలమ్’ స్ప్లిట్ పేర్లను సి (3 వ కాలమ్) మరియు ఒక కాలమ్ లో వ్రాయవలసి ఉంటుంది.

  • స్ట్రింగ్ ఒక పదం మాత్రమే అంటే స్ట్రింగ్‌లో ఖాళీ లేదు. దీని కోసం, మేము ఉపయోగించి పరిస్థితిని తెలుపుతాము ‘ఉంటే మరియు వేరే ప్రకటన’ ఈ క్రింది విధంగా నక్షత్ర గుర్తుతో (ఒకటి లేదా అంతకంటే ఎక్కువ అక్షరాలను సూచిస్తుంది):

  • స్ట్రింగ్‌లో స్థలం ఉంటే అప్పుడు మేము స్ట్రింగ్‌ను విభజించాలనుకుంటున్నాము. మేము ఉపయోగించిన అదే చేయడానికి INSTR మరియు INSTRREV మొదటి స్పేస్ స్థానం మరియు చివరి స్పేస్ పొజిషన్‌ను వరుసగా తెలుసుకోవడానికి రెండింటినీ ఫంక్షన్ చేయండి. స్ట్రింగ్‌లో మొదటి పదం మరియు చివరి పదాన్ని వరుసగా కనుగొనడానికి ఇది మాకు సహాయపడుతుంది.

INSTR ఫంక్షన్ ఈ క్రింది విధంగా వాదనను తీసుకుంటుంది:

వాదన వివరాలు

  • ప్రారంభం: ఏ స్థానం నుండి ప్రారంభించాలి.
  • స్ట్రింగ్ 1: మేము శోధించిన స్ట్రింగ్ వ్యక్తీకరణను ఇవ్వాలి.
  • స్ట్రింగ్ 2: మేము శోధించిన స్ట్రింగ్ వ్యక్తీకరణను పేర్కొనాలి.

VbCompareMethod తో పోలిస్తే: పోల్చడం పద్ధతిని పేర్కొంటుంది. అప్రమేయంగా, ఇది బైనరీ పోలిక.

  • మేము vba ని ఉపయోగించాలి ఎడమ ఫంక్షన్ స్ట్రింగ్ నుండి ఎడమ అక్షరాలను సేకరించేందుకు. మేము ఉపయోగించాము ‘లాస్ట్ స్పేస్ -1’ చివరి స్థలానికి ముందు ఎడమ అక్షరాలను పొందడానికి.

మేము ఉపయోగించాలి కుడి మరియు LEN విధులు మొదటి స్థలం తర్వాత స్ట్రింగ్ నుండి సరైన అక్షరాలను సేకరించేందుకు.

మాక్రో వ్రాయబడింది. ఇప్పుడు మనం ఉపయోగించి స్థూలని అమలు చేయాలి ఎఫ్ 5 కీ.

కోడ్:

 సబ్ స్ప్లిటింగ్ నేమ్స్ () డిమ్ లు స్ట్రింగ్ డిమ్ ఫస్ట్‌స్పేస్ లాంగ్ డిమ్ లాస్ట్‌స్పేస్ లాంగ్ డిమ్ లాస్ట్‌రో లాంగ్ డిమ్ లావ్ రో లాంగ్ లాంగ్ డిమ్ కాలమ్ లాంగ్ డింగ్ కాలమ్ లాంగ్ షీట్ 1.రేంజ్ ("బి 1"). ఎంపికను ఎంచుకోండి. అడ్డు వరుస కోసం అడ్డు = 2 నుండి చివరి వరుస s = షీట్ 1.సెల్స్ (అడ్డు వరుస, 2) .వాల్యూ కాలమ్ = 3 "* *" లాగా ఉంటే ఫస్ట్‌స్పేస్ = ఇన్‌స్ట్రా (1, లు, "") లాస్ట్‌స్పేస్ = ఇన్‌స్ట్రావ్ (లు, "") షీట్ 1.సెల్స్ (అడ్డు వరుస, నిలువు వరుస) .వాల్యూ = ఎడమ (లు, లాస్ట్‌స్పేస్ - 1) షీట్ 1.సెల్స్ (అడ్డు వరుస, కాలమ్ + 1) .వాల్యూ = కుడి (లు, లెన్ (లు) - ఫస్ట్‌స్పేస్) వేరే షీట్ 1.సెల్స్ (వరుస, కాలమ్) .వాల్యూ = s ఎండ్ నెక్స్ట్ ఎండ్ సబ్ 

మాకు ఇప్పుడు ఫలితం ఉంది.