Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pr_Excel-11 (1).doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
1.41 Mб
Скачать

7. Разработка автоматизированного бланка

Начнем разработку следующего рабочего листа (рис.36). Следует заметить, что здесь на представленном фрагменте используются не элементы управления, а просто ячейки, отформатированные определенным образом. При этом сами фамилии набирать не требуется (необходимо лишь подобрать заливку и размер шрифта для вводимого в последующем текста). В качестве первого действия следует убрать сетку с рабочего листа и далее отформатировать ячейки (рис. 41).

Рис.41.

Теперь расположим на листе следующие элементы управления (рис.42).

Рис. 42.

На рис.42 присутствует новый элемент – переключатель. Этот элемент позволяет обеспечить два состояния - включено и выключено. Идея следующая – человек, заполняющий бланк, указывает (щелчком по одному из переключателей) откуда он - из Нижнего Новгорода или из другого города. При этом, в случае выбора другого города, в текстовом окне указывается город. На листе мы реализуем оформление следующим образом. В начальном виде установлен вариант - Н.Новгород, а текстовое окно city для выбора города невидимо (у свойство Visible установлено значение False). При щелчке на переключателе Другой город текстовое окно city для выбора города становится видимым (у свойство Visible устанавливается значение True).

Напишем процедуры обработки щелчков по переключателям:

Private Sub OptionButton1_Click()

OptionButton2.Value = False

City.Visible = False

End Sub

Private Sub OptionButton2_Click()

OptionButton1.Value = False

City.Visible = True

End Sub

Теперь выйдите из режима конструктора и проверьте написанные действия. На рис.43, 44 и 45 показаны фрагменты, которые нам необходимо далее создать на рабочем листе.

Рис. 43.

Рис. 44.

Рис.45.

После всех указанных действий лист примет вид аналогичный рис. 46.

Рис.46.

Теперь приведем процедуры ( выполняемые по щелчкам на объектах) для рабочего листа:

Private Sub St_Click()

TextBox1. Visible = True

TextBox2. Visible = True

TextBox3. Visible = False

TextBox4. Visible = False

End Sub

Private Sub Sp_Click()

TextBox1. Visible = False

TextBox2. Visible = False

TextBox3. Visible = True

TextBox4. Visible = True

End Sub

Введем некоторые уточнения. На нашей форме находится четыре переключателя (заголовки - Студент, Специалист, Н.Новгород и Другой город). По правилам только один из них может быть включен. Для того, чтобы разбить эти переключатели на две группы (Студент, Специалист и Н.Новгород, Другой город), необходимо выполнить следующие действия.

Откройте в режиме конструктора окно свойств переключателя Н.Новгород (OptionButton1) и измените свойство GroupName (вместо Лист1 введите Лист1_2). Тоже самое сделайте в окне свойств переключателя Другой город (OptionButton2). Тем самым мы выделили эти переключатели в новую группу. Теперь на созданной форме можно будет включить два переключателя.

Следующая задача – запись на второй лист введенных данных. На рис.47 показана таблица данных, которая будет заполняться автоматически по щелчке по кнопке.

Рис.47.

При этом для отображения полной картины выполненных действий на рис.48 показан первый лист в рабочем состоянии с введенными данными.

Рис.48.

Напишем обработку события щелчка по кнопке с названием - Записать на лист2. Текст процедуры, обрабатывающей данное событие, приводится далее.

Private Sub CommandButton2_Click()

‘ Подсчет количества записей на втором листе.

N = 0

While Worksheets(2).Cells(N + 2, 1).Value <> ""

N = N + 1

Wend

‘Заполнение очередной строки. Номер записывается в первую колонку.

Worksheets(2).Cells(N + 2, 1).Value = N + 1

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]