Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 01.06.2009, 10:27   #11
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Только данные подставляются как-то странно. Можно сделать подставление целиком недели, при наличии данных?
ruavia3 вне форума Ответить с цитированием
Старый 01.06.2009, 10:35   #12
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Можно. Но тогда от условия 3 ничего зависеть не будет. Посмотрите вложение (оптимизированное). Что не так?
P.S. Если выбирать данные за всю неделю то большую часть кода можно вообще выбросить, а в строках 14 и 17 прописать соответствующие формулы.
Вложения
Тип файла: rar file_4.rar (20.1 Кб, 8 просмотров)
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 01.06.2009 в 10:48. Причина: Добавлено
SAS888 вне форума Ответить с цитированием
Старый 01.06.2009, 10:57   #13
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Не работает.
3 условие - уникальное условие, которое не повторяется, но с помощью него выбирается определенный №. Условия 1 и 2 могут и даты в столбце А на закладке "Данные" могут повторяться.
К примеру, на определенном предприятии(усл.1) , у определенного начальника (усл.2) работает сотрудник (усл.3).
Нужно с помощью формы, выбирать неделю(по факту выбирается день на календаре, а на Sheet1 заполняется диапазон C3:O9 в разбивке по дням)
Выбираем предприятие (усл.1), выбираем начальника (усл.2), а в Combobox3 - выбираем из списка, соответствующих условиям 1 и 2 сотрудников, нужного.

В итоге. Мы получаем детальную неделю по сотруднику, в стр. 14 среднее за неделю по сотрудникам, которые подчиняются начальнику, в стр.17 среднее за неделю по предприятию.


Возможное заполнение листа "данные" в приложенном примере.
Вложения
Тип файла: rar file_4.rar (19.9 Кб, 10 просмотров)

Последний раз редактировалось ruavia3; 01.06.2009 в 11:00.
ruavia3 вне форума Ответить с цитированием
Старый 01.06.2009, 11:05   #14
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Давайте разберемся. Что не работает? Как должно быть?
Сейчас из листа "данные" выбираются и заносятся в лист "Sheet1" данные за всю неделю, не зависимо от условий (а как нужно? Вы сами просили "за всю неделю"). Затем, на основании условий, в строках 14 и 17 вычисляется среднее арифметическое по столбцам, в зависимости от условий. В строке 14 - ср. ариифм. только тех данных, которые удовлетворяют условиям 1 и 2. В строке 17 - ср. ариифм. данных, которые удовлетворяют условию 1. А как должно быть? И при чем здесь тогда условие 3?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 01.06.2009, 11:20   #15
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Все правильно, насчет 14 и 17 стр. А вот условие 3 как раз нужно для правильного заполнения диапазона Sheet1.(C3:O9). Диапазон заполняется данными из листа "Данные", согласно , т.к. за одну и туже неделю может работать несколько сотрудников, а нам нужно выбрать для рассмотрения только одного.

p.s. на листе Sheet1. данные за неделю идут в разбивке по дням. В ячейках A3:А9 - идет обозначение дней. При работе макроса даты в этом диапазоне почему-то затираются.

Последний раз редактировалось ruavia3; 01.06.2009 в 11:32.
ruavia3 вне форума Ответить с цитированием
Старый 01.06.2009, 11:36   #16
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Изначально, я так и сделал. Но Вы сказали, что
Цитата:
данные подставляются как-то странно. Можно сделать подставление целиком недели, при наличии данных?
Вот я и сделал вывод данных за неделю, не зависимо от условий.
Если Вы упорно не хотите говорить, как Вам все-таки нужно, попробую догадаться сам:
1. Выбираем дату в календаре. В результате получаем нужную рабочую неделю.
2. Согласно условиям ( с 1 по 3) выбираем все строки из листа "данные". Получаем 4 условия. 1... 3 - условия из формы, 4 - диапазон дат (выбранная неделя).
Если все так, то из представленных Вами данных будет выбрано не более 1 строки, т.к. условие 3 - уникально. Так было сделано изначально. По-видимому, Вам нужно что-то другое. Может все-таки скажите, что именно?
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 01.06.2009, 11:52   #17
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Я понял ошибку. условие 3 уникально только в одной дате, т.е. в другой день недели этот же номер может встретиться еще раз.
ruavia3 вне форума Ответить с цитированием
Старый 01.06.2009, 12:59   #18
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите следующее вложение. В строках 14 и 17 вычисляется ср. арифм. по условиям за всю неделю, а в строки с 1 по 9 заносятся данные, удовлетворяющие всем 3-м условиям в диапазоне выбранной недели.
Вложения
Тип файла: rar file_5.rar (19.2 Кб, 11 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 01.06.2009, 13:03   #19
ruavia3
Форумчанин
 
Регистрация: 13.03.2009
Сообщений: 253
По умолчанию

Разбираю код)

Последний раз редактировалось ruavia3; 01.06.2009 в 13:12.
ruavia3 вне форума Ответить с цитированием
Старый 01.06.2009, 13:12   #20
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Можно. В одном из предыдущих вариантов, я в столбец "A" заносил дату найденной (удовлетворяющей 3-м условиям) строки. Теперь этого нет. Можно записать [С3:O9].ClearContents
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отследить нажатие кнопки со стрелкой для раскрытия поля со списком Bezdar Microsoft Office Excel 4 16.03.2010 12:47
как создать процедуру для кнопки которая еще не создана? DeepPurple Общие вопросы Delphi 10 21.05.2009 13:50
Насколько можетбыть коротким код для решения задчки для Экселя? saga Microsoft Office Excel 0 04.04.2009 13:35
Код рекламной кнопки Extreme HTML и CSS 1 08.03.2009 16:03
Delphi. Код для кнопки. Xeon332 Помощь студентам 6 20.09.2008 07:03