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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

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

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

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

VBA के साथ एक्सेल में जांचें कि ऑटोफिल्टर चालू है या नहीं के 4 त्वरित तरीके

इस खंड का पालन करके, आप सीखेंगे कि VBA के साथ एक्सेल में जांचें कि ऑटोफिल्टर चालू है या नहीं 4 अलग-अलग तरीकों से।

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

ऊपर उदाहरण डेटासेट है जिसका यह लेख प्रक्रियाओं का वर्णन करने के लिए पालन करेगा।

1. एक्सेल वर्कशीट में ऑटोफिल्टर चालू या बंद है या नहीं जांचने के लिए VBA एम्बेड करें

इस खंड में, आप सीखेंगे कि VBA के साथ एक्सेल वर्कशीट के लिए ऑटोफिल्टर चालू है या नहीं जांचें। इसे निष्पादित करने के चरण नीचे दिए गए हैं।

चरण:

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

  • फिर, निम्न कोड कॉपी करें और कोड विंडो में पेस्ट करें।
Sub AutoFilterCheck() If ActiveSheet.AutoFilterMode = True Then MsgBox "Auto Filter is turned on" Else MsgBox "Auto Filter is turned off" End If End Sub

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

सफल कोड निष्पादन के बाद, परिणाम देखने के लिए निम्न छवि को देखें।

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

अब, उपरोक्त छवि को देखें। भले ही डेटासेट में कोई फ़िल्टर तीर न हो, एक्सेल MsgBox हमें बता रहा है कि इस शीट में ऑटोफिल्टर चालू है।

VBA लागू करना इस तरह के परिदृश्यों के लिए वास्तव में सुविधाजनक है जहां किसी ऑपरेशन के बारे में अनिश्चितता है; VBA मैक्रो आपको सही परिणाम निकालने में मदद करता है भले ही आपकी आँखें उन्हें न देख सकें।

VBA कोड व्याख्या

If ActiveSheet.AutoFilterMode = True Then MsgBox "Auto Filter is turned on" Else MsgBox "Auto Filter is turned off" End If

कोड का यह टुकड़ा यदि सक्रिय शीट के लिए ऑटो फिल्टर मोड सही है को संदर्भित करता है, तो एक्सेल MsgBox में "ऑटो फिल्टर चालू है" संदेश लौटाता है; अन्यथा, यह "ऑटो फिल्टर बंद है" संदेश फेंकता है।

और पढ़ें: एक्सेल VBA: ऑटोफिल्टर हटाएं यदि मौजूद है (7 तरीके)

2. VBA कोड डीबग करें और सक्रिय शीट में कुल ऑटोफिल्टर की संख्या प्राप्त करें

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

इसे प्राप्त करने के चरण नीचे दिए गए हैं।

चरण:

  • पहले की तरह ही, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में एक मॉड्यूल सम्मिलित करें।
  • फिर, निम्न कोड कॉपी करें और कोड विंडो में पेस्ट करें।
Sub CountAutoFilters() Dim iCount As Long If ActiveSheet.AutoFilterMode = True Then iCount = 1 Debug.Print "AutoFilterMode Count: " & iCount End Sub

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

  • उसके बाद, मैक्रो चलाएं जैसा कि हमने ऊपर के खंड में दिखाया था। परिणाम नीचे छवि में दिखाया गया है।

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

जैसा कि आप ऊपर छवि में देख सकते हैं, तत्काल विंडो में आपको अपनी वर्कशीट में सक्षम ऑटोफिल्टर की कुल संख्या मिलेगी।

VBA कोड व्याख्या

Dim iCount As Long

चर की घोषणा।

If ActiveSheet.AutoFilterMode = True Then iCount = 1 Debug.Print "AutoFilterMode Count: " & iCount

कोड में इन पंक्तियों का अर्थ है, कि यदि सक्रिय शीट के लिए ऑटो फिल्टर मोड सही है, तो गिनती शुरू करें और कुल संख्या प्रिंट करें।

और पढ़ें: VBA के साथ एक ही फ़ील्ड पर बहु-मानदंड ऑटोफिल्टर (4 तरीके)

3. एक्सेल में जांचने के लिए VBA लागू करें कि कोई विशिष्ट कॉलम फ़िल्टर किया गया है या नहीं

मान लीजिए आप VBA के साथ जांचना चाहते हैं कि आपकी एक्सेल स्प्रेडशीट में एक विशिष्ट कॉलम फ़िल्टर किया गया है या नहीं।

आइए देखें कि ऐसा कैसे करें।

चरण:

  • जैसा कि पहले दिखाया गया है, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में एक मॉड्यूल सम्मिलित करें।
  • फिर, निम्न कोड कॉपी करें और कोड विंडो में पेस्ट करें।
Sub CheckColumnFilter() Dim iSheet As Worksheet Set iSheet = ActiveSheet If iSheet.AutoFilter.Filters(2).On Then MsgBox "Column B is filtered." Else MsgBox "Column B is not filtered." End If End Sub

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

  • बाद में, मैक्रो चलाएं और आउटपुट देखने के लिए निम्न छवि को देखें।

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

अब, उपरोक्त छवि पर विचार करें। भले ही आप देख सकें कि कॉलम B में एक फ़िल्टर तीर है, मैक्रो हमें बता रहा है कि वहाँ नहीं है। तो, सफल कोड निष्पादन के बाद, हम कह सकते हैं कि कॉलम B ऑटोफिल्टर नहीं किया गया है।

VBA कोड व्याख्या

Dim iSheet As Worksheet

वर्कशीट के लिए चर की घोषणा।

Set iSheet = ActiveSheet

सक्रिय शीट को घोषित चर में संग्रहीत करें।

