VBA షీట్ తొలగించు | VBA కోడ్ ఉపయోగించి వర్క్షీట్ను ఎలా తొలగించాలి?
ఎక్సెల్ VBA షీట్ తొలగించు
VBA లో షీట్ తొలగించడానికి మేము వర్క్షీట్ పద్ధతిని తొలగించు. మొదట ఈ పద్ధతిని వర్తింపచేయడానికి, షీట్ పేరుకు కాల్ చేయడం ద్వారా మనం ఏ షీట్ను తొలగిస్తున్నామో గుర్తించాలి. మొదట మనం షీట్ 1 డిలీట్ మరియు రెండవ పద్ధతి షీట్స్ (షీట్ 1) అని వ్రాయడానికి అదే విధంగా చేయడానికి మాకు రెండు పద్ధతులు ఉన్నాయి. తొలగించు.
కాబట్టి వాక్యనిర్మాణం అనుసరిస్తుంది.
వర్క్షీట్లు ("వర్క్షీట్ పేరు"). తొలగించు
లేదా
షీట్లు ("షీట్ పేరు"). తొలగించు
కాబట్టి, మొదట, మనం ఉపయోగించడం ద్వారా షీట్ పేరును పేర్కొనాలి వర్క్షీట్ లేదా షీట్లు ఆబ్జెక్ట్, తరువాత మనం ఉపయోగించవచ్చు “తొలగించు” పద్ధతి.
VBA కోడ్ ఉపయోగించి ఎక్సెల్ షీట్లను ఎలా తొలగించాలి?
మీరు ఈ VBA డిలీట్ షీట్ ఎక్సెల్ మూసను ఇక్కడ డౌన్లోడ్ చేసుకోవచ్చు - VBA షీట్ ఎక్సెల్ మూసను తొలగించండిఉదాహరణ # 1 - వర్క్షీట్ పేరును ఉపయోగించి తొలగించండి
మీకు చాలా షీట్లు ఉన్నాయని అనుకోండి మరియు నిర్దిష్ట వర్క్షీట్ను తొలగించడానికి మేము వర్క్షీట్ను దాని పేరుతో పేర్కొనాలి. ఉదాహరణకు, నాకు “సేల్స్ 2016”, “సేల్స్ 2017” మరియు “సేల్స్ 2018” అనే 3 వేర్వేరు షీట్లు ఉన్నాయి.
నేను పేరు పెట్టబడిన షీట్ను తొలగించాలనుకుంటే “అమ్మకాలు 2017”అప్పుడు నేను క్రింద ఉన్న షీట్ పేరును ప్రస్తావించాలి.
కోడ్:
ఉప Delete_Example1 () వర్క్షీట్లు ("షీట్లు 2017"). ఎండ్ సబ్
వర్క్షీట్ పేరును నేరుగా ప్రస్తావించడంలో సమస్య మేము VBA యొక్క ఇంటెల్లిసెన్స్ జాబితాను చూడలేము. ఏమైనా ఈ పద్ధతిని “తొలగించు”.
కోడ్:
ఉప Delete_Example1 () వర్క్షీట్లు ("షీట్లు 2017"). ఎండ్ సబ్ తొలగించండి
కాబట్టి ఇది “అమ్మకాలు 2017“.
వర్క్షీట్ను తొలగించేటప్పుడు లోపం: మేము ఉనికిలో లేని వర్క్షీట్ను తొలగించడానికి ప్రయత్నిస్తే లేదా వర్క్షీట్ పేరును తప్పుగా ప్రస్తావించినట్లయితే మనకు vba లోపం వస్తుంది “సబ్స్క్రిప్ట్ అవుట్ ఆఫ్ రేంజ్”.
పై వాటిలో, నాకు “సబ్స్క్రిప్ట్ అవుట్ ఆఫ్ రేంజ్” లోపం వచ్చింది ఎందుకంటే నా వర్క్బుక్లో “సేల్స్ 2017” అనే షీట్ పేరు లేదు.
ఉదాహరణ # 2 - వర్క్షీట్ను దాని పేరుతో వేరియబుల్స్తో తొలగించండి
వర్క్షీట్స్ ఆబ్జెక్ట్ని ఉపయోగించడం ద్వారా వర్క్షీట్ పేరును సూచించిన క్షణం పై ఉదాహరణను చూసినట్లుగా, మేము ఇంటెల్లిసెన్స్ జాబితాను చూడలేము. ఇంటెల్లిసెన్స్ జాబితాను చూడటానికి మనం వేరియబుల్స్ ఉపయోగించాలి.
దశ 1: మొదట వేరియబుల్ గా ప్రకటించండి వర్క్షీట్.
కోడ్:
వర్క్షీట్ ఎండ్ సబ్గా ఉప Delete_Example2 () Dim Ws
దశ 2: వర్క్షీట్ ఆబ్జెక్ట్ వేరియబుల్ కనుక మనం “ఉపయోగించి వేరియబుల్ను నిర్దిష్ట వర్క్షీట్కు సెట్ చేయాలి.సెట్”పదం.
కోడ్:
సబ్ డిలీట్_ఎక్సాంపుల్ 2 () డిమ్ డబ్ల్యుఎస్ వర్క్షీట్ సెట్గా Ws = వర్క్షీట్లు ("సేల్స్ 2017") ఎండ్ సబ్
ఇప్పుడు వేరియబుల్ “Ws” “సేల్స్ 2017” అని పిలువబడే వర్క్షీట్ను సూచిస్తుంది.
దశ 3: ఇప్పుడు వేరియబుల్ “Ws”మేము వర్క్షీట్ యొక్క అన్ని ఇంటెల్లిసెన్స్ జాబితాను యాక్సెస్ చేయవచ్చు.
కోడ్:
ఉప Delete_Example2 () మసకబారిన Ws వర్క్షీట్ సెట్గా Ws = వర్క్షీట్లు ("అమ్మకాలు 2017") Ws. ఎండ్ సబ్
దశ 4: ఇంటెల్లిసెన్స్ జాబితా నుండి “తొలగించు”పద్ధతి.
కోడ్:
ఉప Delete_Example2 () మసకబారిన Ws వర్క్షీట్ సెట్గా Ws = వర్క్షీట్లు ("సేల్స్ 2017") Ws.Delete ఎండ్ సబ్
వేరియబుల్స్ ఉపయోగించి ఇలా, మేము ఇంటెల్లిసెన్స్ జాబితాను యాక్సెస్ చేయవచ్చు.
ఉదాహరణ # 3 - క్రియాశీల వర్క్షీట్ను తొలగించండి
యాక్టివ్ షీట్ ఏ వర్క్షీట్ సక్రియంగా ఉంది లేదా ప్రస్తుతానికి ఎంచుకోబడింది. ఈ పద్ధతి కోసం, మేము వర్క్షీట్ పేరును పేర్కొనవలసిన అవసరం లేదు. ఉదాహరణకు, క్రింద ఉన్న VBA కోడ్ను చూడండి.
ActiveSheet.Delete
ప్రస్తుతం క్రియాశీల షీట్ “సేల్స్ 2017”.
నేను కోడ్ను అమలు చేస్తే అది క్రియాశీల షీట్ను తొలగిస్తుంది. “అమ్మకాలు 2017”.
ఇప్పుడు నేను “సేల్స్ 2016” ని ఎన్నుకుంటాను.
ఇప్పుడు అది క్రియాశీల షీట్ను తొలగిస్తుంది, అనగా “సేల్స్ 2016”.
ఇలా, వర్క్షీట్ను తొలగించడానికి “యాక్టివ్ షీట్” ఆబ్జెక్ట్ని ఉపయోగించవచ్చు.
గమనిక: ఈ పద్ధతిని ఉపయోగించడానికి మనం యాక్టివ్ షీట్తో ఏమి చేస్తున్నామో మరియు ఏ షీట్ యాక్టివ్ షీట్గా ఉండబోతుందో ఖచ్చితంగా తెలుసుకోవాలి.
ఉదాహరణ # 4 - ఒకటి కంటే ఎక్కువ వర్క్షీట్లను తొలగించండి
మా పై ఉదాహరణలలో, ఒకే షీట్ను ఎలా తొలగించాలో చూశాము, కాని మనకు బహుళ వర్క్షీట్లు ఉంటే 10 వర్క్షీట్లను తొలగించాలనుకుంటున్నాము.
వర్క్షీట్ను తొలగించడానికి మేము 10 పంక్తుల కోడ్ రాయడం కొనసాగించలేము, కాబట్టి వర్క్షీట్ల సేకరణ ద్వారా లూప్ చేయడానికి మరియు వాటిని తొలగించడానికి లూప్లను ఉపయోగించాలి.
కోడ్ క్రింద వర్క్షీట్ల ద్వారా లూప్ అవుతుంది మరియు వర్క్బుక్లోని అన్ని వర్క్షీట్లను తొలగిస్తుంది.
కోడ్:
యాక్టివ్వర్క్బుక్లోని ప్రతి Ws కోసం వర్క్షీట్గా ఉప Delete_Example2 () మసకబారిన Ws.Worksheets Ws.Delete తదుపరి Ws ముగింపు ఉప
వర్క్బుక్లోని అన్ని షీట్లను తొలగించడానికి ప్రయత్నిస్తున్నందున పై కోడ్ లోపం విసిరింది. కాబట్టి దీనిని నివారించడానికి మనం కనీసం ఒక వర్క్షీట్ అయినా నిలుపుకోవాలి.
మేము క్రియాశీల షీట్ మినహా అన్ని వర్క్షీట్లను తొలగించాలనుకుంటే, అప్పుడు మేము ఈ క్రింది కోడ్ను ఉపయోగించాలి.
కోడ్:
యాక్టివ్వర్క్బుక్లోని ప్రతి Ws కోసం వర్క్షీట్గా ఉప Delete_Example2 () మసకబారిన Ws.Worksheets ఉంటే ActiveSheet.Name Ws.Name అప్పుడు Ws.Delete ముగింపు ఉంటే Ws ముగింపు ఉప
అదేవిధంగా, మేము నిర్దిష్ట వర్క్షీట్ను తొలగించాలనుకుంటే, అన్ని ఇతర వర్క్షీట్లను తొలగించాలనుకుంటే, మనం క్రింద కోడ్ను ఉపయోగించవచ్చు.
కోడ్:
యాక్టివ్వర్క్బుక్లోని ప్రతి Ws కోసం వర్క్షీట్గా ఉప Delete_Example2 () వర్క్షీట్లు.
పై కోడ్ “సేల్స్ 2018” అని పిలువబడే వర్క్షీట్ మినహా అన్ని వర్క్షీట్లను తొలగిస్తుంది.