22 июля 2014 года.
Я удивлён тем, что на мой сайт большинство попадает при поиске ответа по форме 305 для детских садов.
Если у Вас есть вопросы, то можете написать на почту alex@amcher.ru или coozr1@yandex.ru. Я отвечу Вам. Текст первоначальной записи от 20 марта 2014 года находится ниже.
Несколько лет назад для одного из детских садов я написал программу печати посещаемости детьми детского сада с разбивкой по группам.
Алгоритм работы очень простой.
Есть список детей. Дети могут уходить из детсада или приходить в детский сад. Сами списки детей в группах мы не трогаем, а ведём на одном листе EXCEL общий список. Причём, надо лишь ввести данные по ребёнку и указать номер группы.
Список детей, посещающих детсад, ведётся в ручном режиме.
Причина в том, то, что пользователи часто боятся излишней сложности.
В момент распределения детей по группам произойдет автоматическая сортировка детей по группам и алфавиту с перенумерацией списка детей в группе.
Программным путем задаем создание листов по имени группы и производим выборку данных из общего списка детей, используя объект Range для объединения записей по заданному критерию в диапазон выборки.
Этот механизм очень удобен. Он позволяет делать и обратную операцию по удалению ненужных записей по критерию.
Если необходимо, то выбранные записи, можно легко перенести не только на новый лист EXCEL, но и, например, в Word, создав его как новый объект приложения, с добавлением нового листа и сделав его видимым.
Все сведения в списке детей в данном проекте с помощью функции Rnd изменены.
Дата рождения представлена просто в виде чисел.
Механизм выборки записей хорошо представлен в книге Джона Уокенбаха, о которой я уже упоминал ранее.
Где-то в середине 90-х годов мне приходилось несколько раз встречаться с Касперским и что-то покупать из его разработок. Помню, что в первый раз он меня встречал сам, и мы шли к нему в офис через парк. В небольшой комнате, где он сидел, с одной стороны за его спиной висела длинная полка, уставленная книгами. Большинство из них было по программированию на языке оригинала, т.е.английского. Чтение книг в оригинале позволяло Касперскому всегда быть в курсе последних достижений в его области знаний, кроме этого, он уже тогда интенсивно использовал электронную почту. У российских авторов также есть хорошие работы в области программирования на VBA, но они все же вторичны и носят более прикладной характер. Книги Джона Уокенбаха фундаментальны. Примером фундаментальности изложения материала являются, например, книги Кнута по “Искусству программирования”, вышедшие сначала в США, а затем и сразу же в СССР в 1976-1977 годах. В 1979 году эта книга была настольной у меня и наших программистов. Книга к тому же ещё и академична, материал её был как и интересен, так и труден в освоении.
Замечание от 1 октября 2014 года.
Ещё раз хочу сказать о том, что алгоритм работы программы рассчитан на неопытного пользователя, который заполняет сведения о числе пропусков или посещаемости ребёнком детского сада в конце текущего или начале следующего месяца. Списки детей формируются программно, распечатываются по группам, а затем по записям воспитателей или бумажному журналу посещаемости заполняются в ручном режиме.
Что бы сделал я? Надо завести ещё один лист с данными о пропусках детей. Через форму, отражающую списки детей по группам, формировать на выделенном отдельном листе список детей, не пришедших в детский сад. Это надо делать ежедневно в одно и то же время или после завтрака, или до обеда. Списки пропусков надо формировать совместно с датой пропуска. В этом случае тогда можно будет в конце месяца или на любую дату распечатать уже полностью заполненные списки детей по группам. При этом существует лишь небольшая проблема с печатью дат на листе группы, но она легко решается программно. Останется и вторая проблема, которая является чисто организационной, но в то же время и основной,- за всем надо следить и делать вовремя. Поэтому проще так, как есть.
Форма 305. Списки посещения детьми детсада