2017-08-27 9 views
0

VBAでAdvancedFilterを使用してリストのエクスポートを作成しようとしています。私の問題は、動作するコードではなく、私が使用しようとしている基準である。私は使用しているRAWデータセットのSUMIFである値をフィルタリングしたい。したがって、RAWデータ= sumif(m:m、a:a、a2)の場合、< 2の場合は、リストから除外します。私はどのようにこれを私の基準(Range a1:a2)に入れますか? sumifsの数式を含む元のデータセットに新しい列を作成し、その基準を基にした唯一のソリューションですか?参照SUMIFを基準として使用するAdvancedFilter

FilterData() 

Sheets("RAW").Range("A1:n2000").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:= _ 
    Sheets("Criteria").Range("a1:a2"), CopyToRange:=Sheets("EXPORT").Range("A1:n1"), Unique:=True 
Columns.AutoFit 
Cells.WrapText = False 
    End Sub 

答えて

0

ため

コードあなたはセルをロックすることなく、最初のデータリストの行を参照し、多分シートの上面に、基準時の空白のセルと別のセルの数式を設定することができる。

例は、事前フィルタリング

range("A10:M2010") 

である

その後、

その後、

list range as $A$10:$M$2010 

を選択し、事前フィルターを使用し

=sumif($M$10:$M$2010,$A$10:$A10$2010,A10)<2 

と至近距離( "A1")を残して、

:210

range("A2") 

は、としてあなたの基準を置きます

criteria range as 'SheetName'!$A$1:$A$2 (Blank cell, and formula) 

Excel will d oフィルタリングする範囲の右側に別の列を作成した場合と同じことをフィルタリングします。

フィルタでこれを試し、別の場所でコピーしてください。ここで

は(エクセルのイタリア語版で)サンプルです:

Sample of the answer

関連する問題