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

1. यदि फ़ॉन्ट रंग लाल है तो एक्सेल में निश्चित शब्द लौटाएं
हम चाहते हैं कि यदि फ़ॉन्ट रंग लाल है तो हां लौटाएं और यदि फ़ॉन्ट रंग लाल नहीं है तो नहीं लौटाएं। आइए देखें कि एक्सेल VBA से यह कैसे करना है।
चरण:
- अपने कीबोर्ड पर Alt + F11 दबाएं या टैब डेवलपर -> विजुअल बेसिक पर जाकर विजुअल बेसिक एडिटर खोलें।

- पॉप-अप कोड विंडो में, मेनू बार से, इन्सर्ट -> मॉड्यूल पर क्लिक करें।

- निम्न कोड कॉपी करें और कोड विंडो में पेस्ट करें।
Function FontColorRed(target As Range) Application.Volatile If target.Font.Color = 255 Then FontColorRed = "Yes" Else FontColorRed = "No" End If End Function

यह VBA प्रोग्राम चलाने के लिए एक सब प्रोसीजर नहीं है, यह एक यूजर डिफाइंड फ़ंक्शन (UDF) बना रहा है। इसलिए, कोड लिखने के बाद, मेनू बार से रन बटन पर क्लिक करने के बजाय, सेव पर क्लिक करें।
- अब रुचि की वर्कशीट पर वापस जाएं और आपके द्वारा VBA कोड से बनाए गए फ़ंक्शन को लिखें (कोड की पहली पंक्ति में फ़ंक्शन FontColorRed) और FontColorRed फ़ंक्शन के पैरेंथेसिस के अंदर, उस सेल रेफरेंस नंबर को पास करें जिसे आप अक्षर में बदलना चाहते हैं (हमारे मामले में, हम सेल C5 को पैरेंथेसिस के अंदर पास करते हैं)।
तो हमारा अंतिम सूत्र है,
=FontColorRed(C5)
- Enter दबाएं।

यदि सेल C5 में फ़ॉन्ट रंग लाल है तो आपको हां मिलेगा, अन्यथा आपको नहीं मिलेगा। हमारे मामले में, सेल C5 के अंदर टेक्स्ट का फ़ॉन्ट रंग लाल नहीं था, इसलिए हमें नहीं मिला।
- अब फिल हैंडल द्वारा पंक्ति को नीचे खींचकर बाकी सेल्स पर UDF लागू करें और आपको लाल फ़ॉन्ट रंग वाले टेक्स्ट को रखने वाले सेल्स के बगल में हां मिलेगा।

2. यदि फ़ॉन्ट रंग लाल है तो कलर कोड लौटाएं
यहां हम सीखेंगे कि एक्सेल में VBA के साथ फ़ॉन्ट रंग लाल के आधार पर कलर कोड कैसे निकालें।
चरण:
- पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
- कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Function ColorCode(rng As Range) ColorCode = rng.Font.ColorIndex End Function

- अब, जैसा पहले दिखाया गया है, डेटासेट से ColorCode UDF को कॉल करें, सेल रेफरेंस नंबर पास करें (उदाहरण के लिए C5) आर्गुमेंट के रूप में, Enter दबाएं।

आपको रिटर्न मान के रूप में संबंधित कलर कोड मिलेगा।
- अब फिल हैंडल द्वारा पंक्ति को नीचे खींचकर बाकी सेल्स पर UDF लागू करें ताकि फ़ॉन्ट रंग लाल का कोड मिल सके।

3. यदि फ़ॉन्ट रंग लाल है तो एक्सेल में इंडेक्स लौटाएं
यहां हम सीखेंगे कि एक्सेल में VBA के साथ फ़ॉन्ट रंग लाल के आधार पर इंडेक्स नंबर कैसे लौटाएं।
चरण:
- पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
- कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Function IndexColor(cell As Range) IndexColor = cell.Font.Color End Function

- अब, जैसा पहले दिखाया गया है, डेटासेट से IndexColor UDF को कॉल करें, सेल रेफरेंस नंबर पास करें (उदाहरण के लिए C5) आर्गुमेंट के रूप में, Enter दबाएं।

आपको रिटर्न मान के रूप में फ़ॉन्ट रंग का संबंधित इंडेक्स नंबर मिलेगा।
- अब फिल हैंडल द्वारा पंक्ति को नीचे खींचकर बाकी सेल्स पर UDF लागू करें ताकि फ़ॉन्ट रंग लाल का इंडेक्स नंबर मिल सके।

