- •Оглавление
- •Предисловие
- •Введение
- •Общие сведения о vba
- •Структура редактора vba
- •Запуск редактора vba и завершение работы
- •Пользовательский интерфейс редактора vba
- •Окно Project Explorer (Проекта)
- •Окно свойств (Properties)
- •Окно для редактирования кода
- •Окно редактирования форм (UserForm)
- •Программирование на vba
- •Использование модулей и процедур
- •Запуск пользовательских функций
- •Создание новой процедуры
- •Выбор имени
- •Удаление модуля из проекта
- •Представление данных в vba
- •Операции языка vba
- •Инструкции
- •Инструкции объявления (описания)
- •Инструкции присваивания (назначения или присвоения)
- •Выполняемые инструкции (исполняемые инструкции)
- •Инструкции по управлению потоком
- •Объекты в vba
- •Работа с диапазонами
- •Использование свойства Range
- •Использование свойства Cells
- •Работа со свойствами – атрибутами объектов
- •Работа с методами объектов
- •Взаимодействие с пользователем
- •Вывод сообщений с помощью функции MsgBox
- •Вывод сообщений с помощью оператора MsgBox
- •Ввод данных пользователем с помощью окон ввода
- •Использование комментариев в программах vba
- •Создание пользовательских форм в редакторе vba
- •Создание формы
- •Использование элементов управления
- •Свойства элементов управления
- •Методы и события элементов управления
- •Макросы
- •Сервис►Макрос►Макросы…
- •Вопросы для самоконтроля
- •Примеры решения задач в среде программирования vba
- •Разработка программ и алгоритмов линейной структуры
- •С использованием процедуры функции в редакторе Visual Basic;
- •С использованием рабочего листа ms Excel;
- •С использованием форм пользователя в редакторе Visual Basic. Задание 1
- •Создание процедуры функции в редакторе Visual Basic Ход выполнения задания:
- •Создание процедуры подпрограммы с использованием ввода исходных данных и вывода результатов на рабочий лист ms Excel Ход выполнения задания:
- •Создание формы пользователя в редакторе Visual Basic Ход выполнения задания:
- •Разработка программ и алгоритмов разветвляющейся структуры
- •С использованием рабочего листа ms Excel;
- •С использованием форм пользователя в редакторе Visual Basic. Задание 2
- •Создание процедуры подпрограммы с использованием ввода исходных данных и вывода результатов на рабочий лист ms Excel Ход выполнения задания 2:
- •Создание формы пользователя в редакторе Visual Basic Ход выполнения задания:
- •Назначить автофигуре с надписью Задача2 макрос Zadanie2, выбрав пункт контекстного меню Назначить макрос...
- •Разработка программ и алгоритмов циклической структуры
- •С использованием процедуры функции в редакторе Visual Basic;
- •С использованием встроенных диалоговых окон (окна ввода, окна сообщения) в процедуре подпрограммы. Задание 3
- •Создание процедуры функции в редакторе Visual Basic
- •Использование окон сообщений и окон ввода
- •Разработка программ и алгоритмов с использованием массивов Задание 4
- •Ход выполнения задания 4:
- •Заключение
- •Библиографический список
- •Интернет ресурсы
- •Предметный указатель
Разработка программ и алгоритмов разветвляющейся структуры
С использованием рабочего листа ms Excel;
С использованием форм пользователя в редакторе Visual Basic. Задание 2
Выполнить
табулирование функции
на отрезке [-4;4] с шагом ∆x=0,5,
при a=4
и b=6,
используя Редактор
VB.
Построить график функции y(x)
по полученным результатам, разместив
его на новом рабочем листе.
Составить блок-схему для решения задачи по формуле
Блок – схема
Создание процедуры подпрограммы с использованием ввода исходных данных и вывода результатов на рабочий лист ms Excel Ход выполнения задания 2:
Создать документ Excel в папке своей группы под своей фамилией.
Оформить таблицу на рабочем листе MS Excel, согласно образцу:
Перейти в окно Редактора VB, командой СервисМакросРедактор Visual Basic.
.Создать модуль, используя команду InsertModule .
Создать процедуру Пример_2, имеющую тип Sub.
Ввести в окне редактирования кода программу
Public Sub Пример_2()
Dim a, x0, xk, dx, x, y As Single
Const Pi As Single = 3.14159
a = Cells(2, 1).Value
b = Cells(2, 2).Value
x0 = Cells(2, 3).Value
xk = Cells(2, 4).Value
dx = Cells(2, 5).Value
x = x0
i = 5
10 If x <= 2 Then y = x ^ 2 - a Else y = b - 2 * x
Cells(i, 1).Value = x
Cells(i, 2).Value = y
i = i + 1
x = x + dx
If x <= xk Then GoTo 10
End Sub
Запустить программу на выполнение, используя команду RunRun Sub/UserForm или кнопку на панели инструментов .
Перейдите на рабочий лист MS Excel.
Проверить результат выполнения программы.
Сохранить документ и закрыть программу MS Excel.
Создание формы пользователя в редакторе Visual Basic Ход выполнения задания:
Создать документ MS Excel в папке своей группы под своей фамилией.
Перейти в окно Редактора VB, командой Сервис Макрос Редактор Visual Basic.
.Создать модуль, используя команду InsertModule .
Записать в модуль процедуру Zadanie2:
Public Sub Zadanie2()
UserForm1.Show
End Sub.
Добавить в проект форму, выполнив команду меню InsertUserForm.
Разместить в окне редактирования формы управляющие элементы (6 элементов Надпись (Label), 5 элементов Поле (TextBox) и 2 элемента Кнопка (CommandButton)), как показано на рис. 14.
Рис. 14. Диалоговое окно для табулирования функции
Установить свойства элементов управления в соответствии с таблицей 1 приложения 2, используя окно Properties (Свойства), нажав кнопку .
Приложение 2
Элемент |
Свойство |
Значение свойства |
Обрабатываемое событие |
UserForm1 |
|
|
нет |
|
на вкладке Alphabetic: |
|
|
Label1 |
|
|
нет |
Label2 |
|
|
нет |
Label3 |
|
|
нет |
Label4 |
|
|
нет |
Label5 |
|
|
нет |
Label6 |
|
|
нет |
TextBox1 |
|
|
нет |
TextBox2 |
|
|
нет |
TextBox3 |
|
|
нет |
TextBox4 |
|
|
нет |
TextBox5 |
|
|
нет |
CommandButton1 |
|
|
Выполняет вычисления и выводит результаты значений на рабочий лист |
CommandButton2 |
|
|
Закрывает форму |
Выровнять элементы управления по ширине и высоте, используя соответственно команды FormatMake Same SizeWidth и FormatMake Same SizeHeight. Для выбора элементов управления удерживать клавишу Shift.
Выровнять элементы управления Надпись по левому краю, используя команду FormatAlignLefts, элементы управления Поле по правому краю – FormatAlignRights.
Изменить свойство события Click для командной кнопки Вычислить.
Private Sub CommandButton1_Click()
Dim x, y As Single
xn = TextBox1.Text
xk = TextBox2.Text
dx = TextBox3.Text
a = TextBox4.Text
b = TextBox5.Text
x = Val(xn)
Worksheets(1).Cells(1, 1).Value = "x"
Worksheets(1).Cells(1, 2).Value = "y"
Worksheets(1).Cells(1, 3).Value = "a"
Worksheets(1).Cells(1, 4).Value = "b"
Worksheets(1).Cells(2, 3).Value = a
Worksheets(1).Cells(2, 4).Value = b
Worksheets(1).Cells(1, 5).Value = "xn"
Worksheets(1).Cells(1, 6).Value = "xk"
Worksheets(1).Cells(1, 7).Value = "dx"
Worksheets(1).Cells(2, 5).Value = xn
Worksheets(1).Cells(2, 6).Value = xk
Worksheets(1).Cells(2, 7).Value = dx
i = 2
20 Worksheets(1).Cells(i, 1).Value = x
If x <= 2 Then y = x ^ 2 - a Else y = b - 2 * x
Worksheets(1).Cells(i, 2).Value = y
i = i + 1
x = x + Val(dx)
If x <= Val(xk) Then GoTo 20
End Sub
Изменить свойство события Click для командной кнопки Выход.
Private Sub CommandButton2_Click()
End
End Sub
