VBA ListObjects | ఎక్సెల్ VBA లో లిస్ట్ ఆబ్జెక్ట్ ఎక్సెల్ టేబుల్స్ కు గైడ్

VBA లో ListObjects అంటే ఏమిటి?

ఒక పట్టికలో సాధారణంగా మనం చూసేది డేటా సమితి, కాని VBA పరిభాషలో మొత్తం డేటా జాబితా పరిధి యొక్క పరిధి ఉన్నందున చాలా ఎక్కువ ఉన్నాయి, కాలమ్‌ను జాబితా కాలమ్ అని పిలుస్తారు మరియు అడ్డు వరుసను జాబితా వరుస అని పిలుస్తారు మరియు మొదలైనవి , కాబట్టి ఈ లక్షణాలను ప్రాప్తి చేయడానికి మనకు లిస్టోబ్జెక్ట్స్ అని పిలువబడే అంతర్నిర్మిత ఫంక్షన్ ఉంది మరియు ఇది వర్క్‌షీట్ ఫంక్షన్‌తో ఉపయోగించబడుతుంది.

VBA ListObject అనేది VBA కోడ్ రాసేటప్పుడు ఎక్సెల్ పట్టికలను సూచించే మార్గం. VBA LISTOBJECTS ను ఉపయోగించడం ద్వారా మనం పట్టికను సృష్టించవచ్చు, తొలగించవచ్చు మరియు పూర్తిగా VBA కోడ్‌లోని ఎక్సెల్ పట్టికలతో ఆడవచ్చు. ఎక్సెల్ టేబుల్స్ గమ్మత్తైనవి, ప్రారంభకులు, మరియు కొంతవరకు ఇంటర్మీడియట్ స్థాయి వినియోగదారులు పట్టికలతో పనిచేయడం కష్టమనిపిస్తుంది. ఈ వ్యాసం VBA కోడింగ్‌లో ఎక్సెల్ టేబుల్స్ గురించి ప్రస్తావించడం గురించి మాట్లాడుతుండటం వల్ల ఎక్సెల్ లోని టేబుల్స్ గురించి మీకు మంచి జ్ఞానం ఉంది.

డేటా పట్టికలుగా మార్చబడినప్పుడు మేము ఇకపై కణాల శ్రేణితో పనిచేయము, బదులుగా మేము పట్టిక శ్రేణులతో పని చేయాల్సిన అవసరం ఉంది, కాబట్టి ఈ వ్యాసంలో, VBA సంకేతాలను సమర్ధవంతంగా వ్రాయడానికి ఎక్సెల్ పట్టికలతో ఎలా పని చేయాలో మీకు చూపుతాము.

ఎక్సెల్ VBA లో ListObjects ఉపయోగించి టేబుల్ ఫార్మాట్ సృష్టించండి

ఉదాహరణకు, దిగువ ఎక్సెల్ డేటాను చూడండి.

VBA ListObject కోడ్‌ను ఉపయోగించి మేము ఈ డేటా కోసం టేబుల్ ఫార్మాట్‌ను సృష్టిస్తాము.

మీరు ఈ VBA ListObjects Excel మూసను ఇక్కడ డౌన్‌లోడ్ చేసుకోవచ్చు - VBA ListObjects Excel Template
  • ఈ డేటా కోసం మొదట మనం చివరిగా ఉపయోగించిన అడ్డు వరుస & కాలమ్ ఏమిటో కనుగొనాలి, కాబట్టి దీన్ని కనుగొనడానికి రెండు వేరియబుల్స్ ను నిర్వచించండి.

కోడ్:

 ఉప జాబితా_ఆబ్జెక్ట్స్_ఎక్సాంపుల్ 1 () డిమ్ ఎల్ఆర్ లాంగ్ డిమ్ ఎల్సి లాంగ్ లాంగ్ ఎండ్ సబ్ 

  • చివరిగా ఉపయోగించిన అడ్డు వరుస మరియు కాలమ్‌ను కనుగొనడానికి క్రింది కోడ్‌ను ఉపయోగించండి.

