मैं सूची में आइटम के आधार पर डेटा को कैसे फ़िल्टर कर सकता हूं?


0

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

Amoy स्ट्रीट, सिंगापुर
एन सियांग हिल
एंसन रोड
अरब स्ट्रीट
अर्मेनियाई स्ट्रीट, सिंगापुर
BBaghdad स्ट्रीट (सिंगापुर)
बलेस्टियर रोड
बांदा स्ट्रीट
Bartley रोड
बीच रोड, सिंगापुर
Bencoolen स्ट्रीट
Bernam स्ट्रीट
बोट क्वे
बून जैसे स्ट्रीट
सीमा रोड, सिंगापुर
Bras Basah रोड
Bugis स्ट्रीट
Bukit Batok रोड
बुकित पासोह रोड
बुकित तिमाह रोड
CCantonment Road, Singapore
Choa Chu Kang रोड रोड
क्लार्क क्वे
क्लेमेंटी रोड
क्लब स्ट्रीट
Collyer Quay
कनॉट ड्राइव
क्रेग रोड (सिंगापुर)
क्रॉस स्ट्रीट
और कई और

मेरी स्प्रैडशीट में निम्नलिखित की तरह बड़ी संख्या में प्रविष्टियाँ हैं, जिनमें मेरी सूची में उल्लिखित सड़क के नाम हो सकते हैं या नहीं हो सकते हैं:

  1. थॉमसन रोड पर एक दुर्घटना देखी
  2. यह दुर्घटना से मिला
  3. बालेस्टियर रोड पर 6 वाहन दुर्घटनाग्रस्त हो गए
  4. मैं अब दुर्घटना चाहता हूँ। बहुत थक गया हूं।
  5. अरब स्ट्रीट पर बस ने साइकिल को टक्कर मारी
  6. सिटी रोड पर दुर्घटना।
  7. आप मेरे घर को बाद में क्रैश कर सकते हैं।

मैं प्रविष्टियों को वापस करने के लिए फ़िल्टर कैसे करता हूं जिसमें किसी भी सड़क का नाम नामों की सूची में पहचाना गया है? मैं Microsoft Excel में सड़क के नामों की एक सरणी / सूची कैसे प्रस्तुत करूं और फिर इसे फ़िल्टर फ़ंक्शन से संबंधित करूं?


के संभावित डुप्लिकेट superuser.com/questions/670827/microsoft-excel-filter-function (एक ही उपयोगकर्ता द्वारा बनाई गई)
douglaslps

@douglaslps तुम सही हो। मैंने दूसरे प्रश्न को बंद करने के लिए मतदान किया क्योंकि यह इसके लिए कहीं अधिक विवरण है।
चार्लीआरबी 12

क्या आप परिभाषित कर सकते हैं कि आप कितने मूल्यों की जाँच कर रहे हैं। यह संभव लगता है कि हजारों हैं, और वॉल्यूम कुछ संभावित उत्तरदाताओं को बाहर कर सकता है।
जेम्स जेनकिंस

जवाबों:


2

