एक्सेल वीबीए के साथ सशर्त स्वरूपण का उपयोग करना

एक्सेल सशर्त स्वरूपण

एक्सेल सशर्त स्वरूपण आपको नियमों को परिभाषित करने की अनुमति देता है जो सेल स्वरूपण निर्धारित करते हैं।

उदाहरण के लिए, आप एक नियम बना सकते हैं जो कुछ मानदंडों को पूरा करने वाले सेल को हाइलाइट करता है। उदाहरणों में शामिल:

  • एक निश्चित सीमा के भीतर आने वाली संख्याएँ (उदा. ० से कम)।
  • एक सूची में शीर्ष 10 आइटम।
  • "हीट मैप" बनाना।
  • वस्तुतः किसी भी सशर्त स्वरूपण के लिए "सूत्र-आधारित" नियम।

एक्सेल में, सशर्त स्वरूपण रिबन में होम > शैलियाँ (ALT > H > L) के अंतर्गत पाया जा सकता है।

अपना नियम बनाने के लिए, 'नया नियम' पर क्लिक करें और एक नई विंडो दिखाई देगी:

वीबीए में सशर्त स्वरूपण

इन सभी सशर्त स्वरूपण सुविधाओं को VBA का उपयोग करके एक्सेस किया जा सकता है।

ध्यान दें कि जब आप वीबीए कोड के भीतर से सशर्त स्वरूपण सेट करते हैं, तो आपके नए पैरामीटर एक्सेल फ्रंट-एंड सशर्त स्वरूपण विंडो में दिखाई देंगे और उपयोगकर्ता के लिए दृश्यमान होंगे। जब तक आपने वर्कशीट को लॉक नहीं किया है, तब तक उपयोगकर्ता इन्हें संपादित या हटा सकेगा।

सशर्त स्वरूपण नियम भी सहेजे जाते हैं जब कार्यपत्रक सहेजा जाता है

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

VBA में सशर्त स्वरूपण के व्यावहारिक उपयोग

आपके पास CSV (अल्पविराम से अलग किए गए मान) फ़ाइल, या डेटाबेस तालिका या क्वेरी से आपकी कार्यपत्रक में आयात किए गए कच्चे डेटा का एक बड़ा हिस्सा हो सकता है। यह एक समयावधि से दूसरी अवधि में आयातित संख्याओं को बदलते हुए, एक डैशबोर्ड या रिपोर्ट में प्रवाहित हो सकता है।

जहां कोई संख्या बदलती है और स्वीकार्य सीमा से बाहर है, आप इसे हाइलाइट करना चाह सकते हैं उदा। सेल की पृष्ठभूमि का रंग लाल रंग में, और आप यह सेटिंग सशर्त स्वरूपण कर सकते हैं। इस तरह, उपयोगकर्ता तुरंत इस नंबर पर आ जाएगा, और फिर जांच कर सकता है कि ऐसा क्यों हो रहा है।

सशर्त स्वरूपण को चालू या बंद करने के लिए आप VBA का उपयोग कर सकते हैं। आप कई कक्षों पर नियमों को साफ़ करने के लिए VBA का उपयोग कर सकते हैं, या उन्हें फिर से चालू कर सकते हैं। ऐसी स्थिति हो सकती है जहां असामान्य संख्या के लिए पूरी तरह से अच्छा कारण हो, लेकिन जब उपयोगकर्ता डैशबोर्ड या रिपोर्ट को उच्च स्तर के प्रबंधन को प्रस्तुत करता है, तो वे 'अलार्म घंटी' को हटाने में सक्षम होना चाहते हैं।

इसके अलावा, कच्चे आयातित डेटा पर, आप यह उजागर करना चाह सकते हैं कि संख्याएँ हास्यास्पद रूप से बड़ी हैं या हास्यास्पद रूप से छोटी हैं। आयातित डेटा श्रेणी आमतौर पर प्रत्येक अवधि के लिए एक अलग आकार होती है, इसलिए आप डेटा की नई श्रेणी के आकार का मूल्यांकन करने के लिए VBA का उपयोग कर सकते हैं और केवल उस श्रेणी के लिए सशर्त स्वरूपण सम्मिलित कर सकते हैं।

