2016-11-22 12 views
0

私のCSVファイルに200,000件以上の顧客データレコードがあります。アカウント番号と商品名を比較するマクロを作成したいと考えています。アカウント#はプライマリキーであるため、単一の商品名にのみ関連付けることができます。VBA 2つの列マクロに基づいて重複行を削除します

同様の出力をマクロに与えたい。今は200kを超えるレコードでマクロを実行しています。私はわずか20行しか得られません。事前に

enter image description here

Sub DelDupl() 
Dim Rng As Range, Dn As Range, Del As Integer, Msg As Integer 
Set Rng = Range(Range("C2"), Range("C" & Rows.Count).End(xlUp)) 
For Msg = 1 To 2 
    For Del = Rng.Count To 1 Step -1 
     If Msg = 1 And Application.CountIf(Rng, Cells(Del, "C")) = 1 Then 

     End If 
     If Msg = 2 And Application.CountIf(Rng, Cells(Del, "C")) > 1 Then 
      Rows(Del).EntireRow.Delete 
     End If 
    Next Del 
Next Msg 
End Sub 

ありがとう!

+2

あなたは*データを使用してみました>>重複を削除*? –

+0

ユニークな口座番号の行だけが残っていればいいですか?並べ替えをしてからループし、上記と等しい場合は行を削除しないでください。 – atclaus

+0

あなたの質問では、*アカウント#はプライマリキーなので、単一の製品名に結びつけることができます*しかし、あなたは本当に意味する*アカウント#はプライマリキーなので、 *名前。*?その場合は、現在スキャンしていないため、質問を更新する必要があります。 –

答えて

関連する問題