सबसे पहले, यदि आप ऐसे वाक्यों का मिलान करना चाहते हैं, जिनमें "एमॉय स्ट्रीट" शामिल है, तो आपको उस पहली प्रविष्टि (और इसे शामिल करने वाले अन्य, और इसी तरह "सिंगापुर ()) से", सिंगापुर "को हटाना होगा। आप एक सहायक स्तंभ में एक सूत्र के साथ ऐसा करना चाह सकते हैं, तो चलो मान लेते हैं कि सड़क के नामों की आपकी न्यूनतम सूची कोशिकाओं में B1है B42। और मान लें कि आपके सात उदाहरण वाक्य (या सत्रह हजार, या फिर आपके पास बहुत से) कॉलम में हैं  C। प्रकार

=AND(ISERROR(SEARCH(B$1:B$42, C1)))

सेल में D1और प्रकार Ctrl+ Shift+ Enter। यह एक सरणी सूत्र के रूप में सूत्र में प्रवेश करता है , जिससे यह घुंघराले ब्रेसिज़ में दिखाई देता है {=AND(ISERROR(SEARCH(A$1:A$3, B1)))}:। कॉलम को कवर करने के लिए नीचे खींचें / भरें  C। यह हर वाक्य ( C मान) के लिए FALSE का मूल्यांकन करेगा जिसमें B1:B42हर एक के लिए एक स्ट्रिंग और TRUE शामिल है जो नहीं करता है। आप उस पर फ़िल्टर कर सकते हैं। यदि आपको यह तथ्य पसंद नहीं है कि ये मूल्य "पीछे" हैं, तो बस अभिव्यक्ति को एक में लपेटें NOT( ):

=NOT(AND(ISERROR(SEARCH(B$1:B$42, C1))))

यह मामला असंवेदनशील है। यदि आप चाहते हैं कि यह संवेदनशील हो, तो इसके SEARCHसाथ बदलें FIND

यह घोल उपजाऊ पाता है। इस मामले को संवेदनशील बनाने से "बंसन रोड" और "ऊबाउट क्वे" जैसी झूठी सकारात्मकता की संभावना कम हो जाती है। यदि किसी वाक्य की शुरुआत में सड़क का नाम कभी नहीं दिखाई देगा, तो आप कॉलम में प्रत्येक सड़क के नाम के लिए स्थान खाली करके इन प्रतिस्थापन मिलान झूठी सकारात्मकता को समाप्त कर सकते हैं  B। यदि एक वाक्य की शुरुआत में सड़क का नाम दिखाई दे सकता है , तो ऐसा करें और सूत्र को बदल दें

=AND(ISERROR(SEARCH(B$1:B$42," " & C1)))

“मि। कनॉट ड्राइव एक मर्सिडीज ”, एक ही काम करते हैं, लेकिन रिक्त स्थान संलग्न । यह अभी भी "श्री कनॉट को एक मर्सिडीज नहीं चलाती है?", तो आप मामले के संवेदनशील मार्ग पर जाना चाहते हैं।

मैंने कम संख्या में तार के लिए इस समाधान का परीक्षण किया है। यह संभव है कि यह विफल हो जाएगा अगर सड़कों की सूची बहुत लंबी है।


0

कॉन्टैक्ट्स ... ऑप्शन के साथ ऑटोफिल्टर का इस्तेमाल करें । यह आपको उन वस्तुओं को देखने की अनुमति देगा, जिनमें उनके भीतर दिए गए टेक्स्ट स्ट्रिंग हैं। पंक्तियों में स्ट्रिंग नहीं छिपी होगी।

संदर्भ

EDIT # 1 :

जैसा कि जेम्स जेनकिंस ने बताया, कॉन्टीनेंस के साथ ऑटोफिल्टर का उपयोग करते हुए ... शामिल उप-स्ट्रिंग्स की एक लंबी सूची को क्रमिक रूप से लागू करने की अनुमति नहीं दी जाएगी ........... यहाँ एक वैकल्पिक VBA आधारित दृष्टिकोण है।

कहें कि हमारे पास दो टैब "सड़कों" और "आइटम" के साथ एक कार्यपुस्तिका है। सड़कों की सूची A2 में शुरू होने वाली "सड़कों" टैब में है । फ़िल्टर की जाने वाली वस्तुओं की सूची A2 पर शुरू होने वाले "आइटम" टैब में है ।

यह मैक्रो पहले सड़कों की सूची को एक सरणी में पढ़ता है। सरणी को आइटम सूची में प्रत्येक आइटम के खिलाफ लागू किया जाता है। प्रत्येक आइटम पंक्ति या तो छिपी या प्रदर्शित होती है।

Sub FilterByList()
    Dim s1 As Worksheet, s2 As Worksheet
    Set s1 = Sheets("roads")
    Set s2 = Sheets("items")
    Dim N1 As Long, N2 As Long, L1 As Long, L2 As Long
    Dim r1 As Range, r2 As Range

    N1 = s1.Cells(Rows.Count, "A").End(xlUp).Row
    N2 = s2.Cells(Rows.Count, "A").End(xlUp).Row
    ReDim rds(1 To N1 - 1) As String
    For L = 2 To N1
        rds(L - 1) = s1.Cells(L, 1)
    Next L

    s2.Cells.EntireRow.Hidden = False
    For L2 = 2 To N2
        Set r2 = s2.Cells(L2, "A")
        v2 = r2.Value
        r2.EntireRow.Hidden = True
        For L1 = 2 To N1
            If InStr(1, v2, rds(L1 - 1)) > 0 Then
                r2.EntireRow.Hidden = False
            End If
        Next L1
    Next L2
End Sub

मुझे नहीं लगता कि यह ओपी की ज़रूरत को पूरा करेगा
जेम्स जेनकिंस

हाय जेम्स: आप सही हो सकते हैं! ............... मैं एक विकल्प के रूप में कुछ VBA पोस्ट करूँगा!
गैरी के छात्र

-1

आप उन्नत फ़िल्टर का उपयोग कर सकते हैं। नीचे पोस्ट पर एक नज़र डालें:

https://wmfexcel.com/2017/08/02/filter-a-lists-of-items-from-a-long-long-list/


2
आपका जवाब सिर्फ कुछ बाहरी एरेस्सोर्स को लिंक नहीं देना चाहिए (जो गायब हो सकता है)। इसे अपने दम पर खड़ा होना चाहिए। आप संदर्भ के रूप में लिंक रख सकते हैं।
xenoid
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.