एक्सेल VBA MOD ऑपरेटर
में VBA एमओडी गणित में आवेदन, जब एक नंबर अपने भाजक से विभाजित है के रूप में ही है और हम चाहते हैं कि विभाजन से कोई अनुस्मारक मिलने पर इस समारोह हमें विभाजन से कि शेष देने के लिए प्रयोग किया जाता है, यह VBA में एक समारोह के बजाय नहीं है की तुलना में यह एक ऑपरेटर है।
MOD कुछ भी नहीं है लेकिन MODULO एक गणितीय ऑपरेशन है। यह बिल्कुल विभाजन के समान है, लेकिन परिणाम थोड़ा अलग है जहां विभाजन विभाजित राशि लेता है, लेकिन MOD विभाजन के शेष भाग को लेता है। उदाहरण के लिए: यदि आप 21 को 2 से विभाजित करते हैं, तो विभाजन परिणाम 10.50 होता है, जबकि MOD विभाजन का शेष भाग है, अर्थात, (संख्या 2 केवल 20 को विभाजित कर सकती है, 21 नहीं, इसलिए शेष 1 है)।
सामान्य एक्सेल में, यह एक फ़ंक्शन है, लेकिन VBA में, यह फ़ंक्शन नहीं है। यह सिर्फ एक गणितीय ऑपरेटर है। इस लेख में, हम इस ऑपरेटर के बारे में विस्तार से देखेंगे।

वाक्य - विन्यास
बस आपको याद दिलाने के लिए, यह सिंटैक्स के लिए एक फ़ंक्शन नहीं है। हमारे पाठक की समझ के लिए, मुझे इसे शब्द में रखना चाहिए।
नंबर 1 MOD नंबर 2 (भाजक)
नंबर 1 और कुछ नहीं बल्कि वह संख्या है जिसे हम विभाजित करने का प्रयास कर रहे हैं।
नंबर 2 यह भाजक है, अर्थात, हम इस भाजक द्वारा नंबर 1 को विभाजित करने जा रहे हैं ।
नंबर 1 / नंबर 2 द्वारा दिए गए परिणाम को संशोधित करें ।
VBA में MOD का उपयोग कैसे करें?
उदाहरण 1
कोड लिखने के लिए नीचे दिए गए चरणों का पालन करें।
चरण 1: एक मैक्रो नाम बनाएँ।
कोड:
उप MOD_Example1 () उप सब
चरण 2: किसी एक चर को " पूर्णांक " के रूप में परिभाषित करें ।
कोड:
सब MOD_Example1 () मंद i बतौर इंटेगर एंड सब
चरण 3: अब गणना "i = 20 MOD 2" के रूप में करें।
जैसा कि मैंने शुरुआत में बताया था कि एमओडी एक ऑपरेटर है, एक फ़ंक्शन नहीं। इसलिए मैंने MOD शब्द का उपयोग किया है जैसे कि मैं प्लस (+) कैसे दर्ज करता हूं।
कोड:
सब MOD_Example1 () मंद i य पूर्णांक के रूप में = 21 आधुनिक 2 अंत उप
चरण 4: अब संदेश बॉक्स में "I" का मान निर्दिष्ट करें।
कोड:
सब MOD_Example1 () मंद i यथा पूर्णांक i = 21 Mod 2 MsgBox i End Sub
चरण 5: कोड संदेश बॉक्स में "I" का मान दिखाएगा

उदाहरण # 2
VBA में मॉड हमेशा एक पूर्णांक मान देता है, अर्थात, दशमलव के बिना यदि आप दशमलव में संख्या की आपूर्ति करते हैं। उदाहरण के लिए, नीचे दिए गए कोड को देखें।
कोड:
सब MOD_Example2 () मंद i यथा पूर्णांक i = 26.25 Mod 3 MsgBox i End Sub
विभाजक 3 24 को विभाजित कर सकता है, इसलिए यहां शेष 2.25 है, लेकिन MOD ऑपरेटर पूर्णांक मान लौटाता है, अर्थात 2, 2.25 नहीं।

अब मैं संख्या को 26.51 में संशोधित करूंगा और अंतर देखूंगा।
कोड:
सब MOD_Example2 () मंद i यथा पूर्णांक i = 26.51 Mod 3 MsgBox i End Sub
मैं इस कोड को चलाऊंगा और देखूंगा कि परिणाम क्या है।

वाह क्या बात है!!! हमें जवाब के रूप में शून्य मिला है। इसका कारण हमें शून्य मिला क्योंकि VBA ने हमारे बैंकरों की तरह संख्याओं को गोल किया, अर्थात, कोई भी दशमलव बिंदु जो 0.5 से अधिक है, अगले पूर्णांक मान तक गोल किया जाएगा। तो, इस मामले में, 26.51 27 तक गोल है।
चूंकि 3 27 को 9 से विभाजित कर सकता है, हमें कोई शेष मान नहीं मिलेगा, इसलिए i का मान शून्य के बराबर है।
अब मैं दशमलव अंकों में भी भाजक मान की आपूर्ति करूँगा।
कोड:
सब MOD_Example2 () डिम i अस इंटेगर i = 26.51 मॉड 3.51 MsgBox i End Sub
चरण 6: इस कोड को चलाएं और देखें कि परिणाम क्या है।

हमें उत्तर के रूप में 3 मिला क्योंकि 26.51 को 27 तक गोल किया जाएगा, और विभाजक मूल्य 3.51 को 4 तक गोल किया जाएगा।
इसलिए यदि आप 27 को 4 से विभाजित करते हैं तो शेष 3 है।
एक्सेल मोड फंक्शन बनाम VBA MOD ऑपरेटर
चरण 1: अब, एक्सेल और VBA MOD ऑपरेटर के बीच अंतर पर एक नज़र डालें। मेरा मान 54.24 है, और भाजक का मान 10 है।

चरण 2: अब, यदि मैं MOD फ़ंक्शन लागू करता हूं, तो मुझे 4.25 के रूप में परिणाम मिलेगा।

चरण 3: लेकिन यदि आप VBA के साथ एक ही ऑपरेशन करते हैं, तो हमें शेष के रूप में 4 मिलेंगे, 4.25 नहीं।
कोड:
सब MOD_Example2 () मंद i यथा पूर्णांक I = 54.25 Mod 10 MsgBox i End Sub
चरण 4: इस कोड को चलाएं और देखें कि परिणाम क्या है।

याद रखने वाली चीज़ें
- यह एक फ़ंक्शन नहीं है, लेकिन यह एक अंकगणितीय ऑपरेटर है।
- वर्कशीट फ़ंक्शन में MOD फ़ंक्शन के विपरीत, यह दशमलव मानों को राउंडअप और राउंड डाउन करता है।