VBA स्ट्रिंग टू इंटेगर - डेटा रूपांतरण के लिए CINT फ़ंक्शन का उपयोग करें

एक्सेल वीबीए स्ट्रिंग टू इंटेगर

स्ट्रिंग और इंटेगर सामान्य डेटा प्रकार हैं, लेकिन अक्सर हमारे डेटा विश्लेषण के हिस्से के रूप में, हम स्ट्रिंग डेटा प्रकार चर को पूर्णांक डेटा प्रकार में परिवर्तित करना चाह सकते हैं और यह VBA में "CINT" फ़ंक्शन का उपयोग करके संभव है।

CINT फ़ंक्शन का सिंटैक्स

"CINT" को डेटा प्रकार रूपांतरण फ़ंक्शन के रूप में वर्गीकृत किया गया है। यह फ़ंक्शन प्रदान की गई अभिव्यक्ति को एक इंटीजर डेटा प्रकार में परिवर्तित करता है। जब मैं कहता हूं "अभिव्यक्ति", यह एक संख्यात्मक मान होना चाहिए जो कि VBA में पूर्णांक डेटा प्रकार की श्रेणी में है, अर्थात -32768 से 32767 के बीच।

अब, VBA में CINT फ़ंक्शन के सिंटैक्स को देखें।

  • एक्सप्रेशन वह मान या वैरिएबल है जिसमें इंटर्गर डेटा टाइप में परिवर्तित किया जाने वाला मान होता है।
नोट 1: जब आप एक्सप्रेशन वैल्यू पास करते हैं तो -32768 से 32767 के बीच होना चाहिए। अन्यथा, यह "ओवर फ्लो एरर" को ले जाएगा, यानी डेटा टाइप की सीमा से अधिक वैल्यू असाइन करना। नोट 2: अभिव्यक्ति एक संख्यात्मक मान होना चाहिए। यदि अभिव्यक्ति स्ट्रिंग मान या पाठ मान है, तो यह "रन टाइम त्रुटि 13: प्रकार बेमेल" का कारण होगा

इस लेख में, हम आपको "CINT" फ़ंक्शन का उपयोग करके स्ट्रिंग से पूर्णांक तक पूर्णांक डेटा प्रकार रूपांतरण के बारे में दिखाएंगे।

VBA में CINT फ़ंक्शन के उदाहरण

उदाहरण 1

आइए एक अंश संख्या को पूर्णांक डेटा प्रकार में परिवर्तित करने का पहला उदाहरण दें।

कोड:

उप CINT_Example1 () मंद इंटेगरनंबर स्ट्रिंग के रूप में मंद इंटेगर.उत्पाद के रूप में पूर्णांक IntegerNumber = 2564.589 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult अंत उप
  • चर "IntegerNumber" के लिए उपरोक्त कोड में, मैंने "2564.589" के रूप में मान असाइन किया है।
  • अगली पंक्ति में, मैंने एक CINT फ़ंक्शन लागू किया है। तो यह प्रदान किए गए मान को निकटतम पूर्णांक संख्या में बदल देगा।

इसलिए, हमें परिणाम मिला - 2565, और आपूर्ति संख्या 2564.589 है। जब दशमलव मान 0.5 से अधिक CINT फ़ंक्शन होता है, तो यह संख्या अगले पूर्णांक संख्या तक होती है। जब दशमलव मान 0.5 से कम या बराबर होता है तो समान इंटर्गर संख्या में गोल कार्य होते हैं।

एक उदाहरण के लिए नीचे दिए गए कोड को देखें जहां संख्या 0.5 से कम है

कोड:

सब CINT_Example1 () Dim IntegerNumber स्ट्रिंग के रूप में Dim IntegerResult पूर्णांक के रूप में IntegerNumber = 2564 - 0.5 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult अंत उप

यह परिणाम 2564 के रूप में देना चाहिए, 2565 के रूप में नहीं।

उदाहरण # 2

अब मैं उस नंबर को आज़माऊंगा और असाइन करूंगा जो कि इंटगर डेटा टाइप की सीमा से अधिक है।

कोड:

सब CINT_Example2 () Dim IntegerNumber स्ट्रिंग के रूप में मंद IntegerResult पूर्णांक के रूप में IntegerNumber = 51456.785 IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult अंत उप

