2011-12-07 7 views
17

लगता है मैं A स्तंभ की तरहएक नंबर की एक पंक्ति सूचकांक हुआ पहला

 A column 
      2 
      3 
      4 
      2 
      5 
      6 
      4 
      3 
      4 

मैं एक विशेष संख्या है कि पहली बार होने की पंक्ति सूचकांक चाहते यादृच्छिक क्रम में मानों की है। कहते हैं कि अगर मैं कहना संख्या 4 है दिए गए मान होना चाहिए 3

मैं भी एक विशेष संख्या कि last.say हुई अगर मैं कहना संख्या 3 है की पंक्ति सूचकांक चाहते तो दिए गए मान 8

होना चाहिए

मैं सोच रहा था Vlookup या find समारोह काम करना चाहिए, लेकिन उन्हें ORDER.PLEASE में डाल करने में असमर्थ मुझे इन

+0

मुझे लगता है कि आप स्तंभ मान से अधिक पाश की जरूरत की अंतिम घटना। – chance

+0

@ चांस मैं आपकी मदद की सराहना करता हूं लेकिन मुझे पता है कि मुझे विश्वास है कि एक अंतर्निहित फ़ंक्शन होना चाहिए शायद मुझे लगता है कि – niko

उत्तर

36

मेरे उदाहरण संख्या 3 लिए देख रहे हैं के साथ मदद, लेकिन यह अनुकूलित करने के लिए आसान है।

पहला मामला जानने के लिए, आप का उपयोग कर सकते हैं:

=MATCH(3,A:A,0) 

पिछले एक खोजने के लिए, आप एक सरणी सूत्र का उपयोग कर सकते हैं (साथ Ctrl +शिफ्ट + मान्य दर्ज)

{=MAX(IF(A1:A10=3,ROW(A1:A10),0))} 

ध्यान दें कि आप MIN के साथ पहले व्यक्ति के लिए एक सरणी सूत्र भी इस्तेमाल कर सकते थे लेकिन यह होगा इसके लायक होने के लिए काफी जटिल है।

+1

प्रतिभा को अपनी सादगी में लूपिंग से अधिक अनुकूलित किया गया है !!! –

+0

और यदि आपको बार-बार एक ही पाठ को खोजने की ज़रूरत है, लेकिन विभिन्न "खंड" या समूहों के भीतर, ए के लिए: एक अन्य MATCH और अप्रत्यक्ष के संयोजन में एक विकल्प – tbone

2

हाय दोस्त आप मैक्रो का उपयोग कर सकते हैं इस

निम्नलिखित कोड

Sub FindNumbers() 

    Sheet1.Range("B:D") = "" 
    Application.ScreenUpdating = False 
    tot = Sheet1.Range("A1048575").End(xlUp).Row 
    i = 1 
    k = 1 
    m = 1 
    n = 1 
    o = 1 
    p = 1 

    For i = 1 To tot 
      c = Application.WorksheetFunction.CountIf(Sheet1.Range("B:B"), Sheet1.Range("A" & i).Value) 
      If c <= 0 Then 
      Sheet1.Range("B" & k).Value = Sheet1.Range("A" & i).Value 
      k = k + 1 
      End If 
    Next 

    tots = Sheet1.Range("B1048575").End(xlUp).Row 

    For m = 1 To tots 
     For n = 1 To tot 
      If Sheet1.Range("B" & m).Value = Sheet1.Range("A" & n).Value Then 
      Sheet1.Range("D" & m).Value = n 
      End If 
     Next 
    Next 

    For o = 1 To tots 
     For p = 1 To tot 
      If Sheet1.Range("B" & o).Value = Sheet1.Range("A" & p).Value Then 
      Sheet1.Range("C" & o).Value = p 
      p = tot 
      End If 
     Next 
    Next 

    Application.ScreenUpdating = True 

End Sub 

का प्रयोग कैसे करना है कोड उपयोग कैसे करें? (मामले में आप मैक्रो के लिए नए हैं)

  1. खुला एक नया Excel फ़ाइल

  2. Alt + F11

  3. एक नया मॉड्यूल

  4. डालें मॉड्यूल में कूट डालें

  5. एक्सेल शीट पर वापस जाएं और एक बटन जोड़ें

  6. बटन

  7. पर एक्सेल को 'एक्सेल' खोजें।xlsm प्रारूप आप एक्सेल 2007 या 2010

  8. सहायता

  9. स्तम्भ A उपयोग कर रहे हैं: स्तंभ एक में अपने डेटा दर्ज करें और बटन पर क्लिक करें या मैक्रो

  10. बटन दबाएं चलाने के लिए या मैक्रो चलाने

आपका परिणाम इस

कॉलम बी तरह होगा: संख्या है कि डेटा entere में अद्वितीय हैं कॉलम में घ एक

कॉलम सी: डेटा

स्तंभ D सबसे पहले घटना: डेटा