помогите с фильтром и подсчётом количества значений

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

к сожалению скорей всего версия экселя
таже самая история с копированием, изменением начальных конечных данных и т.п. :( :( :( :( :(

есть ещё предложения??
чёт у мя не хватает мозгов(((
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

А макрос сработает? Зеленая кнопка Поиск.
Вложения
INALL.zip
(37.28 КБ) 37 скачиваний
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

замечательно всё,кнопка работает
только можно сделать,чтобы воткнуть туда какой нить inputbox ,что бы дату и время вносить с клавиатуры, т.к. данные в файле меняться будут и нужно будет знать количество за внесённый руками промежуток( от даты "такой-то" времени "такого-то" до даты "другая" время "другое")
помогите плз если возможно
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

Ну вот так попробуйте. Только придется вводить (именно вводить, а не выделять ячейки) полностью, например 16.06.2010 22:01:27
В качестве значения по умолчанию стоит текущая дата. Список должен быть сортирован по столбцу К.
Вложения
INALL.zip
(38.08 КБ) 32 скачивания
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

Пришлось просить помощи на др. форуме. Вот такая формула будет работать

Код: Выделить всё

=СУММПРОИЗВ(($K$2:$K$65000>=$P$2)*($K$2:$K$65000<=$P$4)) 
или
=СУММПРОИЗВ(--($K$2:$K$65000>=$P$2)*($K$2:$K$65000<=$P$4))
В 2003 кол-во строк 65000 с чем-то, совсем забыл про это. Вместо 65000 поставьте реальное кол-во строк в вашей таблице.
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

спасибо огромнейшее за помошь
и кнопка работает и формула спасибо,спасибо,спасибо

только у меня возникла ещё одна проблемка: если фильтровать по другому столбцу, то наш фильтр по дате и времени не изменяет своего значения, а хотелось бы чтоб менял ещё в зависимости от другого фильтра
посмотрите пожалуйста

PS: у меня ещё один глупенький вопросик - а как сделать такую кнопку типа "периоды" :rolleyes: ???
Вложения
INALL.zip
(60.79 КБ) 28 скачиваний
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

Тогда, наверное, только макросом. Теперь может реагировать на фильтр по любому столбцу (просто пропускает скрытые строки).
Насчет кнопок: для 2007 вкладка Вставка и там выбираем фигуры, рисунки и пр., вставляем на лист, правой кнопкой - назначить макрос - выбираем макрос из списка - ок.
Для 2003 примерно то же (негде посмотреть). Можно еще в режиме Конструктора вставить элементы Форм или ActiveX и также назначить им макросы.
Вложения
INALL.zip
(21.02 КБ) 28 скачиваний
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

ОГРОМНЕЙШЕЕ человеческое СПАСИБО!!!!!!!!!!!!!!!!!
всё работает замечательно :o :o :D :D
kooleer
Сообщения: 52
Зарегистрирован: 18 июн 2010, 15:52

Блин,опять у меня с этим файлом проблема :( :
мы сделали фильтр по столбцу Н и он считал количество нормально, но када вписал в код менять значение в этом в фильтре столбца Н (в примере у нас сначала было 110, я поменял на 130), то первый просчёт по 110 делает правильно,а второй по 130 просто считает кол-во строк в диапазоне даты и времени, который мы вводим с клавиатуры.
прикрепляю файлик, код там внутри его
посмотрите плз ещё разок
Вложения
INALL.zip
(64.55 КБ) 32 скачивания
nilem
Сообщения: 112
Зарегистрирован: 14 ноя 2008, 01:59
Откуда: Уфа

Если так, то перед вторым пересчетом надо обнулить i. Добавьте i=0

Код: Выделить всё

...
Selection.AutoFilter field:=8, Criteria1:=130 ' фильтр по 130 столбец Н
i = 0
For Each poz In Range("K2:K" & Cells(Rows.Count, 11).End(xlUp).Row)
...
Ответить