![具有多个条件的高级筛选](https://linux22.com/image/1482681/%E5%85%B7%E6%9C%89%E5%A4%9A%E4%B8%AA%E6%9D%A1%E4%BB%B6%E7%9A%84%E9%AB%98%E7%BA%A7%E7%AD%9B%E9%80%89.png)
我有三张工作表
ConditionSheet
E5
:单元格&中具有条件值E7
SourceSheet
: 完整数据TargetSheet
:当我运行宏时,New worksheet
根据conditionSheet
值用这个名称创建。
我SourceSheet
想创建包含特定数据的新工作表。
在具有第一个标准和第二个标准的ConditionSheet
单元格中E5
E7
基于此我想创建新的工作表名称“TargetSheet”
在此,只有那些值与单元格值匹配且值与值匹配SourceSheet
的数据复制Column F
E5
ConditionalSheet
Column H
SourceSheet
E7
ConditionalSheet
第二个标准是可选的,所以我使用IIF
函数来传递条件。
以下命令复制所有数据,无论sourcesheet
是一个还是两个条件。
Sheets("SourceSheet").Range("A1:AB" & Worksheets("TargetSheet").Rows.Count).AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=IIf(Sheets("ConditionSheet").Range("E7") = "", Sheets("ConditionSheet").Range("E5:E5"), Sheets("ConditionSheet").Range("E5:E7")), _
CopyToRange:=Sheets("TargetSheet").Range("A1"), _
Unique:=True
我只想复制基于标准的数据。
请指导我。
(感谢观看者和回复的用户)