मैंने नंबर को "IntegerNumber = 51456.785" के रूप में सौंपा है, जो कि पूर्णांक डेटा प्रकार की सीमा से अधिक है। अब अगर मैं कोड को चलाने की कोशिश करता हूं, तो यह VBA में एक अतिप्रवाह त्रुटि फेंक देगा।

जब भी प्रदान की गई संख्या पूर्णांक डेटा प्रकार से अधिक होती है, तो सरल संदेश बॉक्स को यह कहते हुए दिखाती है कि "संख्या पूर्णांक डेटा प्रकार की सीमा से अधिक है"।

कोड:

उप CINT_Example2 () Dim IntegerNumber स्ट्रिंग के रूप में Dim IntegerResult, Integer IntegerNumber = 51456.785 त्रुटि GoTo संदेश के रूप में: IntegerResult = CInt (IntegerNumber) संदेश: यदि Err.Number = 6 तब MsgBox IntegerNumber & "डेटा की सीमा से अधिक है। अंत उप

यह नीचे दिए गए संदेश की तरह दिखाएगा जब भी प्रदान की गई संख्या पूर्णांक डेटा प्रकार की सीमा से बाहर हो।

उदाहरण # 3

अब मैं कोशिश करूंगा और उस मूल्य को निर्दिष्ट करूंगा जो संख्यात्मक नहीं है।

उप CINT_Example2 () मंद इंटेगरनंबर स्ट्रिंग के रूप में मंद इंटेगर.उत्पाद के रूप में पूर्णांक IntegerNumber = "हैलो" IntegerResult = CInt (IntegerNumber) MsgBox IntegerResult अंत उप

मैंने "हैलो" के रूप में मान असाइन किया है जो संख्यात्मक नहीं है। यह "टाइप मिसमैच एरर" का कारण बनता है।

इस तरह से त्रुटि दिखाने के बजाय, हम उपयोगकर्ता के सामने एक सरल सूचना संदेश बॉक्स रखते हैं। नीचे दिया गया कोड संदेश बॉक्स को यह कहते हुए डाल देगा कि "प्रदान अभिव्यक्ति मूल्य गैर-संख्यात्मक है, इसलिए इसे परिवर्तित नहीं किया जा सकता है"।

कोड:

सब CINT_Example2 () Dim IntegerNumber स्ट्रिंग के रूप में Dim IntegerResult, Integer IntegerNumber = "Hello" ऑन एरर GoTo मैसेज: IntegerResult = CInt (IntegerNumber) मैसेज: Err.Number = 13 उसके बाद MsgBox IntegerNumber & ": प्रोवाइड एक्सप्रेशन वैल्यू वैल्यू नॉन-न्यूमेरिक है। , तो परिवर्तित नहीं किया जा सकता "अंत उप

यह नीचे संदेश बॉक्स दिखाएगा।

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

  • CINT किसी अन्य डेटा प्रकार से पूर्णांक डेटा प्रकार के लिए मान परिवर्तित करता है।
  • पूर्णांक -32768 से 32767 तक मानों को रख सकते हैं, इन नंबरों के ऊपर कुछ भी अतिप्रवाह त्रुटि का कारण होगा।
  • केवल स्ट्रिंग डेटा प्रकार में संख्यात्मक डेटा होते हैं जो पूर्णांक डेटा प्रकार में परिवर्तित हो जाएंगे।

अनुशंसित लेख

यह VBA स्ट्रिंग टू इंटेगर का मार्गदर्शक रहा है। यहां हम एक्सेल VBA में स्ट्रिंग के पूर्णांक के उदाहरणों पर CINT फ़ंक्शन के साथ-साथ व्यावहारिक उदाहरण और डाउनलोड करने योग्य एक्सेल टेम्पलेट का उपयोग करके चर्चा करते हैं। नीचे VBA से संबंधित कुछ उपयोगी लेख दिए गए हैं -

  • VBA स्प्लिट स्ट्रिंग ऐरे में
  • वीबीए स्ट्रिंग टू डेट
  • VBA स्ट्रिंग तुलना
  • VBA स्ट्रिंग को बदलें

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