If iSheet.AutoFilter.Filters(2).On Then MsgBox "Column B is filtered." Else MsgBox "Column B is not filtered." End If

कोड का यह टुकड़ा यदि सक्रिय शीट के लिए कॉलम 2 या कॉलम B का ऑटो फिल्टर सही है को संदर्भित करता है, तो एक्सेल MsgBox में "कॉलम B फ़िल्टर किया गया है।" संदेश लौटाता है; अन्यथा, यह "कॉलम B फ़िल्टर नहीं किया गया है।" संदेश फेंकता है।

और पढ़ें: VBA के साथ एक्सेल में किसी निश्चित मान के बराबर नहीं ऑटोफिल्टर मान

4. एक्सेल वर्कबुक में सक्षम ऑटोफिल्टर की जांच के लिए VBA मैक्रो

इस खंड में, आप सीखेंगे कि आप किसी विशिष्ट एक्सेल वर्कबुक में शीट के लिए सक्षम या अक्षम ऑटोफिल्टर की जांच कैसे कर सकते हैं।

इसे निष्पादित करने के चरण नीचे दिए गए हैं।

चरण:

  • सबसे पहले, डेवलपर टैब से विजुअल बेसिक एडिटर खोलें और कोड विंडो में एक मॉड्यूल सम्मिलित करें।
  • फिर, निम्न कोड कॉपी करें और कोड विंडो में पेस्ट करें।
Sub CheckAutofilterSheet() Dim z As Double For z = 1 To ThisWorkbook.Sheets.Count If ThisWorkbook.Sheets(z).AutoFilterMode Then MsgBox ThisWorkbook.Sheets(z).Name & " has enabled Autofilter" End If Next End Sub

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

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

  • अगला, मैक्रो चलाएं। अब, परिणाम देखने के लिए निम्न छवि को देखें।

एक्सेल में ऑटोफिल्टर स्थिति सत्यापित करने के त्वरित VBA तरीके

जैसा कि आप उपरोक्त छवि में देख सकते हैं, हमारे वर्कबुक में "डेटासेट" नाम की एक वर्कशीट है। एक्सेल का MsgBox हमें दिखा रहा है कि "डेटासेट" शीट में ऑटोफिल्टर चालू है। आप अपने विशिष्ट एक्सेल वर्कबुक में अपनी सभी स्प्रेडशीट के लिए यह कोड चला सकते हैं।

VBA कोड व्याख्या

Dim z As Double

चर की घोषणा।

For z = 1 To ThisWorkbook.Sheets.Count

मौजूदा वर्कबुक के पहले शीट से कुल शीट संख्या तक लूपिंग शुरू करता है।

If ThisWorkbook.Sheets(z).AutoFilterMode Then MsgBox ThisWorkbook.Sheets(z).Name & " has enabled Autofilter" End If Next

यदि पहली शीट में ऑटो फिल्टर मोड चालू है, तो MsgBox में संदेश फेंकें। उसके बाद, कोड शर्त समाप्त करता है और पुनरावृत्ति करने के लिए अगली शीट पर जाता है। यह तब तक ऐसा करना जारी रखता है जब तक यह वर्तमान वर्कबुक के सभी शीट संख्या तक नहीं पहुँच जाता।

और पढ़ें: एक्सेल VBA के साथ ऑटोफिल्टर और दृश्यमान पंक्तियाँ कॉपी करें

निष्कर्ष

निष्कर्ष निकालने के लिए, इस लेख ने आपको VBA मैक्रो के साथ एक्सेल में जांचें कि ऑटोफिल्टर चालू है या नहीं के 4 आसान और त्वरित तरीके दिखाए। मुझे आशा है कि यह लेख आपके लिए बहुत फायदेमंद रहा होगा। विषय के संबंध में कोई भी प्रश्न पूछने के लिए स्वतंत्र महसूस करें।

संबंधित लेख

  • [समाधान]: ऑटोफिल्टर मेथड ऑफ रेंज क्लास फेल्ड (5 समाधान)
  • VBA ऑटोफिल्टर: सबसे छोटे से सबसे बड़े क्रम में सॉर्ट करें (3 तरीके)

  1. Excel में मास्टर करें: सटीक स्केल मॉडल बनाने की 2 सरल तकनीकें Excel में मास्टर करें: सटीक स्केल मॉडल बनाने की 2 सरल तकनीकें

    Excel में स्केल में ड्रा करने के तरीके जानने के लिए खोज रहे हैं? हम Excel में किसी भी स्केल में ड्रा कर सकते हैं, पंक्ति और कॉलम आकार को समायोजित करके। यहाँ, आपको Excel में स्केल में ड्रा करने के 2 तरीके मिलेंगे। Excel में स्केल में ड्रा करने के 2 तरीके इस लेख में, हम आपको दिखाएंगे कि विभिन्न प्रकार

  1. संरचित एक्सेल पदानुक्रम बनाएं: 3 आसान तकनीकें संरचित एक्सेल पदानुक्रम बनाएं: 3 आसान तकनीकें

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

  1. एक्सेल में प्रश्नावली जल्दी बनाएं: 2 सरल तरीके एक्सेल में प्रश्नावली जल्दी बनाएं: 2 सरल तरीके

    इस लेख में, हम एक्सेल में एक प्रश्नावली बनाना सीखेंगे। एक प्रश्नावली विकल्पों के साथ प्रश्नों या विशिष्ट वस्तुओं का एक समूह है। इसका उपयोग प्रतिवादी से जानकारी एकत्र करने के लिए किया जाता है। एक्सेल में, उपयोगकर्ता कुछ आसान चरणों का पालन करके एक प्रश्नावली बना सकते हैं। आज, हम 2 आसान तरीके प्रदर्शित