वीबीए घोषणा ऐरे - वीबीए में ऐरे की घोषणा कैसे करें?

एक्सेल VBA डिक्लेयर ऐरे

VBA में सरणी की घोषणा बहुत कुछ वैरिएबल के समान है, यह एक ही मंद स्टेटमेंट या स्टेटिक पब्लिक या प्राइवेट स्टेटमेंट द्वारा किया जाता है, किसी ऐरे को घोषित करने और वेरिएबल को घोषित करने में एकमात्र अंतर यह है कि एरे को घोषित करते समय हमें एक साइज प्रदान करना होगा। एक सरणी जो सरणी की ऊपरी सीमा और सरणी की निचली सीमा है।

VBA कोड में, हम एक सिंगल वेरिएबल ऐरे को घोषित कर सकते हैं जो सिंगल वैरिएबल घोषित करने के बजाय वेरिएबल्स की संख्या को पकड़ सकता है। यह कोड में लाइनों की संख्या को कम करने में मदद कर सकता है।

सरणी एक प्रकार का चर है जो एक से अधिक मूल्य पकड़ सकता है, नियमित चर के विपरीत जो एक समय में केवल एक मान रख सकता है। सरणी VBA में चर घोषित करने का एक उन्नत संस्करण है। उदाहरण के लिए, ऐसी स्थिति की कल्पना करें जहां आप 5 छात्रों के नाम चर के लिए निर्दिष्ट करना चाहते हैं, और सामान्य तौर पर, हम उन सभी पाँच चर के लिए पाँच चर घोषित करते हैं जिन्हें हम एक-एक करके अलग-अलग छात्र के नाम निर्दिष्ट करते हैं; नीचे उसी का उदाहरण कोड है।

कोड:

सब Array_Example () डिम स्टूडेंट 1 स्ट्रींग डिम स्टूडेंट 2 स्ट्रींग डिम स्टूडेंट 3 स्ट्रिंगिंग डिम स्टूडेंट 4 स्ट्रींग डिम स्टूडेंट 5 स्टिंग एंड सब उप

इतने सारे चर घोषित करने के बजाय, एक एकल चर सरणी को घोषित करने के विचार के बारे में जो सभी छात्र नामों को पकड़ सकते हैं।

हां, वीबीए में ऐरे की घोषणा करके यह संभव है।

उदाहरण

उदाहरण 1

घोषित करने के लिए, हमें किसी विशेष VBA कोडिंग की आवश्यकता नहीं है। बल्कि, हमें सरल अवधारणाओं का पालन करने की आवश्यकता है।

सबसे पहले, उपप्रकार शुरू करें।

कोड:

उप Array_Example () समाप्ति उप

अब, हमेशा की तरह, एक चर को स्ट्रिंग के रूप में घोषित करें।

कोड:

उप Array_Example () स्ट्रींग एंड सब के रूप में मंद छात्र

एक बार चर घोषित होने के बाद, अब यह सुनिश्चित कर लें कि इसे कितने मूल्यों पर रखना चाहिए। इस मामले में, मैं पांच छात्रों के नाम संग्रहीत करना चाहता हूं, इसलिए अब हमें सरणी आकार को ठीक करने की आवश्यकता है, 1 से 5. ब्रैकेट्स में चर के लिए एक ही चीज़ की आपूर्ति करें।

कोड:

उप Array_Example () मंद छात्र (1 से 5) स्ट्रिंग अंत उप के रूप में

अब इस एकल चर के लिए, हम 5 छात्र नाम रख सकते हैं।

कोड:

उप Array_Example () मंद छात्र (1 से 5) स्ट्रिंग छात्र के रूप में (1) = "जॉन" छात्र (2) = "पीटर" छात्र (3) = "रिकी" छात्र (4) = "माइकल" छात्र (5) = "एंडरसन" एंड सब

देखो कि हमने चर को एक सरणी के रूप में घोषित करके कितनी लाइनें कम की हैं। यह करने का एक तरीका है। हम अभी भी इस कोड को VBA में छोरों के अंदर संलग्न करके छोटा कर सकते हैं।

अब एक उदाहरण के लिए, वही पाँच नाम मेरे पास वर्कशीट सेल्स में हैं ।3