आपके पास ऐसी स्थिति भी हो सकती है जहां प्रत्येक के खिलाफ संख्यात्मक मानों वाले नामों की एक क्रमबद्ध सूची हो उदा। कर्मचारी वेतन, परीक्षा अंक। सशर्त स्वरूपण के साथ, आप उच्चतम से निम्नतम तक जाने के लिए स्नातक किए गए रंगों का उपयोग कर सकते हैं, जो प्रस्तुति उद्देश्यों के लिए बहुत प्रभावशाली दिखता है।

हालांकि, नामों की सूची हमेशा आकार में स्थिर नहीं होगी, और आप श्रेणी के आकार में परिवर्तन के अनुसार स्नातक किए गए रंगों के पैमाने को ताज़ा करने के लिए VBA कोड का उपयोग कर सकते हैं।

एक सीमा पर एक सशर्त प्रारूप बनाने का एक सरल उदाहरण

यह उदाहरण किसी कार्यपत्रक पर कक्षों की श्रेणी (A1:A10) के लिए सशर्त स्वरूपण सेट करता है। यदि श्रेणी में संख्या 100 और 150 के बीच है तो सेल पृष्ठभूमि का रंग लाल होगा, अन्यथा इसका कोई रंग नहीं होगा।

1234567891011121314 उप सशर्त स्वरूपण उदाहरण ()'डिफाइन रेंज'रेंज के रूप में मंद MyRangeMyRange सेट करें = रेंज ("A1: A10")'सीमा से मौजूदा सशर्त स्वरूपण हटाएं'MyRange.FormatConditions.Delete'सशर्त स्वरूपण लागू करें'MyRange.FormatConditions.Add Type:=xlCellValue, ऑपरेटर:=xlबीच, _सूत्र1:="=100", सूत्र2:="=150"MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)अंत उप

ध्यान दें कि पहले हम रेंज को परिभाषित करते हैं मायरेंज सशर्त स्वरूपण लागू करने के लिए।

इसके बाद हम श्रेणी के लिए किसी भी मौजूदा सशर्त स्वरूपण को हटा देते हैं। हर बार कोड चलाने पर उसी नियम को जोड़े जाने से रोकने के लिए यह एक अच्छा विचार है (बेशक यह सभी परिस्थितियों में उपयुक्त नहीं होगा)।

रंग सांख्यिक मानों द्वारा दिए गए हैं। इसके लिए आरजीबी (लाल, हरा, नीला) नोटेशन का उपयोग करना एक अच्छा विचार है। आप इसके लिए मानक रंग स्थिरांक का उपयोग कर सकते हैं उदा। vbRed, vbBlue, लेकिन आप आठ रंग विकल्पों तक सीमित हैं।

16.7M से अधिक रंग उपलब्ध हैं, और RGB का उपयोग करके आप उन सभी तक पहुँच सकते हैं। यह याद रखने की कोशिश करने से कहीं ज्यादा आसान है कि कौन सा नंबर किस रंग के साथ जाता है। तीन आरजीबी रंग संख्या में से प्रत्येक 0 से 255 तक है।

ध्यान दें कि 'xlBetween' पैरामीटर समावेशी है इसलिए 100 या 150 के सेल मान शर्त को पूरा करेंगे।

बहु-सशर्त स्वरूपण

हो सकता है कि आप अपनी डेटा श्रेणी में कई सशर्त नियम सेट करना चाहें, ताकि किसी श्रेणी के सभी मान अलग-अलग स्थितियों से आच्छादित हों:

12345678910111213141516171819 उप एकाधिक सशर्त फ़ॉर्मेटिंग उदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'पहला नियम जोड़ेंMyRange.FormatConditions.Add Type:=xlCellValue, ऑपरेटर:=xlबीच, _सूत्र1:="=100", सूत्र2:="=150"MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)'दूसरा नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _सूत्र1:="=100"MyRange.FormatConditions(2).Interior.Color = vbBlue'तीसरा नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _सूत्र1:="=150"MyRange.FormatConditions(3).Interior.Color = vbYellowअंत उप

यह उदाहरण पहले नियम को पहले की तरह सेट करता है, यदि सेल मान 100 और 150 के बीच है, तो लाल रंग के सेल रंग के साथ।

