Здравствуйте. Есть задача автоматизировать заполнение табеля рабочего времени в Excel, точнее у нас есть переработки, работа в выходные дни. Основа у меня уже готова, табель создается автоматически, автоматически вычисляются субботы и воскресенья и подкрашиваются, табель заполняется по дефолту, затем вручную расставляются все переработки, ночные смены, работа в выходные, автоматически заполняется список работников по категориям. Это основа. Теперь задача. Мне необходимо в готовом табеле после проставки вручную всех переработок по факту, привести данный табель в соответствие КЗОТу, т.е. за два дня суммарная переработка не должна составлять более 4 часов, ночная смена не более 7 часов, минимум должен быть один выходной день в неделю, переработки в ночную смену ставятся на ближайшую дневную смену. Делается все это не ради только табеля, табель как бонус, в основном все это делается для того, чтобы автоматически формировать служебки на каждого работника в отдельности, на каждый день переработок отдельно. Сейчас эти служебки пишутся вручную, постоянная путаница с ними, т.к. за месяц их может быть очень много, да и времени на них тратится минимум полдня... Как я это вижу. Т.е. надо как минимум одновременно искать по условиям "я">8 & "н">7 & "рв">8 и при выполнении хотя бы одного из условий выполнять распределение еще по условиям, таким как, сумма переработок за два дня не должна превышать 4 часов, если больше то распределять на следующие рабочие дни, удовлетворяющие условию, при этом исключая выходные дни. Несколько сумбурно, но пока я не могу придумать, как осуществить поиск по всей таблице хотя бы по условиям "я">8 or "н">7 or "рв">8. Т.е. задача пока организовать поиск одновременно по трем условиям и вернуть в переменную адрес ячейки, где одно из условий выполняется и продолжить поиск следующей ячейки, удовлетворяющей условию. Над условиями поиска еще надо думать, приведенные условия это тестовый вариант для старта, предусмотрены далеко не все варианты как поиска, так и распределения рабочего времени. Пока необходим пример, как организовать такой поиск? Каким образом можно реализовать такую задачу? Формулами думаю реализовать это дело нельзя, т.к. ячейки будут редактироваться вручную по факту переработок. Я средствами VBA организовал кнопку на листе табеля, к которой думаю и привязать этот макрос.
Здравствуйте. Есть задача автоматизировать заполнение табеля рабочего времени в Excel, точнее у нас есть переработки, работа в выходные дни. Основа у меня уже готова, табель создается автоматически, автоматически вычисляются субботы и воскресенья и подкрашиваются, табель заполняется по дефолту, затем вручную расставляются все переработки, ночные смены, работа в выходные, автоматически заполняется список работников по категориям. Это основа. Теперь задача. Мне необходимо в готовом табеле после проставки вручную всех переработок по факту, привести данный табель в соответствие КЗОТу, т.е. за два дня суммарная переработка не должна составлять более 4 часов, ночная смена не более 7 часов, минимум должен быть один выходной день в неделю, переработки в ночную смену ставятся на ближайшую дневную смену. Делается все это не ради только табеля, табель как бонус, в основном все это делается для того, чтобы автоматически формировать служебки на каждого работника в отдельности, на каждый день переработок отдельно. Сейчас эти служебки пишутся вручную, постоянная путаница с ними, т.к. за месяц их может быть очень много, да и времени на них тратится минимум полдня... Как я это вижу. Т.е. надо как минимум одновременно искать по условиям "я">8 & "н">7 & "рв">8 и при выполнении хотя бы одного из условий выполнять распределение еще по условиям, таким как, сумма переработок за два дня не должна превышать 4 часов, если больше то распределять на следующие рабочие дни, удовлетворяющие условию, при этом исключая выходные дни. Несколько сумбурно, но пока я не могу придумать, как осуществить поиск по всей таблице хотя бы по условиям "я">8 or "н">7 or "рв">8. Т.е. задача пока организовать поиск одновременно по трем условиям и вернуть в переменную адрес ячейки, где одно из условий выполняется и продолжить поиск следующей ячейки, удовлетворяющей условию. Над условиями поиска еще надо думать, приведенные условия это тестовый вариант для старта, предусмотрены далеко не все варианты как поиска, так и распределения рабочего времени. Пока необходим пример, как организовать такой поиск? Каким образом можно реализовать такую задачу? Формулами думаю реализовать это дело нельзя, т.к. ячейки будут редактироваться вручную по факту переработок. Я средствами VBA организовал кнопку на листе табеля, к которой думаю и привязать этот макрос.dark184
Т.е. осуществить поиск в определенной области ячеек сразу по нескольким условиям с возвратом адреса ячейки в переменную и продолжить поиск реализовать невозможно??? даже средствами VBA??? Я правильно понял???
Т.е. осуществить поиск в определенной области ячеек сразу по нескольким условиям с возвратом адреса ячейки в переменную и продолжить поиск реализовать невозможно??? даже средствами VBA??? Я правильно понял???dark184
Сообщение отредактировал dark184 - Пятница, 20.04.2018, 11:55
Да, после вашего сообщения увидел, что файл почему то не прикрепился. Вообще, если использовать метод Find и Findnext есть возможность задать ему хотя бы несколько строк, либо забить сразу "янрв" и знаки подстановки, что бы искал любой символ из заданной строки. Либо сейчас подумал, использовать "поиск решения"? Хотя поиск решения по моему не сильно подойдет.
Да, после вашего сообщения увидел, что файл почему то не прикрепился. Вообще, если использовать метод Find и Findnext есть возможность задать ему хотя бы несколько строк, либо забить сразу "янрв" и знаки подстановки, что бы искал любой символ из заданной строки. Либо сейчас подумал, использовать "поиск решения"? Хотя поиск решения по моему не сильно подойдет.dark184
Сообщение отредактировал dark184 - Пятница, 20.04.2018, 12:52
А нет примера как его юзать? Либо в самом экселе какой команде либо формуле соответствует, чтобы я мог просто записать макрос и посмотреть пример.
А нет примера как его юзать? Либо в самом экселе какой команде либо формуле соответствует, чтобы я мог просто записать макрос и посмотреть пример.dark184
Сообщение отредактировал dark184 - Воскресенье, 22.04.2018, 15:48