У меня три листа
ConditionSheet
: наличие значения условия в ячейкеE5
иE7
SourceSheet
: полные данныеTargetSheet
: при запуске макроса создаетсяNew worksheet
с этим именем на основе значенияconditionSheet
.
Из SourceSheet
я хочу создать новый рабочий лист с конкретными данными.
В ячейке ConditionSheet
таблицы E5
имеющей 1-й критерий, и 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
Я хочу копировать только данные на основе критериев.
Пожалуйста, ведите меня.
(Спасибо за просмотр и ответили пользователи)