फिर दो और नियम जोड़े जाते हैं। यदि सेल का मान 100 से कम है, तो सेल का रंग नीला है, और यदि यह 150 से अधिक है, तो सेल का रंग पीला है।

इस उदाहरण में, आपको यह सुनिश्चित करने की आवश्यकता है कि संख्याओं की सभी संभावनाओं को शामिल किया गया है, और यह कि नियम ओवरलैप नहीं होते हैं।

यदि रिक्त कक्ष इस श्रेणी में हैं, तो वे नीले रंग के रूप में दिखाई देंगे, क्योंकि एक्सेल अभी भी उन्हें 100 से कम मान के रूप में लेता है।

इसके आस-पास का तरीका एक और शर्त को अभिव्यक्ति के रूप में जोड़ना है। इसे कोड के भीतर पहली शर्त नियम के रूप में जोड़ा जाना चाहिए। निष्पादन के क्रम को ठीक करने के लिए जहां कई नियम हैं, वहां यह बहुत महत्वपूर्ण है अन्यथा परिणाम अप्रत्याशित हो सकते हैं।

1234567891011121314151617181920212223 उप एकाधिक सशर्त फ़ॉर्मेटिंग उदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'पहला नियम जोड़ेंMyRange.FormatConditions.Add Type:=xlExpression, Formula1:= _"= एलईएन (ट्रिम (ए 1)) = 0"MyRange.FormatConditions(1).Interior.Pattern = xlNone'दूसरा नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlCellValue, ऑपरेटर:=xlबीच, _सूत्र1:="=100", सूत्र2:="=150"MyRange.FormatConditions(2).Interior.Color = RGB(255, 0, 0)'तीसरा नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlCellValue, Operator:=xlLess, _सूत्र1:="=100"MyRange.FormatConditions(3).Interior.Color = vbBlue'चौथा नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, _फॉर्मूला1:="=150"MyRange.FormatConditions(4).Interior.Color = RGB(0, 255, 0)अंत उप

यह xlExpression के प्रकार का उपयोग करता है, और फिर यह निर्धारित करने के लिए एक मानक एक्सेल फॉर्मूला का उपयोग करता है कि एक संख्यात्मक मान के बजाय एक सेल खाली है या नहीं।

FormatConditions ऑब्जेक्ट रेंज ऑब्जेक्ट का हिस्सा है। यह उसी तरह से कार्य करता है जैसे कि 1 से शुरू होने वाले सूचकांक के साथ संग्रह। आप इस ऑब्जेक्ट के माध्यम से For… Next या For… प्रत्येक लूप का उपयोग करके पुनरावृति कर सकते हैं।

एक नियम हटाना

कभी-कभी, यदि डेटा आवश्यकताओं के अनुरूप नहीं है, तो आपको कई नियमों के समूह में एक व्यक्तिगत नियम को हटाना पड़ सकता है।

12345678910111213 उप DeleteConditionalFormattingExample ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'पहला नियम जोड़ेंMyRange.FormatConditions.Add Type:=xlCellValue, ऑपरेटर:=xlबीच, _सूत्र1:="=100", सूत्र2:="=150"MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)'नियम हटाएं'MyRange.FormatConditions(1).Deleteअंत उप

यह कोड श्रेणी A1:A10 के लिए एक नया नियम बनाता है और फिर उसे हटा देता है। आपको हटाने के लिए सही इंडेक्स नंबर का उपयोग करना चाहिए, इसलिए एक्सेल फ्रंट-एंड पर 'मैनेज रूल्स' पर चेक करें (यह निष्पादन के क्रम में नियम दिखाएगा) यह सुनिश्चित करने के लिए कि आपको सही इंडेक्स नंबर मिलता है। ध्यान दें कि यदि आप VBA में सशर्त स्वरूपण नियम हटाते हैं, तो एक्सेल में कोई पूर्ववत सुविधा नहीं है, इसके विपरीत यदि आप इसे एक्सेल फ्रंट-एंड के माध्यम से करते हैं।

नियम बदलना

