Так как вы указываете, что хотите, чтобы проверка пришла от Sheet2
, вам необходимо добавить это в формулу Formula1:="=Sheet2!$B$1:$B$6"
.
Я бы также добавил .delete
, чтобы сначала очистить все предыдущие проверки - иначе вы, скорее всего, столкнетесь с ошибкой, если у вас были какие-либо проверки из предыдущих попыток.
With Range("A1:A100")
With .Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=Sheet2!$B$1:$B$6"
End With
End With
Наконец, вы действительно должны рассмотреть вопрос о квалификации вашего Range("A1:A100")
с вашим рабочим листом, так что-то вроде
With Worksheets("Sheet1").Range("A1:A100")
И, что еще лучше, рассмотрите возможность дополнения вышеперечисленного своей рабочей тетрадью.