Файл: Высшего образования российский государственный социальный университет.docx

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 22.11.2023

Просмотров: 52

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.



ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ОБРАЗОВАНИЯ

«РОССИЙСКИЙ ГОСУДАРСТВЕННЫЙ СОЦИАЛЬНЫЙ УНИВЕРСИТЕТ»



Оглавление

Тема 1 Пользовательские формы и элементы управления 1

Порядок выполнения 1

В отчет поместить 1

Как размещать свои ФИО на скриншотах 2

Лабораторная работа 2

Материалы по теме 2

Задание 1 (для всех) 8

Задание 2 (для всех) 9

Задание 3 (для всех) 9

Задание 4 (для всех) 11

Задание 5 (для всех) 13

Задание 6 (по вариантам) Разработать проект по сценарию 16

Дополнительные материалы по разделу (не обязательные) 21

Важно!!! 28

Тема 1
Пользовательские формы и элементы управления


Задания выполняются в форме лабораторной работы.

Порядок выполнения


Работу следует выполнять в Excel.

1. Прочитать материалы по теме, выполняя все указанные действия.

2. Выполнить общие задания 1-5 и индивидуальное задание 6 по номеру своего варианта, не забывая при этом делать скриншоты для отчета и формируя отчет

3. Подготовить отчет.

В отчет поместить


Скриншоты со своими пользовательских форм.

Листинги макросов.

Свои пояснения.

ВАЖНО!!! На скриншотах должны быть ФИО студента. Фотошоп распознаваем визуально.

Как размещать свои ФИО на скриншотах



Лабораторная работа


Задание: познакомиться пользовательскими формами и элементами управления.

Материалы по теме


Выполнять работу настоятельно рекомендуется в режиме «три окна», т.е. одновременно должны быть открыты, но не перекрывать друг друга окно Excel, окно редактора VisualBasic и окно Word с заданиями к лабораторной работе:




Пользовательские формы и элементы управления служат для создания удобного интерфейса приложений.

Пользовательская форма

Чтобы создать пользовательскую форму, надо в окне редактора VisualBasic выбрать Insert UserForm.



Появится макет пользовательской формы.



В окне Properties отображены свойства этой формы.

В окне Properties найти и изменить такие свойства формы, как имя, заголовок, ширина и высота, цвет. Заметим, что размеры пользовательской формы можно изменить, потянув мышью за белые прямоугольники на макете этой формы.

Запуск формы. Первый способ – кликнуть на зеленый треугольник (так мы запускали и макросы). Второй способ – с помощью метода Show. (Синтаксис: <Объект>.<Метод>). Добавьте программный модуль и введите код ЗапускФормы.

Sub ЗапускФормы ()

UserForm1.Show

End Sub

Выполните этот код пошагово. Для того, чтобы закрыть форму, кликните на крестик в правом верхнем углу формы.



Изменить свойства формы (имя, заголовок, ширина и высота, цвет и т.д.) можно, записав в коде оператора вида:

<ИмяФормы>.<Свойство> = <НовоеЗначениеСвойства>

Добавьте в код ЗапускФормы перед оператором UserForm1.Show оператор MsgBox (UserForm1.Height) и оператор UserForm1.Height = 600. Выполните код пошагово.

События и обработка событий.

Событиями являются: щелчок мыши, двойной щелчок мыши, движение мыши, инициализация формы и т.д. и т.п. Как правило, «самое популярное» событие – щелчок мыши. Кликните правой кнопкой мыши на макете формы и выберете в контекстном меню Viev Code.



Вы перешли в окно UserForm1 (Code). Полный список событий можно просмотреть в раскрывающемся списке в правом верхнем углу.





Запишем обработку события UserForm_Click (щелчок мыши на форме). Добавим в код

Private Sub UserForm_Click()
End Sub

оператор UserForm1.Hide (скрыть форму). Получится код

Private Sub UserForm_Click()

UserForm1.Hide

End Sub

Сохраните проект и выполните пошагово код ЗапускФормы.

Задание 1 (для всех)


