Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

8495

.pdf
Скачиваний:
0
Добавлен:
25.11.2023
Размер:
1.66 Mб
Скачать

7.Составить программу вычисления количества четных элементов в каждой строке матрицы А размера 5 5. Результат вычислений записать в одномерный массив.

8.Составить программу, меняющую местами максимальный и минимальный элемент матрицы А размера 4 4.

9.Составить программу вычисления одномерного массива, каждый элемент которого равен минимальному элементу соответствующей строки матрицы А размера 5 5.

10.Составить программу вычисления номера строки матрицы А размера 4 4, имеющий максимальную сумму элементов.

11.Составить программу вычисления сумм элементов матрицы А размера 5 5, лежащих ниже, выше и на главной диагонали. Результат вычислений записать в одномерный массив.

12.Составить программу формирования одномерного массива из количества отрицательных элементов каждого столбца матрицы А размера

5 5.

13.Составить программу, заменяющую отрицательные элементы матрицы А размера 4 4 их абсолютными значениями.

14.Составить программу формирования одномерного массива, каждый элемент которого равен квадрату максимального элемента, соответствующей строки матрицы А размера 4 4.

15.Составить программу определения суммы элементов, стоящих на главной и побочной диагоналях двумерной матрицы А размера 4 4.

16.Составить программу, формирующую одномерный массив из сумм квадратов элементов соответствующих строк матрицы А размера 4 4.

17.Составить программу, формирующую одномерный массив из модулей минимальных элементов соответствующих столбцов матрицы А размера 4 4.

51

18.Составить программу, формирующую одномерный массив из разностей максимального и минимального элементов каждой строки матрицы А размера 5 5.

19.Составить программу, формирующую одномерный массив из кубов нечетных элементов соответствующих строк матрицы А размера 5 5.

20.Составить программу, формирующую одномерный массив, каждый элемент которого равен сумме четных положительных элементов соответствующего столбца двумерной матрицы А размера 5 5.

52

Лабораторные работы 7. Пользовательские формы

Цель работы: отработка навыков построения пользовательских форм и использование элементов управления.

Теоретические сведения

Объектно-ориентированное программирование на VBA, в частности,

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

Объект – некая сущность, которая объединяет в единое целое данные и программный код. VBA располагает множеством встроенных объектов ‒ это рабочая книга, лист, ячейка, диапазон ячеек, пользовательская форма, кнопка и элементы управления тоже являются объектами. Их можно вставлять на листы рабочей книги или в пользовательские формы. Пользовательская форма ‒ это диалоговое окно, являющееся частью интерфейса приложения.

Обозначение встроенных объектов в дополнение к перечисленным выше: приложение – Application; пользовательская форма – UserForm,

кнопка – CommandButton и т.д..

Любой объект обладает свойствами, методами и может откликаться

на события.

Свойство объект – это атрибут объекта с именем, которое задает некоторые его характеристики: имя, тип, значение, цвет, размер, положение на экране и др.

Для того чтобы задать или изменить характеристики объекта, надо просто изменить значение его свойства, т.е. присвоить ему определенные значения. Синтаксис установки значения свойства:

Объект.Свойство = ЗначениеСвойства

где Объект – имя настраиваемого объекта;

Свойство – характеристика, которую нужно изменить;

53

Значение – новая установка свойства.

Примеры задания свойств объектам:

Range("А5").Value = 100 – при этом ячейка А5 будет содержать значение 100. Свойство Value ‒ позволяет задать значение.

Range("А4").Font.Size = 12 – это означает, что ячейка А4 будет содержать информацию размером шрифта 14 пунктов. Свойство Font.Size

позволяет задать размера шрифта.

Range("А1:А10").Text = "Дисциплина Информационные

технологии" – в области А1:А10 будет размещена текстовая информации

Дисциплина Информационные технологии. Свойство Text позволяет ввести

текст.

Form1.Caption = “Щелчок на форме уменьшает её размер” – в

заголовке формы появится название «Щелчок на форме уменьшает её размер». Свойство Caption ‒ изменяет заголовок формы.

Особое значение среди всех свойств объектов имеют логические свойства (принимают значения True или False). Логические свойства объектов выполняют роль переключателей: если свойство принимает значение True ‒ функция объекта включена, а если False ‒ функция объекта выключена. Например, логическое свойство Visible ‒ отвечает за то, является объект видим или нет.

Метод это некоторое действия, которые можно выполнять над данным объектом или метод это команда, которую выполняет объект. В

результате его действия что-нибудь изменяется в объекте (цвет, место расположения и т.д.).

Синтаксис

Объект.Метод [Параметр[…]]

где Метод – команда, которая используется для изменения объекта;

Параметр – аргумент, используемый методом.

Примеры: методов, которые можно применитять к объектам:

54

Range("А1:В5").Select выбрать диапазон ячеек (А1:В5);

Range("А1:В5").Clear очистить диапазон ячеек (А1:В5);

UserForm1.Hide скрыть форму под номером 1;

UserForm2.Show показать форму под номером 2;

Application.Quit выйти из приложения.

