Автофильтр в Excel с использованием VBA на основе введенного пользователем диапазона дат - PullRequest
0 голосов
/ 09 февраля 2019

Tl;dr: Как я могу использовать VBA для автофильтрации дат на основе дат, введенных в две ячейки (одна для даты начала и одна для даты окончания)?

Я пытаюсь автофильтровать с VBA в Excel.У меня есть набор данных, который содержит несколько строк (которые меняются в количестве строк каждый день).Видя, как у меня может быть макрос, который будет автоматически удалять даты, выходящие за пределы диапазона, который пользователь вводит в две ячейки (одна для начала диапазона дат и одна для конца диапазона дат).У меня есть код, который извлекает данные из их источника и форматирует их, но код для удаления строк, которые выходят за пределы диапазона дат, которого у меня сейчас нет.Даты могут постоянно меняться, некоторые до даты начала, а некоторые после даты окончания.

Например, если пользователь вводит дату начала 2/1/2019 и дату окончания 3/1/ 2019, тогда автофильтр будет удалять любые до 2/1 и любые после 3/1.У следующей недели может быть совершенно другая дата начала и окончания, поэтому она должна исходить из ячеек, а не самих дат, введенных в коде.

Цель состоит в том, чтобы в конечном итоге подсчитать числодаты, которые появляются в этом наборе данных в заданном диапазоне дат, так что в качестве альтернативы данные могут остаться неизменными и просто иметь количество этих дат.Однако я бы хотел этого избежать, так как в конечном итоге он попадет в отчет, и я не хочу путать читателей отчета, если он содержит более старые даты / даты после диапазона дат.

, о котором я упоминал впервый абзац, что данные могут измениться.Это связано с тем, что строки над набором данных могут быть удалены или добавлены.Я не проверял это, но решение, которое я видел, здесь, где диапазон всегда будет указан правильно.https://www.thespreadsheetguru.com/blog/5-ways-to-create-a-dynamic-auto-adjusting-vba-range

...