क्योंकि नियम एक निर्दिष्ट सीमा के आधार पर वस्तुओं का एक संग्रह है, आप आसानी से VBA का उपयोग करके विशेष नियमों में परिवर्तन कर सकते हैं। नियम जोड़ने के बाद वास्तविक गुण केवल पढ़ने के लिए हैं, लेकिन आप उन्हें बदलने के लिए संशोधित विधि का उपयोग कर सकते हैं। रंग जैसे गुण पढ़े / लिखे जाते हैं।

123456789101112131415 उप परिवर्तन सशर्त स्वरूपण उदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'पहला नियम जोड़ेंMyRange.FormatConditions.Add Type:=xlCellValue, ऑपरेटर:=xlबीच, _सूत्र1:="=100", सूत्र2:="=150"MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)'नियम बदलें'MyRange.FormatConditions(1).xlCellValue संशोधित करें, xlLess, "10"'नियम रंग बदलें'MyRange.FormatConditions(1).Interior.Color = vbGreenअंत उप

यह कोड एक श्रेणी वस्तु (A1:A10) बनाता है और 100 और 150 के बीच की संख्याओं के लिए एक नियम जोड़ता है। यदि स्थिति सत्य है तो सेल का रंग लाल में बदल जाता है।

कोड तब नियम को 10 से कम संख्या में बदल देता है। यदि स्थिति सत्य है तो सेल का रंग अब हरे रंग में बदल जाता है।

स्नातक रंग योजना का उपयोग करना

एक्सेल सशर्त स्वरूपण में आरोही या अवरोही क्रम में चलने वाली संख्याओं की श्रेणी पर स्नातक किए गए रंगों का उपयोग करने का एक साधन है।

यह बहुत उपयोगी है जहां आपके पास भौगोलिक क्षेत्र, शहर के तापमान, या शहरों के बीच की दूरी के आधार पर बिक्री के आंकड़े जैसे डेटा हैं। VBA का उपयोग करते हुए, आपके पास एक्सेल फ्रंट-एंड पर पेश किए गए मानक वाले के बजाय, अपनी खुद की स्नातक की गई रंग योजना चुनने में सक्षम होने का अतिरिक्त लाभ है।

1234567891011121314151617181920212223242526272829 उप स्नातक रंग ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'स्केल प्रकार परिभाषित करें'MyRange.FormatConditions.AddColorScale ColorScaleType:=3'श्रेणी में सबसे कम मान के लिए रंग चुनें'MyRange.FormatConditions(1).ColorScaleCriteria(1).Type = _xlConditionValueसबसे कम मूल्यMyRange.FormatConditions(1).ColorScaleCriteria(1).FormatColor . के साथरंग = 7039480के साथ समाप्त करना'श्रेणी में मध्य मानों के लिए रंग चुनें'MyRange.FormatConditions(1).ColorScaleCriteria(2).Type = _xlConditionValuePercentileMyRange.FormatConditions(1).ColorScaleCriteria(2).Value = 50'श्रेणी के मध्य बिंदु के लिए रंग चुनें'MyRange.FormatConditions(1).ColorScaleCriteria(2).FormatColor . के साथरंग = 8711167के साथ समाप्त करना'श्रेणी में उच्चतम मान के लिए रंग चुनें'MyRange.FormatConditions(1).ColorScaleCriteria(3).Type = _xlConditionValueउच्चतम मानMyRange.FormatConditions(1).ColorScaleCriteria(3).FormatColor . के साथरंग = 8109667के साथ समाप्त करनाअंत उप

जब यह कोड चलाया जाता है, तो यह A1:A10 श्रेणी में आरोही मानों के अनुसार सेल रंगों को ग्रैजुएट करेगा।

यह डेटा प्रदर्शित करने का एक बहुत ही प्रभावशाली तरीका है और निश्चित रूप से उपयोगकर्ताओं का ध्यान आकर्षित करेगा।

त्रुटि मानों के लिए सशर्त स्वरूपण

जब आपके पास बड़ी मात्रा में डेटा होता है, तो आप आसानी से अपने विभिन्न कार्यपत्रकों में एक त्रुटि मान चूक सकते हैं। यदि इसे बिना समाधान किए किसी उपयोगकर्ता को प्रस्तुत किया जाता है, तो इससे बड़ी समस्याएं हो सकती हैं और उपयोगकर्ता संख्याओं में विश्वास खो देता है। यह सेल का मूल्यांकन करने के लिए नियम प्रकार के xlExpression और IsError के एक्सेल फ़ंक्शन का उपयोग करता है।

