VBA प्रकार डेटा प्रकार (मंद चर)

प्रकार चर प्रकार

एक वेरिएंट वैरिएबल डेटा के किसी भी समय (स्ट्रिंग, पूर्णांक, दशमलव, ऑब्जेक्ट, आदि) को पकड़ सकता है। यदि आप एक चर प्रकार घोषित नहीं करते हैं, तो आपके चर को भिन्न माना जाएगा।

वैरिएंट वैरिएबल घोषित करने के लिए, आप डिम स्टेटमेंट (आयाम के लिए छोटा) का उपयोग करते हैं:

1 Dim varName as variant
1 संस्करण के रूप में मंद rng

फिर, एक चर के लिए एक मान निर्दिष्ट करने के लिए, बस बराबर चिह्न का उपयोग करें:

1 varName = "जॉन"
1 आरएनजी = शीट्स (1)। रेंज ("ए 1")

इसे एक प्रक्रिया में रखना इस तरह दिखता है:

12345678910 उप strExample ()'वेरिएंट घोषित करें'डिम स्ट्रनाम वैरिएंट के रूप मेंसंस्करण के रूप में मंद रंग'चरों को आबाद करें'strName = "फ्रेड स्मिथ"सेट आरएनजी = शीट्स (1)। रेंज ("ए 1")'शीट को पॉप्युलेट करें'rng.Value = strNameअंत उप

यदि आप ऊपर दिए गए कोड को चलाते हैं, तो शीट 1 में सेल A1 "फ्रेड स्मिथ" से भर जाएगा

ऊपर घोषित नामों से, हम यह निष्कर्ष निकाल सकते हैं कि वरनाम पाठ होगा, और ओब्जशीट एक वर्कशीट ऑब्जेक्ट होगा। लेकिन वास्तव में, किसी भी प्रकार के डेटा को वेरिएबल की ओर निर्देशित किया जा सकता है।

आप ऊपर घोषित चरों को निम्नानुसार पॉप्युलेट कर सकते हैं और कोई त्रुटि नहीं होगी।

1 वरनाम = ६
1 objSheet - "फ्रेड"

भिन्न चर का उपयोग करना असामान्य है और इसे अच्छा अभ्यास नहीं माना जाता है। हालांकि, अवसरों पर भिन्न चर उपयोगी होते हैं।

मॉड्यूल या वैश्विक स्तर पर वैरिएंट वैरिएबल घोषित करें

पिछले उदाहरण में, आपने एक प्रक्रिया के भीतर भिन्न चर घोषित किया था। एक प्रक्रिया के साथ घोषित चर का उपयोग केवल उस प्रक्रिया के भीतर ही किया जा सकता है।

इसके बजाय, आप मॉड्यूल या वैश्विक स्तर पर भिन्न चर घोषित कर सकते हैं।

मॉड्यूल स्तर

मॉड्यूल स्तर कोड मॉड्यूल के शीर्ष पर चर घोषित किए जाते हैं धुंधला बयान।

इन चरों का उपयोग उस कोड मॉड्यूल में किसी भी प्रक्रिया के साथ किया जा सकता है।

वैश्विक स्तर

वैश्विक स्तर कोड मॉड्यूल के शीर्ष पर चर भी घोषित किए जाते हैं। हालांकि, का उपयोग करने के बजाय धुंधला कथन, आप उपयोग करते हैं सह लोक यह इंगित करने के लिए कथन कि स्ट्रिंग वेरिएबल आपके पूरे VBA प्रोजेक्ट में उपयोग के लिए उपलब्ध है।

1 सार्वजनिक strName as variant

यदि आपने मॉड्यूल स्तर पर भिन्न चर घोषित किया है और किसी भिन्न मॉड्यूल में उपयोग किया है, तो एक त्रुटि उत्पन्न होगी।

यदि आपने भिन्न चर घोषित करने के लिए सार्वजनिक कीवर्ड का उपयोग किया था, तो त्रुटि नहीं होगी और प्रक्रिया पूरी तरह से चलेगी।

एक्सेल को पॉप्युलेट करने के लिए वैरिएंट का उपयोग करना

निम्नलिखित प्रक्रिया पर विचार करें:

12345678910111213141516171819 उप परीक्षण चर'उत्पाद का नाम रखने के लिए एक स्ट्रिंग घोषित करें'मंद strउत्पाद स्ट्रिंग के रूप में'उत्पाद मात्रा रखने के लिए एक पूर्णांक घोषित करें'मंद iQty पूर्णांक के रूप में'उत्पाद की कीमत, और कुल कीमत रखने के लिए डबल्स घोषित करें'मंद dblकीमत डबल के रूप मेंमंद dblकुल डबल के रूप में'चरों को आबाद करें'strProduct = "ऑल पर्पस आटा"आईक्यूटी = 3dblPrice = "$5.00"dblTotal = "$15.00"'एक्सेल शीट को पॉप्युलेट करें'रेंज ("A1") = strProductरेंज ("A2") = iQtyरेंज ("A3") = dblPriceरेंज ("A4") = dblTotalअंत उप

जब हम इस कोड को चलाते हैं, तो निम्न त्रुटि होती है।

डीबग पर क्लिक करें

आप वेरिएबल में डॉलर का चिह्न नहीं डाल सकते क्योंकि वेरिएबल को a . के रूप में घोषित किया गया है दोहरा, और इसलिए स्ट्रिंग मानों को संग्रहीत नहीं कर सकता।

प्रचार डीबीएल मूल्य तथा डीबीएलकुल वेरिएंट के रूप में जिसका अर्थ है कि आप डेटा प्रकार तक ही सीमित नहीं हैं।

1 Dim dblPrice as Variant
1 Dim dblकुल वैरिएंट के रूप में

कोड को फिर से चलाएँ और डेटा एक्सेल शीट में वैसा ही दिखाई देगा जैसा उसे होना चाहिए।

ध्यान दें कि A4 और A5 में दर्ज किया गया डेटा स्वचालित रूप से एक्सेल द्वारा संख्याओं में परिवर्तित हो जाता है।

एक गतिशील सरणी घोषित करना

जब आप एक गतिशील सरणी घोषित कर रहे हों तो भिन्न चर भी उपयोगी होते हैं क्योंकि वे रन-टाइम के दौरान सरणी के आकार को बदलने की अनुमति देते हैं।

के साथवेरिएंट ऐरे, आपको सरणी आकार को परिभाषित करने की आवश्यकता नहीं है। आकार स्वचालित रूप से समायोजित हो जाएगा।

123456789 उप संस्करणअरे ()मंद गिरफ्तारी सूची () प्रकार के रूप में'मूल्यों को परिभाषित करें'arrList= ऐरे(1, 2, 3, 4)'मूल्यों में बदलाव करेंगिरफ्तारी सूची = सरणी(1,2,3,4,5,6)'आउटपुट स्थिति 4'MsgBox arrVar(4)अंत उप

आप साइट के विकास में मदद मिलेगी, अपने दोस्तों के साथ साझा करने पेज

wave wave wave wave wave