Использование VBA для фильтрации по диапазону дат и ввода значения именованной ячейки в таблице

#excel #vba

Вопрос:

У меня есть переменные с именами ячеек, которые будет заполнять конечный пользователь. Дата начала = «VarStartDate», Дата окончания = «VarEndDate» и переменная в процентах = «AddVariationPer». Мне нужно заполнить столбец таблицы. Таблица = «Проекция». столбец таблицы = «Дополнительная вариация» со значением, вставленным в «AddVariationPer». Когда столбец «Дата 2021 года» находится между «VarStartDate» и «VarEndDate». Я кодировал по кругу. Любая помощь будет признательна. Заранее спасибо.

Ответ №1:

Может быть, я не понимаю вопроса — но почему VBA? = ЕСЛИ(И([Дата 2021 Года]>Дата начала,[Дата 2021 Года]>

Комментарии:

1. Привет и спасибо вам за ваши отзывы! Причина, по которой я думаю, что оператор IF не сработает, заключается в том, что параметр Addvariation может обновляться в течение года в разное время для разных диапазонов дат. Когда конечный пользователь обновляет VarStartDate, VarEndDate и AddVariationPer… Мне нужно, чтобы другие обновления этих переменных оставались в их ячейках и перезаписывались только в том случае, если на ту же дату был введен новый параметр AddVariationPer..

2. Тогда вам понадобится VBA. Вы все еще можете использовать эту формулу, и для ячеек, которые нужно «заморозить», вы делаете диапазон(«ячейка»).значение = Диапазон(«ячейка»).значение, которое копирует результат формулы в ячейку