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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 10.09.2010, 15:32   #1
GoreProgrammist
Пользователь
 
Регистрация: 13.07.2009
Сообщений: 52
По умолчанию Вопрос по логическим функциям Excel.

Люди подскажите пожалуйста.

Есть столбец с временем вида: (он привязан к строкам с данными, с 21:00 - 6:00 - считается как одна рабочая смена)

01.06.2010 21:00
01.06.2010 21:00
01.06.2010 22:00
01.06.2010 22:00
01.06.2010 22:00
01.06.2010 23:00
02.06.2010 00:00
02.06.2010 00:00
02.06.2010 01:00
...
02.06.2010 06:00
02.06.2010 21:00
02.06.2010 21:00

Как можно сделать другой столбец, в который бы каждый интервал времени смены (с 21:00 до 6:00) заполнялся бы как 1, следующий интервал как 2 итд итп по возрастанию?
GoreProgrammist вне форума Ответить с цитированием
Старый 10.09.2010, 16:26   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

если я правильно все понял... во вложении
Вложения
Тип файла: rar Книга400.rar (3.8 Кб, 13 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.09.2010, 16:31   #3
аналитика
Форумчанин
 
Регистрация: 14.05.2009
Сообщений: 311
По умолчанию

Цитата:
Сообщение от GoreProgrammist Посмотреть сообщение
интервал времени смены (с 21:00 до 6:00) заполнялся бы как 1, следующий интервал как 2 итд итп по возрастанию?
это я не понял, но вот что предлагаю:
=ЕСЛИ(ИЛИ(ЧАС(A1)>=21;ЧАС(A1)<=6);1 ;2)
аналитика вне форума Ответить с цитированием
Старый 10.09.2010, 16:33   #4
GoreProgrammist
Пользователь
 
Регистрация: 13.07.2009
Сообщений: 52
По умолчанию

Спасибо, немного не то имею ввиду:

на основании столбца дат, проставить признак смена, из расчёта : смена - с 21:00 до 6:00, дальше идёт смена +1.

Цитата:
01.06.2010 21:00 1ая смена
01.06.2010 21:00 1ая смена
01.06.2010 22:00 1ая смена
01.06.2010 22:00 1ая смена
01.06.2010 22:00 1ая смена
01.06.2010 23:00 1ая смена
02.06.2010 00:00 1ая смена
02.06.2010 00:00 1ая смена
02.06.2010 01:00 1ая смена
02.06.2010 01:00 1ая смена
02.06.2010 01:00 1ая смена
02.06.2010 02:00 1ая смена
02.06.2010 03:00 1ая смена
02.06.2010 04:00 1ая смена
02.06.2010 05:00 1ая смена
02.06.2010 05:00 1ая смена
02.06.2010 06:00 1ая смена
02.06.2010 21:00 2ая смена
02.06.2010 22:00 2ая смена
02.06.2010 22:00 2ая смена
02.06.2010 23:00 2ая смена
03.06.2010 00:00 2ая смена
03.06.2010 01:00 2ая смена
...
В общем виде задача звучит так:

Есть статистика за 3 месяца по работе сотрудников, сколько операций они делают.
Есть операции с коробками и штуками.
Нужно для каждого сотрудника посчитать производительность (кол-во подборов в час) по месяцам.

есть ещё такая тонкостишка: сотрудник не обязательно работает полную смену 9 часов, может и 8 и 7, поэтому надо складывать операции и делить не на кол-во часов в смене, а на количество, сколько реально он работал.
Вложения
Тип файла: rar Книга1.rar (794.4 Кб, 13 просмотров)

Последний раз редактировалось Stilet; 10.09.2010 в 18:00.
GoreProgrammist вне форума Ответить с цитированием
Старый 10.09.2010, 17:46   #5
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

А эту тонкость как понимать,не отметил третье совпадение.Не смотрел по другим позициям.Вам надо макрос.или результат

Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 10.09.2010, 17:51   #6
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

см.вложение
Вложения
Тип файла: rar Книга401.rar (512.4 Кб, 14 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.09.2010, 17:55   #7
GoreProgrammist
Пользователь
 
Регистрация: 13.07.2009
Сообщений: 52
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
А эту тонкость как понимать,не отметил третье совпадение.Не смотрел по другим позициям.Вам надо макрос.или результат

Лучше макрос, если получится без макроса можно и функциями.

Тонкость понимать так: берём первый пик (когда была первая операция в смене), берём последний пик (последняя операция за смену), складываем внутри пиков количество операций и делим на число часов, которые человек работал.
GoreProgrammist вне форума Ответить с цитированием
Старый 10.09.2010, 17:55   #8
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

я вообще не заморачивался со сменами - посчитал сколько подборов за месяц, разделил на количество строк с данным персонажем за месяц. Я так понимаю одна строка записи - это сколько штук подобрано за час. Вот с количеством подборов в смену - пришлось бы поморочится, а за час - получилось не очень сложно.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.09.2010, 17:57   #9
GoreProgrammist
Пользователь
 
Регистрация: 13.07.2009
Сообщений: 52
По умолчанию

Тонкость понимать так: берём первый пик (когда была первая операция в смене), берём последний пик (последняя операция за смену), складываем внутри пиков количество операций и делим на число часов, которые человек работал.

Цитата:
Сообщение от IgorGO Посмотреть сообщение
я вообще не заморачивался со сменами - посчитал сколько подборов за месяц, разделил на количество строк с данным персонажем за месяц. Я так понимаю одна строка записи - это сколько штук подобрано за час. Вот с количеством подборов в смену - пришлось бы поморочится, а за час - получилось не очень сложно.
Спасибо! сейчас посмотрю..

Последний раз редактировалось Stilet; 10.09.2010 в 18:01.
GoreProgrammist вне форума Ответить с цитированием
Старый 10.09.2010, 18:21   #10
GoreProgrammist
Пользователь
 
Регистрация: 13.07.2009
Сообщений: 52
По умолчанию

У меня все формулы на листе в 0 пересчитались.


=ЕСЛИ(СУММ((время>=H$2)*(время<I$2) *(Персона=$G3))=0;;СУММ((время>=H$2 )*(время<I$2)*(Персона=$G3)*штук)/СУММ((время>=H$2)*(время<I$2)*(Перс она=$G3)))

таак. условие ЕСЛИ проверяет находимся ли мы внутри месяца.

Если попадаем: считаем сколько было подборов и делим на кол-во строк?

только формула у меня не считает, выдаёт 0.
GoreProgrammist вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вопрос по функциям trim и empty Svetix PHP 4 01.06.2009 23:48
вопрос по математическим функциям - десятичный логарифм. на log10(x) marisha Помощь студентам 1 13.12.2008 10:14
Вопрос по функциям Antowka Паскаль, Turbo Pascal, PascalABC.NET 6 08.12.2008 22:45
глупый вопрос по функциям steck Общие вопросы Delphi 2 17.06.2007 15:40