కోడ్:

LR = కణాలు (అడ్డు వరుసలు, 1) .ఎండ్ (xlUp) .రో LC = కణాలు (1, నిలువు వరుసలు.) .మరియు (xlToLeft). కాలమ్

  • డేటా యొక్క సూచనను ఉంచడానికి ఇప్పుడు మరో వేరియబుల్‌ను నిర్వచించండి.

కోడ్:

 పరిధిగా మసకబారిన Rng 

  • ఇప్పుడు దిగువ కోడ్‌ను ఉపయోగించి ఈ వేరియబుల్‌కు సూచనను సెట్ చేయండి.

కోడ్:

 Rng = కణాలు (1, 1) సెట్ చేయండి .పరిమితి (LR, LC)

ఇప్పుడు మనం పట్టికను సృష్టించడానికి VBA “ListObject.Add” పద్ధతిని ఉపయోగించాలి మరియు క్రింద అదే వాక్యనిర్మాణం ఉంది.

ListObject.Add (మూలం, XlListObjectHasHeaders, గమ్యం, టేబుల్‌స్టైల్‌నేమ్)

మూలం: ఇది మేము ఏ శ్రేణి కణాల కోసం పట్టికను చొప్పించాము. కాబట్టి మనం ఇక్కడ రెండు వాదనలు సరఫరా చేయవచ్చు. “XlSrcRange” మరియు “XlSrcExternal”.

XlListObjectHasHeaders: డేటాను చొప్పించే పట్టికలో శీర్షికలు ఉంటే లేదా. అవును అయితే మేము అందించగలము “XlYes” కాకపోతే మేము అందించగలము “XlNo”.

గమ్యం: ఇది మా డేటా పరిధి తప్ప మరొకటి కాదు.

టేబుల్ స్టైల్: మీరు ఏదైనా టేబుల్ స్టైల్‌ని వర్తింపజేయాలనుకుంటే మేము శైలులను అందించగలము.

  • సరే, ఇప్పుడు క్రియాశీల షీట్లో మేము పట్టికను సృష్టిస్తున్నాము, కాబట్టి క్రింద కోడ్ మనకు పట్టికను సృష్టిస్తుంది.

కోడ్:

 వర్క్‌షీట్ సెట్‌గా మసకబారిన Ws = యాక్టివ్‌షీట్ Ws.ListObjects.Al xlSrcRange, xllistobjecthasheaders: = xlYes, గమ్యం: = Rng

  • దీని తరువాత, మేము ఈ పట్టికకు ఒక పేరు ఇవ్వాలి.

కోడ్:

Ws.ListObjects (1) .name = "EmpTable"

  • మీ సూచన కోసం పూర్తి కోడ్ క్రింద ఉంది.

కోడ్:

 ఉప జాబితా_ఆబ్జెక్ట్స్_ఎక్సాంపుల్ 1 () డిమ్ ఎల్ఆర్ లాంగ్ డిమ్ ఎల్సి లాంగ్ ఎల్ఆర్ = సెల్స్ (అడ్డు వరుసలు, 1) .ఎండ్ (ఎక్స్ఎల్యుపి) .రో ఎల్సి = సెల్స్ (1, నిలువు వరుసలు .కౌంట్) .ఎండ్ (ఎక్స్ఎల్ టోఫ్ట్) Rng = కణాలు (1, 1) సెట్ చేయండి .వర్క్‌షీట్‌గా పున L పరిమాణం (LR, LC) మసకబారిన Ws = ActiveSheet Ws.ListObjects.Axl xlSrcRange, xllistobjecthasheaders: = xlYes, గమ్యం: = Rng Ws.ListObjects (1) .name = " EmpTable "ఎండ్ సబ్ 

సరే, కోడ్‌ను రన్ చేసి మ్యాజిక్ చూద్దాం.

ఇది పేర్కొన్న డేటాకు పట్టికను సృష్టించింది మరియు పట్టిక పేరును ఇచ్చింది “EmpTable”.

