VBA ఉప | VBA కోడ్లో సబ్ ప్రొసీజర్ను ఎలా పిలవాలి?
ఎక్సెల్ VBA సబ్ ప్రొసీజర్
VBA లో SUB దీనిని సబ్ట్రౌటిన్ లేదా అన్ని కోడ్లను కలిగి ఉన్న ఒక విధానం అని కూడా పిలుస్తారు, ఇది VBA లో అంతర్నిర్మిత స్టేట్మెంట్ మరియు ఉపయోగించినప్పుడు అది స్వయంచాలకంగా మాకు ఎండ్ సబ్ యొక్క స్టేట్మెంట్ ఇస్తుంది మరియు మధ్య భాగం కోడింగ్ కోసం ఉపయోగించబడుతుంది, సబ్ స్టేట్మెంట్ పబ్లిక్ మరియు ప్రైవేట్ మరియు VBA లో ఉపప్రాసెసర్ పేరు తప్పనిసరి.
ఉప అంటే VBA లో సబ్ ప్రొసీజర్. కోడ్ రూపంలో అందించబడిన ఒక నిర్దిష్ట పనిని నిర్వహించడానికి ఉప విధానాలు ఉపయోగించబడతాయి. ఇది VBA భాష ప్రకారం కోడ్లో పేర్కొన్న పనిని మాత్రమే చేస్తుంది, కానీ ఎలాంటి విలువను ఇవ్వదు.
VBA సబ్ ప్రొసీజర్స్ ఎలా రాయాలి?
మీరు ఈ VBA సబ్ ప్రొసీజర్ మూసను ఇక్కడ డౌన్లోడ్ చేసుకోవచ్చు - VBA సబ్ ప్రొసీజర్ మూసఉప విధాన సంకేతాలను వ్రాయడానికి, ఉపప్రాసెసర్ యొక్క నిర్మాణాన్ని అర్థం చేసుకోవడం చాలా ముఖ్యం. క్రింద నిర్మాణం ఉంది
ఉప [విధానం పేరు] (పారామితులు) [ఏమి చేయాలి?]) ముగింపు ఉప
ఉపప్రాంతాన్ని ప్రారంభించడానికి మనం “సబ్” అనే పదాన్ని ఉపయోగించాలి మరియు సబ్కు ఒక పేరును ఒక విధాన పేరుగా ఇవ్వాలి. విధానం పేరు మా స్థూల పేరు తప్ప మరొకటి కాదు. VBA ఉపప్రాంతంలో, మేము సాధారణంగా కుండలీకరణాల్లో పారామితులను కలిగి ఉండము.
సబ్ ప్రొసీజర్ పేరు రాసిన తరువాత మనం చేయవలసిన పనులను రాయాలి. అప్పుడు ఎండ్ స్టేట్మెంట్ అంటే ఎండ్ సబ్ వస్తుంది.
ఉదాహరణ # 1 - సాధారణ ఉప విధానం
ఇప్పుడు సాధారణ ఉప విధాన రచన పద్ధతులను పరిశీలించండి.
దశ 1: మాడ్యూల్లో “ఉప” అనే పదాన్ని ప్రారంభించండి.
దశ 2: ఇప్పుడు స్థూల పేరు లేదా విధానం పేరు పెట్టండి.
దశ 3: సబ్ప్రొసెడర్కు పేరు ఇచ్చిన తర్వాత ఎంటర్ కీని నొక్కండి అది స్వయంచాలకంగా ఎండ్ స్టేట్మెంట్ను వర్తింపజేస్తుంది.
ఇప్పుడు మనం ఇక్కడ రెండు విషయాలు చూడవచ్చు, ఒకటి ప్రారంభం మరియు మరొకటి ఉపప్రాంతం యొక్క ముగింపు. మంచి అవగాహన కోసం, మేము దీనిని “హెడ్” & “తోక” అని పిలుస్తాము.
స్థూల తల మరియు తోక మధ్య, కొంత పని చేయడానికి మన కోడ్ రాయాలి.
ఉదాహరణ # 2 - సాధారణ సబ్ట్రౌటిన్ టాస్క్
సరే, ఇప్పుడు ఇక్కడ కొన్ని సాధారణ చర్యలను ఎలా చేయాలో చూద్దాం.
మీరు సెల్ A1 లో “ఎక్సెల్ VBA” విలువను చేర్చాలనుకుంటున్నారని అనుకోండి.
దశ 1: పై పద్ధతులను ఉపయోగించి ఉపప్రాసెసర్ను ప్రారంభించండి.
కోడ్:
సబ్ యాక్షన్ 1 () ఎండ్ సబ్
దశ 2: సెల్ A1 ని యాక్సెస్ చేయడానికి మనం RANGE అనే పదాన్ని ఉపయోగించాలి.
కోడ్:
ఉప చర్య 1 () పరిధి (ముగింపు ఉప
దశ 3: ఇది మీరు సూచించదలిచిన సెల్ 1 ఏమిటి అని అడుగుతోంది. ఈ సందర్భంలో, ఇది A1 సెల్.
కోడ్:
సబ్ యాక్షన్ 1 () రేంజ్ ("ఎ 1") ఎండ్ సబ్
దశ 4: మేము “ఎక్సెల్ VBA” విలువను చొప్పించాల్సిన అవసరం ఉంది, కాబట్టి పరిధి తర్వాత చుక్కను ఉంచడం ద్వారా VALUE ఆస్తిని ఎంచుకోండి.
కోడ్:
ఉప చర్య 1 () పరిధి ("A1"). విలువ ముగింపు ఉప
మీరు VALUE అనే పదాన్ని టైప్ చేయడం ప్రారంభించినప్పుడు మీరు చాలా ఎంపికలను చూస్తారు మరియు ఈ ఎంపికలను ఇంటెల్లిసెన్స్ జాబితా అని పిలుస్తారు, ఇది మీరు టైప్ చేస్తున్న దాని ఆధారంగా అంచనా వేస్తుంది. ఇది మేము ఫార్ములాను టైప్ చేయడం ప్రారంభించినప్పుడు వర్క్షీట్లో సూత్రాలు ఎలా కనిపిస్తాయో వంటిది.
దశ 5: VALUE ఎంచుకున్న తరువాత సమాన చిహ్నాన్ని ఉంచండి మరియు డబుల్స్ కోట్స్లో విలువను “ఎక్సెల్ VBA” గా నమోదు చేయండి.
కోడ్:
ఉప చర్య 1 () పరిధి ("A1"). విలువ = "ఎక్సెల్ VBA" ముగింపు ఉప
కాబట్టి, మేము పూర్తి చేసాము.
ఇప్పుడు మనం ఈ పనిని అమలు చేయాలి. మేము తిరిగి వచ్చిన పనిని అమలు చేయడానికి దృశ్య బేసిక్ ఎడిటర్ విండోలోని RUN బటన్ను నొక్కడం ద్వారా ఈ కోడ్ను అమలు చేయాలి.
కర్సర్ను స్థూల కోడ్ లోపల ఉంచడం ద్వారా మనం ఎక్సెల్ సత్వరమార్గం కీని కూడా నొక్కవచ్చు.
మీరు కోడ్ను అమలు చేసిన వెంటనే సెల్ A1 లో “ఎక్సెల్ VBA” విలువ మీకు లభిస్తుంది.
VBA సబ్ట్రౌటిన్ రకాలు
సబ్ విధానంలో మనకు మరో రెండు రకాలు ఉన్నాయి, ఒకటి పబ్లిక్ సబ్ ప్రొసీజర్ మరియు రెండవది ప్రైవేట్ సబ్ ప్రొసీజర్.
“పబ్లిక్” & “ప్రైవేట్” అనే పదాలు ప్రాప్యత మాడిఫైయర్లు, వీటిని ఉప విధానాలను భిన్నంగా ఉపయోగించడానికి మాకు అనుమతిస్తాయి.
- పబ్లిక్ సబ్ ప్రొసీజర్ వర్క్బుక్ యొక్క అన్ని మాడ్యూళ్ళలో ఈ విధానాన్ని ఉపయోగించడానికి మాకు అనుమతిస్తుంది.
- ప్రైవేట్ సబ్ ప్రొసీజర్ ప్రస్తుత మాడ్యూల్లో మాత్రమే ఈ విధానాన్ని ఉపయోగించడానికి మాకు అనుమతిస్తుంది.
ఉదాహరణకు, మాడ్యూల్ 1 లో ఉన్న పబ్లిక్ కోడ్ యొక్క క్రింది చిత్రాన్ని చూడండి.
ఇప్పుడు మాడ్యూల్ 2 లో కూడా నేను ఈ ఉపప్రాసెసర్ను ఉపయోగించగలను.
యాక్షన్ 1 మాడ్యూల్ 1 లో మేము ఉపయోగించిన ఉపప్రాసెసర్ పేరు.
మాడ్యూల్ 2 లో నేను దీనిని “కాల్ యాక్షన్ 1” గా పేర్కొన్నాను. దీని అర్థం మీరు ఉపప్రాసెసర్ను నడుపుతున్నప్పుడు అది మాడ్యూల్ 1 నుండి ఉపప్రాసెచర్ యాక్షన్ 1 ను అమలు చేస్తుంది.
ప్రైవేట్ ఉప విధానాలు వేరే మాడ్యూల్ నుండి యాక్సెస్ చేయలేము, మేము వాటిని ఒకే మాడ్యూల్ నుండి మాత్రమే యాక్సెస్ చేయాలి.