1-й шаг. Проектирование программы-примера
1-й шаг. Проектирование программы-примера
Поскольку мне не известно, с каким из VBA-приложений вы работаете, придется предложить вам в качестве примера нечто вполне типичное и, с другой стороны, потенциально полезное. Наша программа-пример должна будет открывать на экране новое окно с показанной в нем злободневной цитатой, а также датой и временем (я называю все это сообщением). Окно будет оставаться на экране до тех пор, пока пользователь не щелкнет на кнопке ОК.
Имея такое описание программы, вы можете без труда представить себе те элементы, из которых должна состоять программа.
* Очевидно, программа имеет одно окно, поэтому вам понадобится одна форма (UserForm).
* Для формы потребуются два элемента управления - надпись для сообщения и кнопка для команды ОК.
* Нужно будет также создать программный код для двух процедур: одной- для надписи, в которую нужно поместить сообщение, а другой - для выхода из программы, когда пользователь щелкнет на кнопке ОК.
Чего наша программа определенно не требует, так это отдельного модуля для ее VBA-кода (модуль - это отдельная единица программного кода, содержащая одну или несколько процедур; более подробно о модулях говорится в главе 6). Обе наши процедуры можно разместить в окне программного кода, ассоциированном с формой. В конце концов, ведь эти процедуры отвечают на события, которые происходят с формой.
Рассмотрим процедуру, отображающую сообщение и дату. Нам она не понадобится до тех пор, пока окно программы не появится на экране. В программе это произойдет, конечно, быстрее, чем вы глазом успеете моргнуть, но принцип остается - все равно эта процедура должна вызываться событием появления формы.
Процедура выхода из программы тоже вызывается событием, относящимся к форме, а именно - щелчком на кнопке ОК. Эту процедуру тоже можно разместить в окне программного кода формы.
Не забывайте, что у многих VBA-программ вообще нет своих окон. При создании такой программы вам непременно придется создать хотя бы один модуль, чтобы было куда поместить программный код.