लाल रंग वाले फ़ॉन्ट को रखने वाले सेल्स 255 लौटाएंगे क्योंकि रंग लाल का इंडेक्स नंबर 255 है।
4. यदि फ़ॉन्ट रंग लाल है तो एक्सेल में RGB कोड लौटाएं
यहां हम सीखेंगे कि एक्सेल में VBA के साथ फ़ॉन्ट रंग लाल के आधार पर RGB कोड कैसे प्राप्त करें।
चरण:
- पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
- कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Function FontRGB(cell As Range) Dim iColorIndex As Long Dim iColor As Variant iColorIndex = cell.Font.Color iColor = iColorIndex Mod 256 iColor = iColor & ", " iColor = iColor & (iColorIndex \ 256) Mod 256 iColor = iColor & ", " iColor = iColor & (iColorIndex \ 256 \ 256) Mod 256 FontRGB = iColor End Function

- अब, जैसा पहले दिखाया गया है, डेटासेट से FontRGB UDF को कॉल करें, सेल रेफरेंस नंबर पास करें (उदाहरण के लिए C5) आर्गुमेंट के रूप में, Enter दबाएं।

आपको रिटर्न मान के रूप में फ़ॉन्ट रंग का संबंधित RGB कोड मिलेगा।
- अब फिल हैंडल द्वारा पंक्ति को नीचे खींचकर बाकी सेल्स पर UDF लागू करें ताकि फ़ॉन्ट रंग लाल का RGB कोड मिल सके।

लाल रंग वाले फ़ॉन्ट को रखने वाले सेल्स 255,0,0 लौटाएंगे क्योंकि रंग लाल का RGB कोड 255,0,0 है।
5. यदि फ़ॉन्ट रंग लाल है तो सेल हाइलाइट करें
यदि आप उन सेल्स को हाइलाइट करना चाहते हैं जिनमें लाल फ़ॉन्ट रंग वाला टेक्स्ट है, तो यह जानने के लिए लेख पढ़ते रहें कि यह कैसे करना है।
चरण:
- पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
- कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Sub HighlightCell() Set ws = Sheets("Highlight") 'set the worksheet For r = 1 To 104 For c = 1 To 36 If (ws.Cells(r, c).Font.Color = 255) Then 'set the desired color index ws.Cells(r, c).Interior.ColorIndex = 34 End If Next c Next r End Sub
आपका कोड अब चलाने के लिए तैयार है।

- अपने कीबोर्ड पर F5 दबाएं या मेनू बार से रन -> रन सब/यूजरफॉर्म चुनें। आप सब-मेनू बार में छोटे प्ले आइकन पर क्लिक करके मैक्रो भी चला सकते हैं।

आप देखेंगे कि लाल रंग वाले फ़ॉन्ट वाले सेल्स अब हाइलाइट हो गए हैं।

6. यदि फ़ॉन्ट रंग लाल है तो फ़ॉन्ट रंग बदलें
यदि आप फ़ॉन्ट रंग लाल को वापस डिफ़ॉल्ट रंग में बदलना चाहते हैं, तो नीचे दिखाए गए चरणों का पालन करें।
चरण:
- पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
- कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Sub ChangeFontColor() With Application.FindFormat.Font .Subscript = False .Color = 255 .TintAndShade = 0 End With With Application.ReplaceFormat.Font .Subscript = False .ColorIndex = xlAutomatic .TintAndShade = 0 End With Cells.Replace What:="", Replacement:="", LookAt:=xlPart, SearchOrder:= _ xlByRows, MatchCase:=False, SearchFormat:=True, ReplaceFormat:=True End Sub
आपका कोड अब चलाने के लिए तैयार है।

- मैक्रो चलाएं।

लाल फ़ॉन्ट रंग वाले मान अब डिफ़ॉल्ट फ़ॉन्ट रंग में वापस आ गए हैं।
निष्कर्ष
इस लेख ने आपको दिखाया कि यदि आपके डेटासेट में मानों का फ़ॉन्ट रंग लाल है तो VBA का उपयोग करके एक्सेल में कुछ परिणाम कैसे प्राप्त करें। मुझे आशा है कि यह लेख आपके लिए बहुत फायदेमंद रहा होगा। विषय के संबंध में यदि आपके कोई प्रश्न हैं तो बेझिझक पूछें।
आप यह भी देखना चाहेंगे
- एक्सेल में VBA से स्ट्रिंग से वर्ण हटाएं (7 तरीके)
- VBA का उपयोग करके एक्सेल में खाली पंक्तियां कैसे हटाएं
- VBA मैक्रो एक्सेल में क्राइटेरिया के आधार पर पंक्ति डालें (4 तरीके)
- VBA से एक्सेल में पंक्तियां गिनने के तरीके (5 दृष्टिकोण)
- VBA से एक्सेल में सेल मान के आधार पर पूरी पंक्ति हटाएं (3 तरीके)