एक्सेल - मैक्रो-हाइलाइट यदि अंतर> या <2

  • मुद्दा
  • उपाय
  • ध्यान दें

मुद्दा

मुझे एक लेखा एक्सेल मैक्रो लिखने में मदद करने की आवश्यकता है जिस पर मैं काम कर रहा हूं। ऐसा प्रतीत होता है कि सब कुछ ठीक चल रहा है, एक हिस्से को छोड़कर मुझे कुछ मदद चाहिए।

मेरे पास 2 कार्यपत्रक हैं, जिन्हें पहचान योग्य रूप से स्वरूपित किया गया है, हालांकि, कुछ जानकारी कार्यपत्रक 1 से कार्यपत्रक 2 में बदल जाती है। मैं कॉलम "J", "M", "P", "S" पर चेक करने के लिए मैक्रो सेट करना चाहता हूं प्रत्येक सेल के लिए "वी", और "वाई"। यहाँ एक उदाहरण है जिसकी मुझे आवश्यकता होगी:

-यदि (Worksheet1! M24-Worksheet2! M24) 20 से अधिक या -20 से कम है, सेल पृष्ठभूमि कार्यपत्रक 1 बदलें! M24 लैवेंडर

-मैं एक चेक के रूप में किए जाने वाले सूत्र की आवश्यकता है, और कार्यपत्रक में डेटा को अधिलेखित नहीं करना चाहिए

इसका मतलब यह है कि यदि वर्कशीट 1 में M24 200.00 है, और M24 वर्कशीट 2 275.00 है, तो वर्कशीट 1 में M24 अभी भी 200.00 के रूप में दिखाई देगा, लेकिन यह अब लैवेंडर पर प्रकाश डाला जाएगा।

किसी भी विचार मैं यह कैसे कर सकते हैं ?? मैं VBA में मैक्रोज़ का निर्माण कर रहा हूं, जिसके साथ मुझे बहुत कम अनुभव है।

उपाय

कॉलम J, M, N आदि की आपकी पसंद कि इसका col j + 3 M है और col M + 3 P है आदि यह ठीक है

आपका वास्तविक डेटा पंक्ति 2, पंक्ति 1 से कॉलम हेडिंग से शुरू होता है

कम से कम कॉलम J में डेटा का कोई गैप नहीं है

लेकिन आपने लिखा है कि यदि दो शीटों की कोशिकाओं के बीच अंतर> २० या २० से कम है तो इसे रंगीन होना चाहिए। इसका मतलब है कि केवल अगर यह 20 है तो यह रंगीन नहीं है। यह तर्क ठीक है। कृपया दोबारा जांच करें

इन धारणाओं पर मैक्रो नीचे दिया गया है। यह परीक्षण और वापस टिप्पणियाँ पोस्ट।

यदि कोई बग या त्रुटि है, तो त्रुटि स्पष्ट रूप से स्पष्ट होनी चाहिए। यदि मैक्रो उस पंक्ति को रोक देता है जहां वह रुकता है और त्रुटि संदेश।

दूसरा मैक्रो पूर्ववत रंग को हटाता है;) मैंने लाल रंग के लिए r 3 के रूप में रंग की संख्या का उपयोग किया है। यदि आप लैवेंडर पर जोर देते हैं तो आपको रंग की संख्या का पता लगाना होगा, क्योंकि मैं गलत समझ सकता हूं कि लैवेंडर से आपका क्या मतलब है। एक खाली सेल में

लैवेंडर में सेल को रंग दें। मान लीजिए कि सेल E13 है तो vb एडिटर को तत्काल विंडो पर जाएं और टाइप करें:

? रेंज ( "E13")। interior.colorindex

और इस लाइन के अंत में कर्सर रखें और एंटर कुंजी दबाएं और आपको रंग संख्या मिल जाएगी। उस मैक्रो में उपयोग करें।

दो मैक्रो हैं:

 सब टेस्ट () Dim col1 As Integer, col2 As Integer, col As Integer, rrow as Integer Dim lastrow as Integer col1 = Range ("J1")। कॉलम col2 = Range ("Y1")। कॉलम lastrow = Worksheets ("sheet1) ") .Range (" J2 ")। एंड (xlDown) .Row 'MsgBox lastrow Worksheets (" sheet1 ")। (1, कर्नल) .ग्रैड 'MsgBox rrow if Worksheets ("sheet1")। कोशिकाएं (rrow, col) - वर्कशीट ("sheet2")। कोशिकाएं (rrow, col)> 20 या वर्कशीट ("sheet2") कोशिकाएं (rrow, col) - कार्यपत्रक ("शीट 2")। कोशिकाएं (rrow, col) <20 फिर कार्यपत्रक ("शीट 1")। कोशिकाएं (rrow, col) .Interior.ColorIndex = "अगला अगला अगला अंत उप। 

 उप पूर्ववत् () कार्यपत्रक ("पत्रक 1")। कक्ष। Interior.ColorIndex = xlNone अंत उप 

ध्यान दें

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

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

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