2017-08-17 2 views
0

別のワークシートのある列から別の列にユニークな値をコピーするという過去の投稿では、データのヘッダー行もコピーされていました。VBAを使用してリストから別のワークシートに一意の値を抽出する

私はコードを修正するためにいくつかの方法を試しましたが、VBAではうまく機能しませんでした。私はそれを動作させることができませんでした。誰もこのコードを修正して、ヘッダー行以外のある列から別の列に一意の値をコピーすることはできますか?

Sub AdvFilter() 
    Dim ws As Worksheet, sh As Worksheet 
    Dim rng As Range, Frng As Range 

    Set ws = Sheets("Flag Update (2)") 
    Set rng = ws.Range("A1") 
    Set sh = Sheets("ICM flags") 
    Set Frng = sh.Range("A:A") 

    Frng.AdvancedFilter Action:=xlFilterCopy, copytorange:=rng, Unique:=True 

End Sub 
+0

ヒント:ワークシートを作成する必要はありませんが、あなたのコード内の他の場所でそれらを使用しない場合は...あなたは、このようなコードを使用することができ、 'ws'と' sh'オブジェクト: 'set rng = Sheets(" Flag Update(2) ")。範囲(" A1 ")' – jsotola

答えて

0
Sub Module() 

Application.ScreenUpdating = False 

With Range("A1:A10") 
    .Copy .Offset(, 3) 
    .Offset(, 3).RemoveDuplicates Columns:=1, Header:=xlNo 
End With 

Application.ScreenUpdating = True 

End Sub 
+1

あなたの答えのコードが何をしているか説明してください。コードのみの回答は、簡単な英語の説明と組み合わせて使用​​するとより便利です。言い換えれば...あなたのコードをコメントする! – TylerH

関連する問題