2012-10-11 17 views
10

में समान पंक्तियों पर डुप्लिकेट को संरेखित कैसे करें यह एक साधारण सवाल है जिसका मैं जवाब नहीं दे सकता। जैसेएक्सेल

Col1 Col2 
A  C 
B  I 
C  E 
D  D 
E  A 
F  F 
G  B 
H  
I  

मैं दो कॉलम क्रमबद्ध करना चाहते हैं ताकि एक ही मूल्यों दो कॉलम में एक ही पंक्तियों पर गठबंधन कर रहे हैं,:

Col1 Col2 
A  A 
B  B 
C  C 
D  D 
E  E 
F  F 
G  
H  
I  I 
K  

मैं Excel में दो कॉलम इस तरह की राशि

Sub HighlightDups() 
    Dim i, LastRowA, LastRowB 
    LastRowA = Range("A" & Rows.Count).End(xlUp).Row 
    LastRowB = Range("B" & Rows.Count).End(xlUp).Row 
    Columns("A:A").Interior.ColorIndex = xlNone 
    Columns("B:B").Interior.ColorIndex = xlNone 
    For i = 1 To LastRowA 
     If Application.CountIf(Range("B:B"), Cells(i, "A")) > 0 Then 
      Cells(i, "A").Interior.ColorIndex = 36 
     End If 
    Next 
    For i = 1 To LastRowB 
     If Application.CountIf(Range("A:A"), Cells(i, "B")) > 0 Then 
      Cells(i, "B").Interior.ColorIndex = 36 
     End If 
    Next 
End Sub 

लेकिन इस कोड जू:

अब तक, मैं निम्नलिखित VBA कोड की कोशिश की है सेंट डुप्लिकेट ढूंढने में मदद करता है और दो स्तंभों में एक ही पंक्तियों पर डुप्लिकेट डालने में विफल रहता है।

मुझे आश्चर्य है कि क्या आप थोड़ा मदद दे सकते हैं?

बहुत बहुत धन्यवाद।

उत्तर

30

VBA के बिना

  • स्तंभ बी में कोई खाली स्तंभ
  • बी 1 में डाल =IF(ISNA(MATCH(A1,C:C,0)),"",INDEX(C:C,MATCH(A1,C:C,0))) डालें और
  • प्रतिलिपि लिख लें और खुद से भी ज्यादा पीछे पेस्ट स्तंभ बी के रूप में मान सूत्रों को दूर करने के

वीबीए

में
Sub Macro1() 
    Dim rng1 As Range 
    Set rng1 = Range([a1], Cells(Rows.Count, "A").End(xlUp)) 
    rng1.Offset(0, 1).Columns.Insert 
    With rng1.Offset(0, 1) 
     .FormulaR1C1 = _ 
     "=IF(ISNA(MATCH(RC[-1],C[1],0)),"""",INDEX(C[1],MATCH(RC[-1],C[1],0)))" 
     .Value = .Value 
    End With 
End Sub 
+1

शानदार! आपका वीबीए कोड बस चाल करता है। आपको बहुत धन्यवाद। –

-1

VBA

  • C1 में बिना डाल = VLOOKUP (ए: ए, बी: बी, 1)
  • यदि आप एकाधिक स्तंभों है, ई 1 में डाल = VLOOKUP (ए: एक , बी: डी, ​​2) .... अंतिम अंक तदनुसार 1 (कोला बी), 2 (कोला सी) 3 (कर्नल डी) में बदलना चाहिए।

आप कॉपी और प्रत्येक सरणी आप अलग-अलग कॉलम तदनुसार में तलाश कर रहे हैं के लिए इस पेस्ट करना होगा, लेकिन आप को कॉपी करें और आसानी से

आशा इस में मदद करता है एक स्तंभ नीचे पेस्ट करने के लिए सक्षम होना चाहिए। अगर आपके कोई प्रश्न हैं तो कृपया मुझे बताएं