अब मैं VBA में संदेश बॉक्स में इन नंबरों को दिखाना चाहता हूं; ठीक है, चलो लूप्स के लिए एक और चर को इंटेगर डेटा प्रकार घोषित करते हैं।

कोड:

सब Array_Example () मंद छात्र (1 से 5) स्ट्रिंग डी के रूप में पूर्णांक अंत के रूप में

हमेशा की तरह, मैंने सरणी चर को 1 से 5 आकारों के रूप में बनाए रखा है।

अब VBA में NEXT लूप के लिए खोलें, और चूंकि हमारे पास पांच नाम हैं, इसलिए सीमा को 1 से 5 के रूप में दर्ज करें।

कोड:

उप Array_Example () मंद छात्र (1 से 5) स्ट्रिंग K के लिए पूर्णांक के रूप में Dim K के रूप में = 1 से 5 K अगले उप

सरणी चर के मानों को निर्दिष्ट करने के लिए, हमें छात्र (1), छात्र (2) को दिखाने के पिछले तरीके का पालन करने की आवश्यकता नहीं है, जैसे कि नंबर स्थिति आपूर्ति लूप चर "k" के लिए।

कोड:

Sub Array_Example() Dim Student(1 To 5) As String Dim K As Integer For K = 1 To 5 Student(K) = Next K End Sub

For this array variable, we need the values from the worksheet, so using CELLS property gets the values from the worksheet.

Code:

Sub Array_Example() Dim Student(1 To 5) As String Dim K As Integer For K = 1 To 5 Student(K) = Cells(K, 1).Value Next K End Sub

Now through the message box, show the value of the array variable.

Code:

Sub Array_Example() Dim Student(1 To 5) As String Dim K As Integer For K = 1 To 5 Student(K) = Cells(K, 1).Value MsgBox Student(K) Next K End Sub

Now run the code. In the message box, we will see the first name. Again press Ok to see the second name. Like this by pressing Ok, we can see all the five names.

Example #2 - Two Dimensional Arrays

We have seen above how the array works, now we will see to dimensional arrays. Two-dimensional arrays concentrate on both rows and columns.

In the above example, we have determined the array’s size as 1 to 5; this either concentrates on rows or columns.

By using two-dimensional arrays, we can concentrate on both rows and columns. For this, we need to enclose two loops.

First, define the variable then late we will decide about the size of the array.

Code:

Sub Two_Array_Example() Dim Student As String End Sub

First, decide row size then decide the column length.

Code:

Sub Two_Array_Example() Dim Student(1 To 5, 1 To 3) As String End Sub

For this, I have structured the data for student names, marks, and grade status.

Now come back to the coding window.

Declare two more variables for a loop.

Code:

उप Two_Array_Example () मंद छात्र (1 से 5, 1 से 3) स्ट्रिंग डी के रूप में पूर्णांक के रूप में, जे अंतकार अंत के रूप में

अब लूप को संलग्न करें, जैसा कि नीचे दिखाया गया है।

कोड:

उप Two_Array_Example () डिम स्टूडेंट (1 से 5, 1 से 3) स्ट्रिंग डी के रूप में ए के रूप में, जे के रूप में पूर्णांक के लिए कश्मीर = 1 से 5 के लिए जे = 1 से 3 कार्यपत्रक ("छात्र सूची")। छात्र का चयन करें (के, J) = कक्ष (k, J)। वाल्यू वर्क्स ("कॉपी शीट")। सेल का चयन करें (k, J) .Value = छात्र (k, J) अगला J अगला k अगला अंत उप

यह क्या करता है यह "छात्र सूची" शीट से डेटा कॉपी करेगा और "कॉपी शीट" में पेस्ट करेगा।

याद रखने वाली चीज़ें

  • सरणी एक विशाल अवधारणा है; यह सिर्फ एक परिचयात्मक हिस्सा है।
  • सरणी घोषणा को समझने के लिए आपको उन्नत कोडिंग कौशल की आवश्यकता होती है।
  • जितना अधिक आप अपने कोड में सरणियों का उपयोग करते हैं, उतना ही आपको इसकी आदत हो जाएगी।

दिलचस्प लेख...