Читайте также: |
|
На рабочем листе Реквизиты (рис. 7.12.) расположена база данных о клиентах и информация об автомобиле, которая необходима для автоматизированного создания доверенности. Только табличной базой данных ее можно назвать условно, потому что нарушены некоторые принципы формирования списка Excel.
Поля и записи области ввода данных, полностью удовлетворяет условиям списка - содержат однотипную информацию в каждом столбце и расположены построчно. А заголовок в табличной базе данных должен содержаться в одной строке.
Рис. 7.10. Модули написания прописью количества лет, месяцев и дней между двумя датами
Рис. 7.11. Структура потоков информации и содержания рабочих листов создаваемого приложения
На листе Реквизиты, для удобства группировки данных, заголовок содержит три строки (область А1:АF3). Данные первой строки проводят группировку по месту и дате заключения доверенности, данным по каждому клиенту и автомобилю. Во второй строке данные группируются более детализировано. Например, данные по клиенту - кто, удостоверяющий его документ и место проживания. По автомобилю - данные свидетельства о регистрации и данные об автомобиле. Из-за удобства этих группировок, отдельные ячейки всех трех строк заголовка объединены.
В четверной строке введены порядковые номера столбцов от 0 до 31.
Из-за того, что заголовок состоит из трех строк невозможно установить Автофильтр и применить диалоговое окно Форма. Это будет затруднять поиск необходимой информации и ввод данных.
Удобный просмотр данных можно осуществлять при помощи фильтрации. Это будет возможно при удалении трех верхних строк 1:3. Но удалять эти строки на созданном рабочем листе Реквизиты не совсем корректно. Для этого желательно создать точную копию листа, а после просмотра данных этот лист удалить. Но проведение этой операции вручную трудоемко. Для ускорения процесса последовательно запишем три макроса.
Рис. 7.12. Рабочий лист Реквизиты с информацией о клиентах и автомобилях
Макросы
Макрос СоздатьСписок
Для записи макроса СоздатьСписок выполните следующие действия:
Записанный макрос после ввода комментариев будет выглядеть как на рис. 7.13. (кроме строки Макрос создания кнопки, которая будет рассмотрена далее). Поместите на листе Реквизиты кнопку и назначьте ей созданный макрос.
Вначале макрос создает копию листа Реквизиты. Цифра 6 указывает на то, что этот лист будет находиться шестым по счету слева направо.
Copy Before:=Sheets(6)
Макрос УдалитьСписок
Если отсутствует потребность в созданной копии базы данных в виде списка, то для его удаления напишите макрос УдалитьСписок, выполнив последовательность действий:
Макрос СозданиеКнопки
Для создания кнопки, нажатие на которую вызовет выполнение макроса УдалитьСписок, запишите макрос СозданиеКнопки. При записи макроса предполагается, что панель Формы не активизирована, поэтому при записи макроса предполагается ее активизация. Действия:
Теперь при нажатии на созданную кнопку лист Реквизиты(2) вместе с созданной кнопкой будет удален или самоликвидирован.
После написания макроса, первую и четвертую строку кода, можете удалить, или перевести в разряд примечаний.
Введение выполнения макроса в другой макрос
Для того чтобы при создании листа Реквизиты(2) была создана кнопка удаления этого листа, нужно задать из макроса СозданиеСписка ссылку на выполнение макроса СозданиеКнопки. Для этого перейдите в Редакторе Visual Basic на макрос СозданиеКнопки, выделите имя макроса после оператора Sub и скопируйте в буфер обмена. Перейдите в макрос СозданиеСписка и произведите вставку в строке перед командой перехода на ячейку В2.
Обманите Excel
Как видите, для того чтобы воспользоваться Автофильтром, необходимо таблице задать параметры списка, для чего нужно проделать ряд не совсем удобных процедур. Это не совсем удобно. Попытайтесь обмануть Excel!
Для этого выполните следующее:
Почему это произошло будет описано в следующих главах.
Рис. 7.13. Окно программ Редактора Visual Basic с макросами создания точной копии листа, создания и присвоения кнопки и удаления листа
Дата добавления: 2015-07-19; просмотров: 61 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Доверенности | | | Рабочий лист Действия |