- •Часть 1. Макросы в формах Word
- •Часть 2. Макросы в формах Excel
- •Часть 1. Макросы в формах Word
- •1. Создание формы.
- •Ход работы.
- •Selection.TypeParagraph Selection.TypeParagraph
- •I ‘Вставка адреса, если ‘установлен ‘соответствующий флажок f chkAddress Then
- •Selection.TypeParagraph
- •Часть 2. Макросы в формах Excel. Пример создания базы данных.
Selection.TypeParagraph
Selection.TypeParagraph
End If
I
‘Вставка адреса электронной почты, если установлен ‘соответствующий флажок
f chkEmail ThenSelection.TypeText Text:= “ email: spetrov@yndex.ru”
Selection.TypeParagraph
End If
End
End Sub
Добавьте инструкцию Selection.Font.Size=12 в начало частей кода для отображения номеров телефона и факса и адреса электронной почты.
Проверьте работу созданной формы.
Для этого вернитесь в Word ,создайте новый документ и нажмите кнопку на панели инструментов.
Попробуйте установить отдельные флажки в окне диалога и щелкнуть на кнопке Создать заголовок.
Часть 2. Макросы в формах Excel. Пример создания базы данных.
Задание. Необходимо создать программу, заполняющую простую базу данных регистрации клиентов отеля на рабочем листе База с помощью формы. База данных будет заполняться программой.
АЛГОРИТМ
Переименуйте лист1 в База
Создайте шапку заголовков для базы данных (см. рисунок выше). Выделите вторую строку рабочего листа "База" и выполните команду Вкладка Вид Закрепить области. Теперь заголовок будет присутствовать на экране постоянно при просмотре любых записей базы.
Добавьте на лист автофигуру с текстом "Ввод данных".
Перейдите в редактор VBA, добавьте новую форму UserForm и добавьте на форму элементы управления в соответствии с рисунком (см. ниже)
В окне свойств задайте следующие свойства для элемента управления SpinButton1; Свойства Min,Max объекта счетчик определяют минимальное и максимальное значения счетчика с указанным номером. Задайте мин=1, макс = 100
Дважды щелкните ЛК мыши по форме, откроется окно кода. Найдите в верхней части окна кода слева объект Form, справа - событие Initialize
Внутри обработчика события запишите код, заполняющий список, задающий начальное значение для счетчика и очищающий все текстовые поля
Напишем обработчик события, синхронизирующий нажатие счетчика со значением в текстовом поле. Для этого дважды щелкните ЛК мыши по объекту счетчик = SpinButton1 и в открывшемся обработчике событий напишите следующий код:
Напишем обработчик события, который переносит все данные из формы на лист База. Дважды щелкните ЛК мыши по кнопке ОК, откроется окно кода. Запишем код, заполняющий базу данных
.
Вернитесь на рабочий лист База, вызовите контекстное меню для автофигуры. И выберите создать макрос. В созданном макросе напишите код, вызывающий форму . Для этого напишите следующий обработчик :
UserForm1.show
Протестируйте работу программы
САМОСТОЯТЕЛЬНАЯ РАБОТА (7-10 БАЛЛОВ)
Добавьте возможность поиска клиента по фамилии, возможность удаления найденного клиента из БД, и возможность сортировки. Используйте алгоритм, представленный ниже
Процедура удаления
Процедура сортировки
Количество = Application.CountA( Sheets("База").Range("c:c")) +1
Range ( Cells(2,1), Cells(Количество,7)).Select
Selection. SortKey:=Range("A2")