वीबीए: सेल मान बदलने पर मैक्रो कैसे चलाएं


जब कोई विशिष्ट सेल मान बदलता है तो मैक्रो चलाने के लिए आप VBA में निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = " $A$1 " Then
        Call MultiplyMacro
    End If
End Sub

जब सेल A1 का मान बदलता है तो यह विशेष उदाहरण मल्टीप्लाईमैक्रो नामक मैक्रो को चलाने का कारण बनेगा।

निम्नलिखित उदाहरण दिखाता है कि व्यवहार में इस वाक्यविन्यास का उपयोग कैसे करें।

उदाहरण: जब VBA का उपयोग करके सेल मान बदलता है तो मैक्रो चलाएँ

मान लीजिए कि हम मल्टीप्लाईमैक्रो नामक निम्नलिखित मैक्रो बनाते हैं जो सेल A1 और B1 में मानों को गुणा करता है और सेल C1 में परिणाम प्रदर्शित करता है:

 SubMultiplyMacro ()
    Range(" C1 ") = Range(" A1 ") * Range(" B1 ")
End Sub

उदाहरण के लिए, मान लीजिए कि हमारे पास सेल A1 में मान 12 और सेल B1 में मान 3 है।

यदि हम इस मैक्रो को चलाते हैं, तो हमें निम्नलिखित परिणाम प्राप्त होंगे:

अब मान लीजिए कि जब भी सेल A1 का मान बदलता है तो हम इस मैक्रो को स्वचालित रूप से चलाना चाहते हैं।

ऐसा करने के लिए, हम शीट के नाम पर राइट-क्लिक कर सकते हैं और फिर शो कोड पर क्लिक कर सकते हैं:

दिखाई देने वाली कोड संपादन विंडो में, आप निम्नलिखित कोड पेस्ट कर सकते हैं:

 Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = " $A$1 " Then
        Call MultiplyMacro
    End If
End Sub

निम्नलिखित स्क्रीनशॉट दिखाता है कि इसे व्यवहार में कैसे करें:

फिर हम वीबी संपादक को बंद कर सकते हैं।

अब, जब भी हम सेल A1 में मान बदलते हैं, तो MultiplyMacro नामक मैक्रो स्वचालित रूप से चलेगा और सेल A1 में नए मान का उपयोग करके गुणन करेगा।

उदाहरण के लिए, मान लीजिए कि हम सेल A1 का मान 10 में बदलते हैं। जैसे ही हम मान बदलते हैं और Enter दबाते हैं, मैक्रो चलेगा:

मैक्रो 10 को 3 से गुणा करता है और परिणाम को सेल C2 में प्रदर्शित करता है।

ध्यान दें : यदि आप किसी विशिष्ट श्रेणी में सेल में परिवर्तन होने पर मैक्रो चलाना चाहते हैं, तो आप निम्नलिखित सिंटैक्स का उपयोग कर सकते हैं:

 Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range(" A1:B1 ")) Is Nothing Then
        Call MultiplyMacro
    End If
End Sub

यदि श्रेणी A1:B1 में कोई भी सेल बदलता है तो इससे MultiplyMacro नामक मैक्रो चलने लगेगा।

अतिरिक्त संसाधन

निम्नलिखित ट्यूटोरियल बताते हैं कि वीबीए में अन्य सामान्य कार्य कैसे करें:

वीबीए: किसी कार्यपुस्तिका में शीटों की संख्या कैसे गिनें
वीबीए: किसी अन्य कार्यपुस्तिका से डेटा कैसे निकालें
वीबीए: नई शीट कैसे जोड़ें

एक टिप्पणी जोड़ने

आपका ईमेल पता प्रकाशित नहीं किया जाएगा. आवश्यक फ़ील्ड चिह्नित हैं *