VBA FIND NEXT | ఎక్సెల్ VBA లో ఫైండ్నెక్స్ట్ ఫంక్షన్ను ఎలా ఉపయోగించాలి?
ఎక్సెల్ VBA తదుపరి కనుగొనండి
ఎక్సెల్ మాదిరిగానే మేము CTRL + F ను నొక్కినప్పుడు ఒక విజార్డ్ బాక్స్ పాప్ అప్ అవుతుంది, ఇది ఇచ్చిన వర్క్షీట్లో విలువను శోధించడానికి అనుమతిస్తుంది మరియు విలువ కనుగొనబడిన తర్వాత ఇతర సారూప్య విలువను కనుగొనడానికి పక్కన కనుగొనండి క్లిక్ చేయండి, ఎందుకంటే ఇది వర్క్షీట్ లక్షణం అదే ప్రయోజనాల కోసం దీన్ని అప్లికేషన్ ప్రాపర్టీ పద్దతిగా VBA లో కూడా ఉపయోగించవచ్చు. అదే ప్రయోజనాల కోసం.
పేర్కొన్న పరిధిలో నిర్దిష్ట విలువను కనుగొనడం మంచిది, కాని బహుళ సంఘటనలతో విలువను కనుగొనడం అవసరం అయితే. మునుపటి వ్యాసాలలో ఒకదానిలో, మేము VBA లో “కనుగొను” పద్ధతిని చర్చించాము మరియు ఇది సంక్లిష్టంగా లేదు కాని పునరావృతమయ్యే అన్ని సంఘటనలను కనుగొనడం ఎక్సెల్ VBA లోని “తదుపరి కనుగొనండి” పద్ధతిలో మాత్రమే సాధ్యమవుతుంది.
ఈ వ్యాసంలో, ఎక్సెల్ VBA లో ఈ “తదుపరి కనుగొనండి” ఎలా ఉపయోగించాలో మేము మీకు చూపుతాము.
ఎక్సెల్ VBA లో తదుపరి కనుగొనండి ఏమిటి?
"తదుపరి కనుగొను" అనే పదం చెప్పినట్లుగా, కనుగొనబడిన సెల్ నుండి మేము శోధనను ప్రారంభించిన అసలు సెల్కు తిరిగి వచ్చే వరకు తదుపరి విలువ కోసం శోధిస్తూ ఉండండి.
ఇది “కనుగొను” పద్ధతి యొక్క అధునాతన సంస్కరణ, ఇది పేర్కొన్న పరిధిలో పేర్కొన్న విలువను ఒక్కసారి మాత్రమే శోధిస్తుంది.
ఎక్సెల్ VBA లోని FIND NEXT పద్ధతి యొక్క వాక్యనిర్మాణం క్రింద ఉంది.
తరువాత: ఇది మేము వెతుకుతున్న పదం.
ఎక్సెల్ VBA లో తదుపరి పద్ధతిని కనుగొనటానికి ఉదాహరణలు
ఎక్సెల్ VBA లో తదుపరి పద్ధతిని కనుగొనే ఉదాహరణలు క్రింద ఉన్నాయి.
ఉదాహరణకు, క్రింది డేటాను చూడండి.
మీరు ఈ VBA ను తదుపరి ఎక్సెల్ మూసను ఇక్కడ డౌన్లోడ్ చేసుకోవచ్చు - VBA తదుపరి ఎక్సెల్ మూసను కనుగొనండిదశ # 1 - ఈ డేటాలో, మేము నగరం పేరు “బెంగళూరు” ను కనుగొనాలి. దృశ్య ప్రాథమిక ఎడిటర్లో ఉపప్రాసెసర్ను ప్రారంభిద్దాం.
కోడ్:
ఉప శ్రేణి తదుపరి_ఉదాహరణ () ముగింపు ఉప
దశ # 2 - మొదట, వేరియబుల్ను “రేంజ్” ఆబ్జెక్ట్గా ప్రకటించండి.
కోడ్:
రేంజ్ ఎండ్ సబ్ గా సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng
దశ # 3 - ఆబ్జెక్ట్ వేరియబుల్ కోసం సూచనను “రేంజ్ (“ A2: A11 ”) గా సెట్ చేయండి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A12") ఎండ్ సబ్
నగర జాబితా యొక్క మా డేటా ఈ పరిధిలో A2 నుండి A11 వరకు కణాల పరిధిలో ఉన్నందున మేము “బెంగళూరు” నగరం కోసం మాత్రమే వెతకబోతున్నాము.
మేము శ్రేణి సూచనను “Rng” అనే వేరియబుల్కు సెట్ చేసినందున, మేము ప్రతిసారీ RANGE (“A2: A11”) ను ఉపయోగించకుండా ఈ వేరియబుల్ని ఉపయోగిస్తాము.
దశ # 4 - RNG వేరియబుల్ ఉపయోగించండి మరియు కనుగొను పద్ధతిని తెరవండి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () మసక Rng రేంజ్ సెట్గా Rng = పరిధి ("A2: A12") Rng. ఫైండ్ ఎండ్ సబ్
దశ # 5 - FIND పద్ధతి యొక్క మొదటి వాదన “ఏమిటి” అనగా మేము పేర్కొన్న పరిధిలో శోధించడానికి ప్రయత్నిస్తున్నది, కాబట్టి మనం శోధిస్తున్న విలువ “బెంగళూరు”.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () మసక Rng రేంజ్ సెట్గా Rng = పరిధి ("A2: A12") Rng. కనుగొనండి: = "బెంగళూరు" ఎండ్ సబ్
దశ # 6 - ఈ విలువను మనం కనుగొన్న సెల్లో చూపించడానికి మరో వేరియబుల్ను స్ట్రింగ్గా ప్రకటించాము.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ డిమ్ సెల్ అడ్రెస్ గా స్ట్రింగ్ సెట్ Rng = రేంజ్ ("A2: A12") Rng. కనుగొనండి: = "బెంగళూరు" ఎండ్ సబ్
దశ # 7 - ఈ వేరియబుల్ కోసం దొరికిన సెల్ చిరునామాను కేటాయించండి.
కోడ్:
ఉప రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ డిమ్ సెల్ అడ్రెస్ గా స్ట్రింగ్ సెట్ Rng = రేంజ్ ("A2: A12"). కనుగొనండి (ఏమి: = "బెంగళూరు") Rng. కనుగొనండి: = "బెంగళూరు" సెల్అడ్డ్రెస్ = Rng.Address End Subగమనిక: RNG. చిరునామా ఎందుకంటే RNG దొరికిన విలువ సెల్ కోసం సూచన ఉంటుంది.
దశ # 8 - ఇప్పుడు కేటాయించిన సెల్ అడ్రస్ వేరియబుల్ ఫలితాన్ని VBA లోని సందేశ పెట్టెలో చూపించు.
ఉప రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ డిమ్ సెల్ అడ్రెస్ గా స్ట్రింగ్ సెట్ Rng = రేంజ్ ("A2: A12"). కనుగొనండి (ఏమి: = "బెంగళూరు") Rng.Find What: = "Bangalore" CellAddress = Rng ఉప
దశ # 9 - కోడ్ను అమలు చేయండి మరియు మేము ఇక్కడ ఏమి పొందాలో చూడండి.
కాబట్టి మేము A5 సెల్ లో “బెంగళూరు” విలువను కనుగొన్నాము. ఫైండ్ పద్దతితో, మనం ఒక సెల్ మాత్రమే కనుగొనగలం కాబట్టి FIND కి బదులుగా మనం ఎక్సెల్ VBA లో FIND NEXT ని ఉపయోగించాలి.
దశ # 10 - మేము శ్రేణి ఆబ్జెక్ట్ వేరియబుల్ను సూచించాల్సిన అవసరం ఉంది, కానీ ఎక్సెల్ VBA లో FIND NEXT పద్ధతిని ఉపయోగించడం ద్వారా.
కోడ్:
ఉప రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ డిమ్ సెల్ అడ్రెస్ గా స్ట్రింగ్ సెట్ Rng = రేంజ్ ("A2: A12"). కనుగొనండి (ఏమి: = "బెంగళూరు") Rng = పరిధి ("A2: A12"). FindNext (Rng) ముగింపు ఉప
మీరు పైన చూడగలిగినట్లుగా, మేము VBA FIND NEXT పద్ధతిని ఉపయోగించాము కాని ఫంక్షన్ లోపల, మేము శ్రేణి ఆబ్జెక్ట్ వేరియబుల్ పేరును ఉపయోగించాము.
దశ # 11 - ఇప్పుడు మళ్ళీ సెల్ చిరునామాను కేటాయించి, సందేశ పెట్టెలో చిరునామాను చూపించు.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ Rng రేంజ్ డిమ్ సెల్ అడ్రెస్ స్ట్రింగ్ సెట్ Rng = రేంజ్ ("A2: A12"). కనుగొనండి (ఏమి: = "బెంగళూరు") Rng. కనుగొనండి: = "బెంగళూరు" సెల్అడ్డ్రెస్ = Rng Rng = పరిధి ("A2: A12"). FindNext (Rng) CellAddress = Rng. MsgBox CellAddress End Sub
దశ # 12 - స్థూలతను అమలు చేయండి మరియు మొదటి సందేశ పెట్టెలో మనకు ఏమి లభిస్తుందో చూడండి.
దశ # 13 - మొదటి సందేశ పెట్టె A5 సెల్ లో కనిపించే “బెంగళూరు” విలువను చూపిస్తుంది, తదుపరి దొరికిన విలువను చూడటానికి సరే బటన్ పై క్లిక్ చేయండి.
A7 సెల్లో రెండవ విలువ కనుగొనబడింది, కొనసాగించడానికి సరే నొక్కండి.
VBA తదుపరి కనుగొనండి (లూప్ ఉపయోగించి)
ఇది VBA ఉపప్రాసెసర్ నుండి నిష్క్రమిస్తుంది, కాని మేము సెల్ A10 లో కనుగొనబడతాము. విలువలు ఒకటి కంటే ఎక్కువ కణాలలో కనుగొనబడినప్పుడు, ఉచ్చులను ఉపయోగించడం మంచిది.
ఈ సందర్భంలో, మనకు ఒకటి కంటే ఎక్కువ సెల్లలో “బెంగళూరు” విలువ ఉంది, కాబట్టి మనం ఇక్కడ ఉచ్చులను చేర్చాలి.
దశ # 14 - మొదట, రెండు వేరియబుల్స్ పరిధిగా ప్రకటించండి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ Rng రేంజ్ డిమ్ ఫైండ్రాంగ్ రేంజ్ ఎండ్ సబ్గా
దశ # 15 - క్రింద చూపిన విధంగా మొదటి వేరియబుల్ కోసం సూచనను సెట్ చేయండి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ రింగ్ రేంజ్ గా డిమ్ ఫైండ్రాంగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11"). కనుగొనండి (ఏమి: = "బెంగళూరు") ఎండ్ సబ్
దశ # 16 - రెండవ వేరియబుల్ కొరకు FIND VBA ఫంక్షన్ ఉపయోగించి రిఫరెన్స్ సెట్ చేయండి.
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ Rng రేంజ్ గా డిమ్ ఫైండ్రాంగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11"). కనుగొనండి (ఏమి: = "బెంగళూరు") FindRng = Rng.FindNext ("బెంగళూరు") ఎండ్ సబ్
దశ # 17 - విలువ కోసం శోధించడం ప్రారంభించే ముందు మనం ఏ సెల్ నుండి శోధనను ప్రారంభిస్తున్నామో గుర్తించాలి, ఎందుకంటే అది వేరియబుల్ను స్ట్రింగ్గా ప్రకటిస్తుంది.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ రింగ్ రేంజ్ డిమ్ ఫైండ్రాంగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11"). Rng. చిరునామా ముగింపు ఉప
దశ # 18 - ఈ వేరియబుల్ కోసం మొదటి సెల్ చిరునామాను కేటాయించండి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ Rng రేంజ్ గా డిమ్ ఫైండ్ఆర్ంగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11") FindRng = Rng.Find (ఏమిటి: = "బెంగళూరు") స్ట్రింగ్గా మసకబారిన ఫస్ట్సెల్ = Rng. చిరునామా ముగింపు ఉప ఉప
దశ # 19 - ఇప్పుడు మనం అన్ని కణాల ద్వారా లూప్ చేయడానికి మరియు శోధన విలువను కనుగొనడానికి “అయితే చేయి” లూప్ను చేర్చాలి.
కోడ్:
సబ్ రేంజ్ నెక్స్ట్_ఎక్సాంపుల్ 1 () డిమ్ Rng రేంజ్ గా డిమ్ ఫైండ్రాంగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11"). కనుగొనండి (ఏమిటి: = "బెంగళూరు") FindRng = Rng.FindNext ("బెంగళూరు") సెట్ మసక ఫస్ట్సెల్ = ఫస్ట్సెల్ సెల్ అయితే Rng.Address Do Loop.Address End Sub
లూప్ లోపల సందేశ పెట్టె మరియు VBA FIND NEXT పద్ధతిని పేర్కొనండి.
దశ # 20 - మీ కోసం పూర్తి కోడ్ క్రింద ఉంది.
కోడ్:
సబ్ ఫైండ్నెక్స్ట్_ఎక్సాంపుల్ () డిమ్ ఫైండ్వాల్యూ స్ట్రింగ్ ఫైండ్వాల్యూ = "బెంగళూరు" డిమ్ రింగ్ రేంజ్ సెట్గా Rng = రేంజ్ ("A2: A11") డిమ్ ఫైండ్రాంగ్ రేంజ్ సెట్గా కనుగొనండి FindRng = Rng.Find (ఏమిటి: = FindValue) స్ట్రింగ్ ఫస్ట్సెల్ = FindRng.Address Do MsgBox FindRng.Address Set FindRng = Rng.FindNext (FindRng) లూప్ అయితే ఫస్ట్సెల్ FindRng.Address MsgBox "శోధన ముగిసింది" ముగింపు ఉప
దశ # 21 - ఇది అన్ని సరిపోలే సెల్ చిరునామాను చూపుతూనే ఉంటుంది మరియు చివరికి, ఇది క్రొత్త సందేశ పెట్టెలో సందేశాన్ని “శోధన ముగిసింది” అని చూపుతుంది.
గుర్తుంచుకోవలసిన విషయాలు
- FIND పద్ధతి ఒకేసారి ఒక విలువను మాత్రమే కనుగొనగలదు.
- ఎక్సెల్ VBA లో తదుపరి కనుగొనండి ఇప్పటికే దొరికిన విలువ సెల్ నుండి తదుపరి విలువను కనుగొనవచ్చు.
- పరిధిలోని అన్ని కణాల ద్వారా లూప్ చేయడానికి డు లూప్ ఉపయోగించండి.