2016-03-29 8 views
0

列Dの条件でデータをフィルタリングし、列Cのフィルタデータを別のシートにコピーしようとしています。このコードは、データシートにある間にこのコードを実行すると動作しますが、実行されず、実行時エラー '1004'が返されます Rangeクラスの選択メソッドが失敗し、コードの最初の行が強調表示されます。 誰でもこのコードを任意のワークシートで実行できるように手伝ってくれますか?フィルタ処理されたデータを別のシートにコピー

Sheets("Data").Range("D1").Select 
ActiveSheet.Range("$A:$AI").AutoFilter Field:=4, Criteria1:= _ 
    "Production" 
Range(ActiveSheet.Range("C2"), ActiveSheet.Range("C2").End(xlDown)).Select 
Selection.Copy 
Sheets("Excluding List").Select 
Range("B3").Select 
Selection.PasteSpecial xlPasteValues 
Sheets("Data").Select 
Selection.AutoFilter 
Sheets("Data").Range("A1").Select 
ActiveSheet.EnableCalculation = False 
ActiveSheet.EnableCalculation = True 
+0

の上部にData.Activateを追加シート( "データ")を変更しません。レンジ( "D1")。シート( "データ")を選択します。すべての違いを作る選択? – Slubee

+0

いいえ、そうではありません。 IはActiveWorkbook.SlicerCaches( "Slicer_Excluding") .SlicerItems( "Y")とActiveWorkbook.SlicerCachesの各SLCRについて slcr.ClearManualFilter次SLCR を有している。選択した=偽 .SlicerItems( "N")。選択されました= True End With これはエラーを引き起こす可能性がありますか?これは私がそのコードの直前に持っているものです – BLkrn

+0

私はその行を削除してチェックしましたが、それでもなお良いものはありません – BLkrn

答えて

1

あなたのコード

+0

これはうまくいきました。なぜそれが必要なのか尋ねてもいいですか? – BLkrn

+0

わからない:)それだけで動作します – aFast

関連する問題