Computer >> कंप्यूटर ट्यूटोरियल >  >> सॉफ्टवेयर >> Office

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

वर्कबुक डाउनलोड करें

आप यहां से मुफ्त प्रैक्टिस एक्सेल वर्कबुक डाउनलोड कर सकते हैं।

VBA का उपयोग करके एक्सेल में यदि फ़ॉन्ट रंग लाल है तो कुछ परिणाम लौटाने के 6 तरीके

निम्नलिखित डेटासेट देखें जहां कुछ मानों का फ़ॉन्ट रंग लाल है। इस खंड में, हम चरण-दर-चरण प्रक्रियाओं पर चर्चा करेंगे कि यदि फ़ॉन्ट रंग लाल है तो एक्सेल में कुछ परिणाम कैसे प्राप्त करें।

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

1. यदि फ़ॉन्ट रंग लाल है तो एक्सेल में निश्चित शब्द लौटाएं

हम चाहते हैं कि यदि फ़ॉन्ट रंग लाल है तो हां लौटाएं और यदि फ़ॉन्ट रंग लाल नहीं है तो नहीं लौटाएं। आइए देखें कि एक्सेल VBA से यह कैसे करना है।

चरण:

  • अपने कीबोर्ड पर Alt + F11 दबाएं या टैब डेवलपर -> विजुअल बेसिक पर जाकर विजुअल बेसिक एडिटर खोलें।

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

यह VBA प्रोग्राम चलाने के लिए एक सब प्रोसीजर नहीं है, यह एक यूजर डिफाइंड फ़ंक्शन (UDF) बना रहा है। इसलिए, कोड लिखने के बाद, मेनू बार से रन बटन पर क्लिक करने के बजाय, सेव पर क्लिक करें।

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

तो हमारा अंतिम सूत्र है,

=FontColorRed(C5)

  • Enter दबाएं।

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

यदि सेल C5 में फ़ॉन्ट रंग लाल है तो आपको हां मिलेगा, अन्यथा आपको नहीं मिलेगा। हमारे मामले में, सेल C5 के अंदर टेक्स्ट का फ़ॉन्ट रंग लाल नहीं था, इसलिए हमें नहीं मिला।

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

2. यदि फ़ॉन्ट रंग लाल है तो कलर कोड लौटाएं

यहां हम सीखेंगे कि एक्सेल में VBA के साथ फ़ॉन्ट रंग लाल के आधार पर कलर कोड कैसे निकालें।

चरण:

  • पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
  • कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Function ColorCode(rng As Range) ColorCode = rng.Font.ColorIndex End Function

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

आपको रिटर्न मान के रूप में संबंधित कलर कोड मिलेगा।

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

3. यदि फ़ॉन्ट रंग लाल है तो एक्सेल में इंडेक्स लौटाएं

यहां हम सीखेंगे कि एक्सेल में VBA के साथ फ़ॉन्ट रंग लाल के आधार पर इंडेक्स नंबर कैसे लौटाएं।

चरण:

  • पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में मॉड्यूल इन्सर्ट करें।
  • कोड विंडो में, निम्न कोड कॉपी करें और पेस्ट करें।
Function IndexColor(cell As Range) IndexColor = cell.Font.Color End Function

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

आपको रिटर्न मान के रूप में फ़ॉन्ट रंग का संबंधित इंडेक्स नंबर मिलेगा।

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

लाल रंग वाले फ़ॉन्ट को रखने वाले सेल्स 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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

आपको रिटर्न मान के रूप में फ़ॉन्ट रंग का संबंधित RGB कोड मिलेगा।

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

लाल रंग वाले फ़ॉन्ट को रखने वाले सेल्स 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

आपका कोड अब चलाने के लिए तैयार है।

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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

VBA से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

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 से रेड फॉन्ट सेल डिटेक्ट करें और एक्सेल में परिणाम प्राप्त करें

लाल फ़ॉन्ट रंग वाले मान अब डिफ़ॉल्ट फ़ॉन्ट रंग में वापस आ गए हैं।

निष्कर्ष

इस लेख ने आपको दिखाया कि यदि आपके डेटासेट में मानों का फ़ॉन्ट रंग लाल है तो VBA का उपयोग करके एक्सेल में कुछ परिणाम कैसे प्राप्त करें। मुझे आशा है कि यह लेख आपके लिए बहुत फायदेमंद रहा होगा। विषय के संबंध में यदि आपके कोई प्रश्न हैं तो बेझिझक पूछें।

आप यह भी देखना चाहेंगे

  • एक्सेल में VBA से स्ट्रिंग से वर्ण हटाएं (7 तरीके)
  • VBA का उपयोग करके एक्सेल में खाली पंक्तियां कैसे हटाएं
  • VBA मैक्रो एक्सेल में क्राइटेरिया के आधार पर पंक्ति डालें (4 तरीके)
  • VBA से एक्सेल में पंक्तियां गिनने के तरीके (5 दृष्टिकोण)
  • VBA से एक्सेल में सेल मान के आधार पर पूरी पंक्ति हटाएं (3 तरीके)

  1. क्विक गाइड: एक्सेल में मर्ज सेल्स के लिए अल्टरनेट रो कलर्स क्विक गाइड: एक्सेल में मर्ज सेल्स के लिए अल्टरनेट रो कलर्स

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

  1. एक्सेल में मिनटों में सशर्त फॉर्मेटिंग रंग द्वारा डेटा फ़िल्टर करें एक्सेल में मिनटों में सशर्त फॉर्मेटिंग रंग द्वारा डेटा फ़िल्टर करें

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

  1. एक्सेल में सेल रंग द्वारा सेल फ़िल्टर करें: 2 सरल विधियां एक्सेल में सेल रंग द्वारा सेल फ़िल्टर करें: 2 सरल विधियां

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