Как сделать выборку диапазона по значению в ячейках?

Paul Gudvin

Привет! Столкнулся с такой задачей, нужно вывести на отдельный лист значение из существующих колонок по условию. Например в две ячейки листа ввести диапазон даты, от и до которых нужно вывести значение . Но кроме диапазона колонки с датой, нужно вывести все значения других колонок, которые попадают в этот диапазон. Как это сделать макросом? Возможно кто-то решал подобные задачи? Если не трудно поделитесь ссылкой, или кодом. Пример страницы прикрепляю.
5 ответов

Paul Gudvin

Использовать фильтр чем не вариант? Если очень нужно макросом - ну запишите процесс в макрос.


Paul Gudvin

Добрый день! Пробовал записывать макросом фильтр, при записи фильтр срабатывает так как надо, потом когда загоняю записанный макрос в кнопку - не работает.. Вот код:
Private Sub CommandButton2_Click()
    Columns("A:A").Select
    Selection.AutoFilter
    ActiveSheet.Range("$A$1:$A$11").AutoFilter Field:=1, Criteria1:= _
        ">10/18/2017  8:00:00 AM", Operator:=xlAnd
End Sub


Paul Gudvin

Да, у меня тоже глючит. Не сумел победить. А что делать - даты должны быть датами, а не текстом непонятного никому вида...


Paul Gudvin

Paul Gudvin, а у меня сработало, как ни странно (Excel 2007 рус). Попробуйте так
    ActiveSheet.Range("$A$1:$A$11").AutoFilter Field:=1, Criteria1:= _
        ">" & Str(CDbl(#10/18/2017 8:00:00 AM#)), Operator:=xlAnd
Это преобразование даты в числовой вид с разделителем точка:
?">" & Str(CDbl(#10/18/2017 8:00:00 AM#))
> 43026.3333333333
Приложите файл с первым столбцом - работа автофильтра может зависеть также от формата.


Paul Gudvin

Там в файле первый столбец сплошь текст...