/ / एक्सेल वीबीए में अनुसूची पर कार्य

एक्सेल वीबीए में अनुसूची पर कार्य

नीचे हम एक कार्यक्रम देखेंगे एक्सेल VBA जो पृष्ठभूमि का रंग सेट करता है कार्यसूची जो शेड्यूल पर हैं हरे रंग के लिए, और कार्यों के पृष्ठभूमि रंग सेट जो लाल रंग के लिए लाल रंग के पीछे हैं।

परिस्थिति:

शीट 1 पर हमारे पास तीन कार्य हैं (एक्स, वाई, जेड)। एक "1" इंगित करता है कि एक कार्य पूरा हो गया है। एक कार्य शेड्यूल पर है यदि प्रत्येक कॉलम में "1" मौजूद है और आज की तारीख भी शामिल है। आज यह 6-जून है। कार्य एक्स और वाई शेड्यूल पर हैं। टास्क जेड अनुसूची के पीछे है (सेल ई 8 में "1" नहीं)।

एक्सेल वीबीए में अनुसूची पर कार्य

वर्कशीट चेंज इवेंट बनाएं। वर्कशीट चेंज इवेंट में जोड़ा गया कोड एक्सेल वीबीए द्वारा निष्पादित किया जाएगा जब आप वर्कशीट पर सेल बदलते हैं।

1. विजुअल बेसिक एडिटर खोलें।

2. प्रोजेक्ट एक्सप्लोरर में शीट 1 (शीट 1) पर डबल क्लिक करें।

3. बाएं ड्रॉप-डाउन सूची से वर्कशीट चुनें। दाएं ड्रॉप-डाउन सूची से बदलें चुनें।

एक्सेल वीबीए में वर्कशीट चेंज इवेंट

वर्कशीट चेंज इवेंट में निम्न कोड लाइन जोड़ें:

4. प्रकार पूर्णांक के दो चर घोषित करें।

Dim i As Integer, j As Integer

5. लूप के दौरान एक डू जोड़ें।

Do While Cells(6 + i, 1).Value <> ""


    i = i + 1
Loop

स्पष्टीकरण: i = 0 के लिए, एक्सेल वीबीए I = 1, कार्य वाई इत्यादि के लिए कार्य एक्स की जांच करता है। एक्सेल वीबीए कोशिकाओं (6 + i, 1) के दौरान लूप को छोड़ देता है। है खाली (जांच करने के लिए कोई और कार्य नहीं)।

Do जबकि लूप में निम्न कोड लाइनें (6, 7 और 8 पर) जोड़ें।

6. वैरिएबल जे को वैल्यू 0 के साथ शुरू करें।

j = 0

7. एक कार्य के पृष्ठभूमि रंग को हरा करने के लिए सेट करें कि यह कार्य शेड्यूल पर है (यह निश्चित रूप से जरूरी नहीं है)।

Cells(6 + i, 1).Interior.ColorIndex = 4

8. लूप के अलावा एक और करो।

Do While Cells(4, 2 + j).Value <= Date
    If Cells(6 + i, 2 + j).Value = 0 Then Cells(6 + i, 1).Interior.ColorIndex = 3
    j = j + 1
Loop

नोट: डेट फ़ंक्शन आज की तारीख लौटाता है।

स्पष्टीकरण: I = 0, j = 0 के लिए, एक्सेल वीबीए सेल बी 6 की जांच करता है। I = 0, j = 1 के लिए, एक्सेल वीबीए सेल सी 6, आदि की जांच करता है। एक कार्य शेड्यूल पर है यदि प्रत्येक कॉलम में "1" मौजूद है और आज की तारीख भी शामिल है। यदि एक्सेल वीबीए को "0" मिल जाता है, तो यह कार्य के पृष्ठभूमि रंग को लाल रंग में सेट करता है।

9. कार्यक्रम का परीक्षण करें। उदाहरण के लिए, इंगित करें कि 6-जून पर कार्य ज़ेड पूरा हो चुका है। नतीजतन, कार्य जेड स्वचालित रूप से हरा हो जाएगा।

अनुसूची परिणाम पर कार्य

यह भी पढ़ें: