एक्सेल VBA का उपयोग कर एक सेल को फिर से बनाना

मुद्दा

मैं रिपोर्ट बनाने के लिए एक्सेल VBA में एक कोड लिख रहा हूं। मैं VBA.Here के अपने कोड के लिए पूरी तरह से नया हूं

 Private Sub CommandButton1_Click () Dim a1 As Integer Dim d1 As Integer Dim r1 As Integer a1 = Sheet1.Cells (2, 3) d1 = a1 8 r1 = a1 Mod 8 d1> = 5 फिर Sheet1.Cells.Range ("A20) : E20 ")। आंतरिक। कलर = vbBlack एले के लिए cnt = 1 करने के लिए d1 Sheet1.Cells (20, cnt) .Interior.Color = vbBlack अगला cnt यदि r1 0 / Sheet1.Cells (20, cnt) .Interior.Color =। vbBlack Sheet1.Cells (20, cnt) .Font.Color = vbWhite Sheet1.Cells (20, cnt) = (8 - r1) यदि अंत में उप 

सेल (2, 3) में मान के आधार पर कमांड बटन पर क्लिक करने के बाद मूल विचार रंग कोशिकाओं का है। घंटियाँ 8. के ​​गुणकों के आधार पर रंगीन हो जाती हैं। मुझे जो समस्या आ रही है वह यह है कि कोशिकाएँ स्थायी रूप से रंग बरकरार रखती हैं।

उदाहरण के लिए सेल में मान (2, 3) के आधार पर यदि 5 सेल रंगीन हो जाते हैं, तो वे स्थायी रूप से वहां बने रहते हैं। जब मैं कोशिकाओं में मान (2, 3) को बदल देता हूं और क्लिक करता है तो सेल का निरस्तीकरण बटन नहीं लगता है। किसी ने मुझे इस बारे में मार्गदर्शन कर सकते हैं ??

उपाय

कोड की शुरुआत में यह प्रयास करें। इससे रंगीन हो चुकी वर्कशीट की सभी कोशिकाएँ साफ़ हो जाएँगी।

 कक्ष। चयन करें। Interior.ColorIndex = xlNone Cells (2, 3)। निजी निजी उप कमांडबटन 2_Click () डिम A1 के रूप में इंटीजर मंद d1 के रूप में पूर्णांक 1 को पूर्णांक के रूप में देखें। चयन करें ।Interior.ColorIndex = xlNone Cells (2)। ) .Select a1 = Sheet1.Cells (2, 3) d1 = a1 8 r1 = a1 Mod 8 If d1> = 5 फिर Sheet1.Cells.Range ("A20: E20")। आंतरिक .Color = vbBlack Elnt = cnt के लिए। 1 To d1 Sheet1.Cells (20, cnt) .Interior.Color = vbBlack अगला cnt यदि r1 0 तो Sheet1.Cells (20, cnt) .Interior.Color = vbBackack Sheet1.Cells (20, cnt) .Font.Color =। vbWhite Sheet1.Cells (20, cnt) = (8 - r1) अंत यदि अंत उप है 

ध्यान दें

मंच पर इस टिप के लिए हेल्पर का धन्यवाद।

पिछला लेख अगला लेख

शीर्ष युक्तियाँ