आप कोड बना सकते हैं ताकि त्रुटियों वाले सभी कक्षों का सेल रंग लाल हो:

1234567891011 उप त्रुटि सशर्त स्वरूपण उदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'त्रुटि नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlExpression, Formula1:="=IsError(A1)=true"'आंतरिक रंग को लाल पर सेट करें'MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)अंत उप

अतीत में तिथियों के लिए सशर्त स्वरूपण

आपके पास डेटा आयात किया जा सकता है जहां आप अतीत की तारीखों को हाइलाइट करना चाहते हैं। इसका एक उदाहरण देनदार की रिपोर्ट हो सकती है, जहां आप चाहते हैं कि कोई भी पुराना चालान 30 दिनों से अधिक पुराना हो।

यह कोड तिथियों का मूल्यांकन करने के लिए नियम प्रकार xlExpression और एक एक्सेल फ़ंक्शन का उपयोग करता है।

1234567891011 उप दिनांकInPastConditionalFormattingExample ()रेंज के रूप में मंद MyRange'तारीखों के कॉलम के आधार पर रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'अतीत की तारीखों के लिए त्रुटि नियम जोड़ें'MyRange.FormatConditions.Add Type:=xlExpression, Formula1:="=Now()-A1 > 30"'आंतरिक रंग को लाल पर सेट करें'MyRange.FormatConditions(1).Interior.Color = RGB(255, 0, 0)अंत उप

यह कोड A1:A10 की श्रेणी में कई तिथियां लेगा, और किसी भी तिथि के लिए सेल का रंग लाल रंग में सेट कर देगा जो कि 30 दिन से अधिक पुराना है।

शर्त में प्रयुक्त होने वाले सूत्र में Now() वर्तमान दिनांक और समय देता है। यह हर बार कार्यपत्रक की पुनर्गणना होने पर पुनर्गणना करता रहेगा, इसलिए स्वरूपण एक दिन से अगले दिन में बदल जाएगा।

VBA सशर्त स्वरूपण में डेटा बार्स का उपयोग करना

आप कई प्रकार की संख्याओं में डेटा बार जोड़ने के लिए VBA का उपयोग कर सकते हैं। ये लगभग मिनी चार्ट की तरह हैं, और एक दूसरे के संबंध में संख्याएं कितनी बड़ी हैं, इसका एक त्वरित दृश्य देती हैं। डेटा बार के लिए डिफ़ॉल्ट मान स्वीकार करके, कोड लिखना बहुत आसान है।

123456 उप डेटाबारफॉर्मेटिंग उदाहरण ()रेंज के रूप में मंद MyRangeMyRange सेट करें = रेंज ("A1: A10")MyRange.FormatConditions.DeleteMyRange.FormatConditions.AddDatabarअंत उप

वर्कशीट पर आपका डेटा इस तरह दिखेगा:

वीबीए सशर्त स्वरूपण में प्रतीक का उपयोग करना

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

12345678910111213141516171819202122232425 उप चिह्नसेट्सउदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'फ़ॉर्मेट कंडीशन ऑब्जेक्ट में चिह्न सेट जोड़ें'MyRange.FormatConditions.AddIconSetCondition'आइकन सेट को तीरों पर सेट करें - शर्त 1MyRange.FormatConditions(1) के साथ.IconSet = ActiveWorkbook.IconSets(xl3Arrows)के साथ समाप्त करना'आवश्यक प्रतिशत मान के लिए आइकन मानदंड सेट करें - शर्त 2MyRange.FormatConditions(1).IconCriteria(2) के साथटाइप = xlConditionValuePercentमूल्य = 33.ऑपरेटर = xlग्रेटरएक्वालके साथ समाप्त करना'आवश्यक प्रतिशत मान के लिए आइकन मानदंड सेट करें - शर्त 3MyRange.FormatConditions(1).IconCriteria(3) के साथटाइप = xlConditionValuePercentमूल्य = 67.ऑपरेटर = xlग्रेटरएक्वालके साथ समाप्त करनाअंत उप