VBA ListObjects తో ఎక్సెల్ టేబుల్స్ ఫార్మాట్ చేస్తోంది

ఎక్సెల్ పట్టిక సృష్టించబడిన తర్వాత మనం vba ListObject సేకరణను ఉపయోగించి పట్టికలతో పని చేయవచ్చు.

  • మొదట, వేరియబుల్‌ను “ListObject” గా నిర్వచించండి.

కోడ్:

 సబ్ లిస్ట్_ఆబ్జెక్ట్స్_ఎక్సాంపుల్ 2 () డిమ్ మై టేబుల్ లిస్ట్ ఆబ్జెక్ట్ ఎండ్ సబ్ 

  • ఇప్పుడు పట్టిక పేరును ఉపయోగించి ఈ వేరియబుల్‌కు సూచనను సెట్ చేయండి.

కోడ్:

 సబ్ లిస్ట్_ఆబ్జెక్ట్స్_ఎక్సాంపుల్ 2 () డిమ్ మై టేబుల్ లిస్ట్ ఆబ్జెక్ట్ సెట్ మై టేబుల్ = యాక్టివ్‌షీట్.లిస్ట్ ఆబ్జెక్ట్స్ ("ఎమ్‌టేబుల్") ఎండ్ సబ్ 

ఇప్పుడు వేరియబుల్ “MyTable” పట్టిక “EmpTable” కొరకు సూచనను కలిగి ఉంది.

  • VBA ListObject యొక్క లక్షణాలు మరియు పద్ధతులను చూడటానికి వేరియబుల్ పేరును నమోదు చేయండి మరియు చుక్కను ఉంచండి.

ఉదాహరణకు, మేము మొత్తం పట్టికను ఎన్నుకోవాలనుకుంటే, మనం “రేంజ్” వస్తువును ఉపయోగించాలి మరియు దీని కింద, మనం “ఎంచుకోండి” పద్ధతిని ఉపయోగించాలి.

కోడ్:

MyTable.Range.Select

ఇది శీర్షికతో సహా మొత్తం డేటా పట్టికను ఎన్నుకుంటుంది.

  • మీరు శీర్షికలు లేకుండా పట్టికలోని విషయాలను మాత్రమే ఎంచుకోవాలనుకుంటే, మేము “డేటాబాడీరేంజ్” ను ఉపయోగించాలి.

కోడ్:

MyTable.DataBodyRange.Select

ఇలా, మేము పట్టికలతో చుట్టూ ఆడవచ్చు.

  • మీ సూచన కోసం కార్యాచరణ కోడ్‌ల జాబితా క్రింద ఉంది.

కోడ్:

 ఉప జాబితా_ఆబ్జెక్ట్స్_ఎక్సాంపుల్ 2 () మసక మై టేబుల్‌ను జాబితా ఆబ్జెక్ట్‌గా సెట్ చేయండి MyTable = ActiveSheet.ListObjects ("EmpTable") MyTable.DataBodyRange. పట్టిక శీర్షిక వరుసలను ఎంచుకోండి MyTable.ListColumns (2) .రేంజ్. ఎంచుకోండి 'హెడర్ MyTable.ListColumns (2) తో సహా కాలమ్ 2 ని ఎంచుకోవడానికి .డేటాబాడీరేంజ్. ఎంచుకోండి' హెడర్ లేకుండా కాలమ్ 2 ని ఎంచుకోవడానికి 

ఇలా, మేము ఎక్సెల్ పట్టికలతో ఆడటానికి “ListObject” సేకరణను ఉపయోగించవచ్చు.

గుర్తుంచుకోవలసిన విషయాలు

  • VBA ListObject అనేది ఎక్సెల్ పట్టికలను సూచించడానికి వస్తువుల సేకరణ.
  • ListObject సేకరణను ప్రాప్యత చేయడానికి మొదట మనం సూచించే వర్క్‌షీట్ ఏమిటో పేర్కొనాలి.