Событие – это характеристика класса объекта, которая описывает внешнее воздействие, на которое реагирует объект данного класса в процессе работы приложения. Это может быть нажатие клавиши или щелчок мыши для которых создается программный код реакции объекта на событие.

Программирования на VBA ‒ это определение для каждого объекта набора стандартных событий и отклика на него. Например: кнопка (объект)

CommandButton, а стандартное событие для неё ‒ щелчок мышью Click.

Когда выполняется какое-либо действие (например, щелчок мышью),

то далее происходит отклик на это действие (выполняется программный код процедуры), т.е. действие – это событие, а отклик на него – процедура.

Форма ‒ это основной объект VBA. На которой размещаются различные объекты (элементы управления). Свойства формы: Name (имя пользовательской формы), Caption (текст в строке заголовка формы),

Appearance (вид формы), BorderStyle (тип границы) и др. Методы формы:

Show (отображает форму на экране), Hide (закрывает форму), November

(местоположение и размер формы), PrintForm (печать изображения формы),

Cls (очищает форму) и др.. События формы: Click, DvlClick (щелчок и двойной щелчок), MouseDown, MouseUp (нажатие и отпускание кнопки мыши), KeyDown, KeyUp (нажатие и отпускание клавиши).

Создание формы

Для создания формы нужно перейти в редактор VBA (Разработчик –

Visual Basic). Выполнить команду меню Insert UserForm. На экране появится пустая форма. Для активной формы откроется панель Properties

55

UserForm1 в которой можно изменить: заголовок формы, цвет фона, шрифт,

размер и др. (рисунок 12).

Рисунок 12. Окно свойств формы

На панели Toolbox отображаются элементы управления, которые можно разместить на форме. Это могут быть: TextBox поле для ввода текста, Label надпись, CommandButton кнопка, ListBox список,

ComboBox поле со списком, ScrollBar полоса прокрутки и др. (рисунок

12, 13).

Рисунок 13. Панель элементов управления Разместим на форме кнопку (рисунок 14). Для этого нужно выбрать

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

56

Например, сделать надпись на кнопке Печать. Для этого на панели Properties CommandButton1 справа от Caption ввести нужный текст (например,

Печать)

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

двойной щелчок мыши на кнопке. При этом откроется окно редактора VBA,

где написаны начало и конец процедуры обработки события (нажатие на кнопку).

Private Sub CommandButton1_Click()

…….

End Sub

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

счетчиков и др. стандартным считается событие Change (их изменение).

Список возможных событий для объекта можно получить, поставив курсор внутрь процедуры и выбрав, нужное из верхнего правого выпадающего меню, а в верхнем левом выпадающем меню указаны все процедуры и функции программы реакции формы на события (рисунок 15).

57

Рисунок 15. Список возможных событий объекта

Пример создания пользовательской формы и написание процедур

к ней

Написать программу на VBA с использованием пользовательских форм

ипроцедур к ним. Организовать в программе вычисление логарифма заданного числа по заданному основанию логарифма. Ввод исходных данных

ивывод полученного результата производить через форму. Предусмотреть организацию на форме кнопок для повторения и завершения работы программы, а также кнопки запуска программы с листа Excel.

Создание пользовательской формы

Назвать пользовательскую форму: «Вычисление логарифма». На панели инструментов Properties меняем свойство Caption на текст

Вычисление логарифма.

 

Создать на форме три надписи.

Для этого на панели элементов

управления выбрать пиктограмму Label

и обрисовать области надписей

на пользовательской форме.

 

На панели свойств объекта Properties меняем свойство Caption для этих надписей на: «Основание логарифма», «Число», «».

Создать три кнопки с помощью элемента управления CommandButton

. Назовем эти кнопки, меняя свойство Caption на: «Очистить всё»

58

(кнопка CommandButton3), «Вычислить» (CommandButton1), «Выход»

(CommandButton2). Аналогично создаем два элемента управления TextBox

на пользовательской форме . На рисунке 16 показана полученная итоговая форма.

Рисунок 16. ‒ Пользовательская форма Создать процедуру и привязать к созданной пользовательской форме.

При этом необходимо дважды щелкнуть мышью по форме и откроется окно редактора VBA, где будут представлены заготовки для написания процедур.

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

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

Private Sub CommandButton1_Click() ‘Вычисление логарифма

Dim n, x, c As Double n = TextBox1.Value x = TextBox2.Value n = CDbl(n)

x = CDbl(x)

c = log(x) / log(n)

Label3.Caption = "Ответ " & c

59

End Sub

 

Private Sub CommandButton2_Click()

‘Выход из формы

Unload Me

 

End Sub

 

Private Sub CommandButton3_Click()

‘Очистка полей ввода

Label3.Caption = ""

 

TextBox1 = ""

 

TextBox2 = ""

 

End Sub

 

Примеры работы программы показаны на рисунке 17.

Рисунок 17. ‒ Результат работы программного кода

Запуск пользовательской формы

Для запуска созданной пользовательской формы можно использовать оператор Show. Пример запуска Формы:

Sub show_userform() my_userform.Show

End Sub

Задание

Создать экранную форму «Ведомость лабораторных работ» для заполнения журнала учёта лабораторных работ (Рисунок 18).

60

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