यह एक त्वरित दृश्य दिखाएगा कि कोई संख्या उच्च या निम्न है या नहीं। इस कोड को चलाने के बाद आपकी वर्कशीट इस तरह दिखेगी:

शीर्ष पांच को हाइलाइट करने के लिए सशर्त स्वरूपण का उपयोग करना

डेटा रेंज में शीर्ष 5 नंबरों को हाइलाइट करने के लिए आप VBA कोड का उपयोग कर सकते हैं। आप 'AddTop10' नामक एक पैरामीटर का उपयोग करते हैं, लेकिन आप कोड के भीतर रैंक संख्या को 5 में समायोजित कर सकते हैं। कोई उपयोगकर्ता पहले डेटा को सॉर्ट किए बिना किसी श्रेणी में उच्चतम संख्या देखना चाहता है।

1234567891011121314151617181920212223 उप Top5उदाहरण ()रेंज के रूप में मंद MyRange'रेंज ऑब्जेक्ट बनाएं'MyRange सेट करें = रेंज ("A1: A10")'पिछले सशर्त प्रारूप हटाएं'MyRange.FormatConditions.Delete'एक Top10 शर्त जोड़ेंMyRange.FormatConditions.AddTop10MyRange.FormatConditions(1) के साथ'ऊपर से नीचे पैरामीटर सेट करें'.टॉपबॉटम = xlTop10Top'केवल टॉप 5 सेट करें'रैंक = 5के साथ समाप्त करनाMyRange.FormatConditions(1).Font . के साथ'फ़ॉन्ट रंग सेट करें'रंग = -16383844के साथ समाप्त करनाMyRange.FormatConditions(1) के साथ। इंटीरियर'सेलबैकग्राउंड कलर सेट करें'रंग = १३५५१६१५के साथ समाप्त करनाअंत उप

कोड चलाने के बाद आपकी वर्कशीट का डेटा इस तरह दिखेगा:

ध्यान दें कि 145 का मान दो बार प्रकट होता है इसलिए छह कोशिकाओं को हाइलाइट किया जाता है।

StopIfTrue और SetFirstPriority पैरामीटर्स का महत्व

StopIfTrue महत्वपूर्ण है यदि कक्षों की श्रेणी में इसके लिए एकाधिक सशर्त स्वरूपण नियम हैं। सीमा के भीतर एक एकल कक्ष पहले नियम को संतुष्ट कर सकता है, लेकिन यह बाद के नियमों को भी पूरा कर सकता है। डेवलपर के रूप में, आप चाहते हैं कि यह केवल पहले नियम के लिए स्वरूपण प्रदर्शित करे, जिस पर यह आता है। अन्य नियम मानदंड ओवरलैप हो सकते हैं और नियमों की सूची को जारी रखने की अनुमति देने पर अनपेक्षित परिवर्तन कर सकते हैं।

इस पैरामीटर पर डिफ़ॉल्ट सही है, लेकिन आप इसे बदल सकते हैं यदि आप चाहते हैं कि उस सेल के अन्य सभी नियमों पर विचार किया जाए:

1 मायरेंज। FormatConditions(1).StopIfTrue = False

SetFirstPriority पैरामीटर निर्धारित करता है कि उस सेल के लिए कई नियम होने पर उस शर्त नियम का मूल्यांकन पहले किया जाएगा या नहीं।

1 मायरेंज। प्रारूप शर्तें(1)।सेटफर्स्टप्रॉरिटी

यह उस नियम की स्थिति को प्रारूप स्थितियों के संग्रह में स्थान 1 पर ले जाता है, और किसी भी अन्य नियम को बदली हुई अनुक्रमणिका संख्याओं के साथ नीचे की ओर ले जाया जाएगा। अगर आप इंडेक्स नंबरों का उपयोग करके कोड में नियमों में कोई बदलाव कर रहे हैं तो सावधान रहें। आपको यह सुनिश्चित करने की आवश्यकता है कि आप सही नियम बदल रहे हैं या हटा रहे हैं।

आप किसी नियम की प्राथमिकता बदल सकते हैं:

1 मायरेंज। प्रारूप शर्तें(1).प्राथमिकता=3

यह सशर्त प्रारूप सूची के भीतर किसी भी अन्य नियमों की सापेक्ष स्थिति को बदल देगा।

