VBA సేకరణ | VBA లో కలెక్షన్ ఆబ్జెక్ట్ ఎలా సృష్టించాలి?
ఎక్సెల్ VBA కలెక్షన్ ఆబ్జెక్ట్
VBA కోడింగ్లో ఒక సమూహం క్రింద ఉన్న వస్తువుల సేకరణ కాకుండా, మన స్వంత సేకరణ సమూహాలను కూడా సృష్టించవచ్చు. మా అనేక వ్యాసాలలో, మేము ఆబ్జెక్ట్ వేరియబుల్స్ గురించి మాట్లాడాము మరియు ఈ ట్యుటోరియల్ లో, మేము VBA సేకరణ వస్తువు ద్వారా వివరంగా తీసుకుంటాము.
మీరు మా మునుపటి వ్యాసం “VBA శ్రేణుల” ద్వారా వెళ్ళినట్లయితే, మీరు అర్థం చేసుకోవడానికి ఇది చాలా సులభం అవుతుంది. ఒకే పైకప్పు క్రింద సమూహ వేరియబుల్స్కు శ్రేణులను ఉపయోగిస్తారు, అదేవిధంగా, సేకరణ కూడా వేరియబుల్స్ సమూహాన్ని నిల్వ చేయడానికి ఉపయోగించబడుతుంది.
వస్తువులను నిల్వ చేయడానికి సేకరణలు ఉపయోగించబడతాయి. అవి VBA శ్రేణుల కంటే చాలా సరళమైనవి, అయితే శ్రేణులకు స్థిర పరిమాణ పరిమితి ఉంటుంది, అయితే సేకరణలకు ఏ సమయంలోనైనా స్థిర పరిమాణ పరిమితి ఉండదు మరియు మాన్యువల్ పున izing పరిమాణం కూడా అవసరం లేదు.
VBA కలెక్షన్ “VBA డిక్షనరీ” కి చాలా పోలి ఉంటుంది, కానీ డిక్షనరీకి ఆబ్జెక్ట్ రిఫరెన్స్ విండో క్రింద బాహ్య ఆబ్జెక్ట్ రిఫరెన్స్ అవసరం. VBA డిక్షనరీతో మేము రిఫరెన్స్ రకాన్ని “మైక్రోసాఫ్ట్ స్క్రిప్టింగ్ రన్టైమ్” గా సెట్ చేయాలి, అయితే సేకరణకు ఆ అదనపు అమరికలు ఏవీ అవసరం లేదు.
VBA లో కలెక్షన్ ఆబ్జెక్ట్ ఎలా సృష్టించాలి?
మొదట సేకరణతో ప్రారంభించడానికి మనం వేరియబుల్ గా ప్రకటించాలి “సేకరణ”.
మీరు ఈ VBA కలెక్షన్ ఎక్సెల్ మూసను ఇక్కడ డౌన్లోడ్ చేసుకోవచ్చు - VBA కలెక్షన్ ఎక్సెల్ మూసకోడ్:
కలెక్షన్ ఎండ్ సబ్ గా ఉప కలెక్షన్_ఉదాహరణ () డిమ్ కల్
సేకరణ ఆబ్జెక్ట్ వేరియబుల్ కనుక మనం క్రొత్త ఉదాహరణను సృష్టించడం ద్వారా ఆబ్జెక్ట్ రిఫరెన్స్ సెట్ చేయాలి.
కోడ్:
సబ్ కలెక్షన్_ఉదాహరణ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ ఎండ్ సబ్
ఇప్పుడు వేరియబుల్ తో, మేము కలెక్షన్ వేరియబుల్ “కల్” యొక్క అన్ని పద్ధతులను యాక్సెస్ చేయవచ్చు.
కోడ్:
సబ్ కలెక్షన్_ఉదాహరణ () డిమ్ కల్ గా కలెక్షన్ సెట్ కల్ = న్యూ కలెక్షన్ కల్నల్ ఎండ్ సబ్
ఈ పద్ధతులను ఉపయోగించుకునే ముందు మనం వేరియబుల్ను స్ట్రింగ్గా ప్రకటించాలి.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ డిమ్ కోల్ రిసల్ట్ యాస్ స్ట్రింగ్ ఎండ్ సబ్
ఇప్పుడు వేరియబుల్ “కల్” ను “యాడ్” పద్ధతిని ఎంచుకోండి.
కోడ్:
ఉప కలెక్షన్_ఉదాహరణ () డిమ్ కల్ కలెక్షన్ సెట్ Col = న్యూ కలెక్షన్ Col.Ad End Sub ని జోడించండి
జోడించు పద్ధతి క్రింద, మాకు కొన్ని పారామితులు ఉన్నాయి. మేము మొబైల్ బ్రాండ్ పేర్లను మార్కెట్లో సగటు అమ్మకపు ధరతో నిల్వ చేస్తున్నాం.
కింద అంశం, వాదన మొబైల్ ధరలోకి ప్రవేశిస్తుంది.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ కలర్. అంశం జోడించండి: = 15000, ఎండ్ సబ్
తరువాత, కింద కీ వాదన మొబైల్ బ్రాండ్ పేరును నమోదు చేయండి.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ కలర్. అంశం: = 15000, కీ: = "రెడ్మి" ఎండ్ సబ్
ఇప్పుడు వేరియబుల్ “ColResult” కోసం, “Col” ఆబ్జెక్ట్ వేరియబుల్ ఫలితాన్ని నిల్వ చేస్తాము.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ కలర్.
మీరు వేరియబుల్ “కల్” యొక్క కుండలీకరణాన్ని తెరిచినప్పుడు మేము వాదనను చూడవచ్చు సూచిక ఈ వాదన కోసం మేము సరఫరా చేయాలి కీ కలెక్షన్ యాడ్ పద్ధతి నుండి ఆర్గ్యుమెంట్ విలువ అనగా మొబైల్ బ్రాండ్ పేరు.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ కలెక్షన్ సెట్ కోల్ = న్యూ కలెక్షన్ కలర్.
ఇప్పుడు ఫలితాన్ని VBA లోని సందేశ పెట్టెలో చూపిద్దాం.
కోడ్:
సబ్ కలెక్షన్_ఎక్సాంపుల్ () డిమ్ కల్ గా కలెక్షన్ సెట్
సరే, మేము మొబైల్ బ్రాండ్ “రెడ్మి” ధరను చూడవలసిన కోడ్ను నడుపుతున్నప్పుడు పూర్తిచేశాము.
కీ & ఐటెమ్ పారామితుల యొక్క మంచి అవగాహన
కలెక్షన్ ఆబ్జెక్ట్ యొక్క పారామితులను అర్థం చేసుకోవడం అంత సులభం కాదని నేను ఖచ్చితంగా అనుకుంటున్నాను. ఒక సాధారణ ఉదాహరణతో మీకు వివరిస్తాను.
పండ్ల పేరు మరియు పండ్ల ధరతో మీకు పండ్ల మెనూ ఉందని g హించుకోండి. మీరు పండు పేరుతో “ఆపిల్” పండ్ల ధరను శోధిస్తున్నారని అనుకోండి.
పండు యొక్క ధరను శోధించడానికి మనం పండు పేరును పేర్కొనాలి, అంటే సేకరణ VBA భాషలో పండు పేరు ఉంది కీ మరియు పండు యొక్క ధర “అంశం”.
ఇది VLOOKUP లేదా HLOOKUP ఫంక్షన్ను వర్తింపజేయడం లాంటిది, శోధన విలువ ఆధారంగా మేము డేటాబేస్ నుండి అవసరమైన డేటాను పొందుతాము. ఇక్కడ శోధన విలువ కీ మరియు ఫలితం అంశం.
అధునాతన ఉదాహరణ
మీరు రిటైల్ దుకాణాలలో ఒకదానిలో స్టోర్ మేనేజర్ అని g హించుకోండి మరియు కస్టమర్ ప్రశ్నలను నిర్వహించడానికి మీరే బాధ్యత వహిస్తారు. అటువంటి కస్టమర్ ప్రశ్న ఉత్పత్తి ధర గురించి విచారణ.
పూర్తి సమాచారంతో ఉత్పత్తి ధరను శోధించడానికి మీరు కస్టమర్ను అనుమతించాలి. అదేవిధంగా, డేటా కనుగొనబడకపోతే మీరు సందేశాన్ని చూపించాలి. దిగువ ఉదాహరణ వినియోగదారు ముందు ఇన్పుట్ బాక్స్ను ప్రదర్శించే ఉదాహరణ కోడ్ మరియు వారు వెతుకుతున్న ఉత్పత్తి పేరును నమోదు చేయవలసి ఉంటుంది, ఉత్పత్తి సేకరణలో ఉంటే అది పేర్కొన్న ఉత్పత్తి ధరను చూపుతుంది, లేకపోతే అది అవుతుంది సందేశాన్ని “మీరు శోధిస్తున్న ఉత్పత్తి ఉనికిలో లేదు” అని చూపించు.
కోడ్:
సేకరణ = "వాటర్ మెలోన్", ఐటమ్: = 45 ఐటమ్స్ కోల్. కీ: = "ముష్ మిల్లన్", ఐటెమ్: = 85 ఐటమ్స్ కోల్. కీ: = "మామిడి", అంశం: = 65 కోల్ రిసల్ట్ = అప్లికేషన్.ఇన్పుట్బాక్స్ (ప్రాంప్ట్: = "దయచేసి ఫ్రూట్ పేరును నమోదు చేయండి ") ఐటమ్స్కోల్ (కోల్ రిసల్ట్)" "అప్పుడు MsgBox" ఫ్రూట్ యొక్క ధర "& ColResult &" is: "& ItemsCol (ColResult) Else MsgBox" మీరు వెతుకుతున్న పండ్ల ధర ఉనికిలో లేదు సేకరణ "ఎండ్ ఇఫ్ ఎండ్ సబ్