TOP

VBA-पाठ 11.2. वर्कशीट इवेंट (WorkSheet इवेंट)

पिछले पाठ में हमने पूरी किताब से जुड़ी घटनाओं पर विचार किया था. अब हम एक शीट से संबंधित घटनाओं पर ध्यान केंद्रित करेंगे।


कार्यपत्रक_चयनपरिवर्तन (कार्यपुस्तिका खोलना)

किसी व्यक्तिगत वर्कशीट के लिए ईवेंट-आधारित निर्देशों को निष्पादित करने के लिए, संपादक में वर्कशीट का चयन करें, फिर WorkSheet:

सिलेक्शनचेंज इवेंट डिफ़ॉल्ट रूप से जोड़ा जाएगा। जब भी श्रेणी की सामग्री बदलती है तो यह ईवेंट सक्रिय हो जाता है:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

उदाहरण के लिए, निम्न कोड एक या अधिक चयनित कक्षों में भरण रंग जोड़ता है और जब वह सीमा बदलती है तो स्वचालित रूप से पहले चयनित सीमा से भरण रंग हटा देता है:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     Static previous_selection As String

     If previous_selection <> "" Then
         'पिछले चयन से पृष्ठभूमि का रंग हटाना:
         Range(previous_selection).Interior.ColorIndex = xlColorIndexNone
     End If

     'वर्तमान चयन में पृष्ठभूमि रंग जोड़ना:
     Target.Interior.Color = RGB(181, 244, 0)

     'वर्तमान चयन का पता सहेजा जा रहा है:
     previous_selection = Target.Address
End Sub

वर्कशीट_एक्टिवेट (शीट एक्टिवेशन इवेंट)

यह घटना तब होती है जब कोई वर्कशीट सक्रिय होती है:

Private Sub Worksheet_Activate()

End Sub

वर्कशीट_डीएक्टिवेट (शीट डीएक्टिवेशन इवेंट)

यह घटना तब होती है जब कोई अन्य वर्कशीट सक्रिय होती है:

Private Sub Worksheet_Deactivate()

End Sub

वर्कशीट_BeforeDoubleClick (सेल पर डबल-क्लिक ईवेंट)

यह घटना तब होती है जब वर्कशीट सेल पर डबल-क्लिक किया जाता है:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

End Sub

वर्कशीट_राइटक्लिक से पहले (राइट क्लिक से पहले की घटना)

यह घटना वर्कशीट पर दायाँ माउस क्लिक करने से पहले घटित होती है:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

End Sub

वर्कशीट_गणना (वर्कशीट गणना घटना)

यह घटना तब घटित होती है जब किसी वर्कशीट में डेटा की गणना या पुनर्गणना की जाती है:

Private Sub Worksheet_Calculate()

End Sub

वर्कशीट_चेंज (सेल सामग्री परिवर्तन इवेंट)

यह घटना तब घटित होती है जब दी गई शीट पर कोशिकाओं की सामग्री बदलती है:

Private Sub Worksheet_Change(ByVal Target As Range)

End Sub

वर्कशीट_फॉलोहाइपरलिंक (लिंक क्लिक इवेंट)

यह घटना तब होती है जब एक लिंक (हाइपरटेक्स्ट) पर क्लिक किया जाता है:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)

End Sub

सभी ईवेंट को अस्थायी रूप से निष्क्रिय करें

बिना किसी इवेंट के कोड को निष्पादित करने के लिए, इसे कोड की दो पंक्तियों के बीच इस तरह डालें:

 Application.EnableEvents = False '=> घटनाओं को अक्षम करें
 'कुछ निर्देश...
 Application.EnableEvents = True '=> घटनाओं को पुनः सक्षम करें