अन्य सेल मानों को संदर्भित करने वाले सशर्त स्वरूपण का उपयोग करना

यह एक ऐसा काम है जो एक्सेल कंडीशनल फॉर्मेटिंग नहीं कर सकता। हालाँकि, आप ऐसा करने के लिए अपना स्वयं का VBA कोड बना सकते हैं।

मान लीजिए कि आपके पास डेटा का एक कॉलम है, और प्रत्येक नंबर से सटे सेल में, कुछ टेक्स्ट है जो इंगित करता है कि प्रत्येक नंबर पर कौन सा स्वरूपण होना चाहिए।

निम्नलिखित कोड आपकी संख्याओं की सूची को चलाएगा, पाठ को स्वरूपित करने के लिए आसन्न सेल में देखें, और फिर आवश्यकतानुसार संख्या को प्रारूपित करें:

123456789101112131415161718192021 सब रेफर टूअदरसेलफॉरकंडीशनलफॉर्मेटिंग ()'सारणीबद्ध डेटा के लिए पंक्तियों की संख्या रखने के लिए चर बनाएँ'डिम आरओ अस लॉन्ग, एन अस लॉन्ग'सारणीबद्ध डेटा श्रेणी के भीतर पंक्तियों की संख्या कैप्चर करें'Rrow = ActiveSheet.UsedRange.Rows.Count'सारणीबद्ध डेटा श्रेणी में सभी पंक्तियों के माध्यम से पुनरावृति'N = 1 से Rrow . के लिए'कॉलम 2 के आधार पर स्वरूपण का मूल्यांकन करने के लिए चयन केस स्टेटमेंट का उपयोग करें'केस एक्टिवशीट चुनें। सेल (एन, 2)। मान'आंतरिक रंग को नीला करें'मामला "नीला"ActiveSheet.Cells(N, 1).Interior.Color = vbBlue'आंतरिक रंग को लाल करें'मामला "लाल"ActiveSheet.Cells(N, 1).Interior.Color = vbRed'आंतरिक रंग को हरा करें'केस "ग्रीन"ActiveSheet.Cells(N, 1).Interior.Color = vbGreenअंत चयनअगला नहींअंत उप

एक बार यह कोड चलने के बाद, आपकी वर्कशीट अब इस तरह दिखेगी:

फ़ॉर्मेटिंग के लिए संदर्भित किए जा रहे कक्ष कार्यपत्रक पर कहीं भी हो सकते हैं, या कार्यपुस्तिका के भीतर किसी अन्य कार्यपत्रक पर भी हो सकते हैं। स्वरूपण के लिए एक शर्त बनाने के लिए आप किसी भी प्रकार के पाठ का उपयोग कर सकते हैं, और आप केवल उन उपयोगों में अपनी कल्पना से सीमित हैं जिन्हें आप इस कोड को डाल सकते हैं।

ऑपरेटर जिनका उपयोग सशर्त स्वरूपण विवरण में किया जा सकता है

जैसा कि आपने पिछले उदाहरणों में देखा है, ऑपरेटरों का उपयोग यह निर्धारित करने के लिए किया जाता है कि स्थिति मूल्यों का मूल्यांकन कैसे किया जाएगा उदा। एक्सएलबीच।

आप अपने नियम मानदंड को कैसे निर्दिष्ट करना चाहते हैं, इस पर निर्भर करते हुए, इनमें से कई ऑपरेटरों का उपयोग किया जा सकता है।

नाम मूल्य विवरण
xlबीच 1 बीच में। केवल तभी उपयोग किया जा सकता है जब दो सूत्र दिए गए हों।
xl समान 3 बराबरी का।
एक्सएलग्रेटर 5 से अधिक।
xlग्रेटरबराबर 7 इससे बड़ा या इसके बराबर।
xl कम 6 से कम।
xl कम समान 8 से कम या बराबर।
xlबीच में नहीं 2 बीच में नहीं। केवल तभी उपयोग किया जा सकता है जब दो सूत्र दिए गए हों।
xlनोटबराबर 4 सम नही।

आप साइट के विकास में मदद मिलेगी, अपने दोस्तों के साथ साझा करने पेज

wave wave wave wave wave