Разработайте макрос «ПротоколСобытий», который при наступлении какого-либо события выводит сообщение «Наступило событие <НазваниеСобытия>» и помещает то же самое сообщение в первый столбец первого рабочего листа. Указание. Номер очередной строки – переменную k – следует описать в программный модуль до начала макроса, чтобы она была «видима» из всех кодов (Оператор Publiс k).

Порядок выполнения не приводится

Итак, состоялось первое знакомство с пользовательскими формами, свойствами, методами и событиями, а также с обработкой событий. Мы узнали, что для пользовательской формы заранее устанавливают свойства, методы, которые применяют к пользовательской форме, Show и Hide, событий же пользовательской форме обычно не назначают (пользователю вряд ли придет в голову кликать по форме), форма служит обычно местом размещения элементов управления.

Элемент управления Label (Надпись) служит для выведения сообщений пользователю. Этому элементу управления обычно, как и пользовательской форме, никаких событий не назначают. Элементу управления CommandBotton (Кнопка) обычно назначают событие Click (щелчок мыши), так как это интуитивно понятно пользователю. Свойства элементов управления Label и CommandBotton обычно устанавливают заранее и в дальнейшем не меняют. Тем не менее, при желании элементам управления Label и CommandBotton можно назначать и другие события, менять их свойства.

Задание 2 (для всех)


Создать форму. На форме разместить надпись Label1 «Вы хотите получить зачет автоматом?» и две кнопки: кнопку CommandBotton1 с надписью «Да» и кнопку CommandBotton2 с надписью «Нет». Назначить кнопке CommandBotton1 событие MouseMove, по которому координаты кнопки CommandBotton1 меняются случайным образом. Назначить кнопке CommandBotton2 событие Click, по которому надпись Label1 меняет сообщение на «Спасибо за участие в опросе».


Порядок выполнения не приводится

Знакомство с элементом управления TextBox (Поле для ввода), событием Change (Изменение), приемом коррекции данных, введенных с помощью TextBox, с элементами управления OptionButton (Радиокнопка) и CheckBox (Флажок).

Задание 3 (для всех)


Создать приложение, которое организует ввод целого числа в диапазоне от 1 до 10.

Порядок выполнения. Создадим форму UserForm1 (см. рис.)



В основном модуле создадим макрос «Proba», в котором поместим оператор UserForm1.Show (Показать форму UserForm1).

Полю для ввода (TextBox1) назначим событие Change (Изменить)

Private Sub TextBox1_Change()

k = TextBox1.Value

UserForm1.Hide

Cells(1, 1) = k

End Sub

При наступлении события Change (Изменить), переменной k будет присвоено значение – содержимое поля.

Выполним макрос «Proba» пошагово (обратите внимание – работаем в режиме «три окна»). Как только мы вводим один символ, форма скрывается. Это не всегда удобно, ведь пользователь мог ошибочно нажать на клавиатуре не ту клавишу, а исправить ошибку при этом невозможно.

Удалим обработчик события TextBox1_Change (Изменение Текстового поля). Назначим теперь командной кнопке с надписью «Ввод завершен» событие Click (Щелчок мыши).

Private Sub CommandButton1_Click()

k = TextBox1.Value

Cells(1, 1) = k

UserForm1.Hide

End Sub

Выполним теперь макрос «Proba» пошагово. Недостаток устранен, но нет гарантии, что пользователь введет именно целое число в диапазоне от 1 до 10. Значит, до оператора UserForm1.Hide необходимо проверить, является ли значение переменной k целым числом в диапазоне от 1 до 10 (продумать и разработать алгоритм проверки самостоятельно) и только в этом случае перейти к оператору UserForm1.Hide. Ели же введено нечто другое (текст либо дробное число и/или отрицательное число), необходимо организовать повторный ввод.

Создадим форму UserForm2 (см. рис.)



Если ввод был осуществлен неверно, то необходимо изменить надпись UserForm2.Label1, указав, какая именно ошибка была допущена при вводе и показать форму UserForm2. Командной кнопке с надписью «Повторить ввод» назначить событие Щелчок Мыши, по которому