8492
.pdf(деление), cmdExit (завершение работы). На панели Properties установить свойства элементов управления, представленные в таблице 8.
|
|
|
Таблица 8 |
Свойства элементов управления |
|
||
|
|
|
|
Элементы управления |
Name |
|
Caption |
|
|
|
|
Текстовое поле |
tDec1 |
|
|
|
|
|
|
Текстовое поле |
tDec2 |
|
|
|
|
|
|
Текстовое поле |
tDec2 |
|
|
|
|
|
|
Кнопка |
cmdPlus |
|
+ |
|
|
|
|
Кнопка |
cmdMinus |
|
- |
|
|
|
|
Кнопка |
cmdUmn |
|
* |
|
|
|
|
Кнопка |
cmdDel |
|
/ |
|
|
|
|
Кнопка |
cmdExit |
|
Выход |
|
|
|
|
Для каждой кнопки создать программные коды событийных процедур.
Для этого нужно щелкнуть дважды на кнопке сложения. Ввести между операторами Private Sub и End Sub оператор присваивания для осуществления сложения. Использовать функцию Val для преобразования строковых значений, вводимых в текстовые поля, в десятичные числа.
Private Sub cmdPlus_Click()
txtDec3.Text = Val(txtDec1.Text) + Val(txtDec2.Text)
End Sub
Аналогичным образом создать событийные процедуры вычитания,
умножения и деления. Для кнопки «Выход» создать событийную процедуру выхода (Рисунок 19).
Private Sub CmdExit_Click()
Unload Me
End Sub
71
Рисунок 19. ‒ Проект Инженерный калькулятор Изменить расположение элементов управления в соответствии с
рисунком 20. Добавить на форму над текстовыми полями надпись Label и
введем в него Десятичная система. Установить свойства: ForeColor –
черный, TextAlign – 2fmTextAlign (по центру), SpecialEffect – 2-fm
SpecialEffect.
Аналогично создать еще три тестовых поля txtOct1, txtOct2 и txtOct3.
А над ними с помощью надписи Label ввести Восьмеричная система.
Для перевода чисел из десятичной системы счисления в восьмеричную используем функцию Oct(), которая имеет в аргументе десятичные числа.
Результатом использования данной функции будут восьмеричные числа в строковой форме.
Создать на форме кнопку с именем cmdDecOct. Изменить свойство
Caption на Восьмеричная система. Записать для этой кнопки соответствующий программный код.
Private Sub cmdDecOct_Click() txtOct1.Text = Oct(Val(txtDec1.Text)) txtOct2.Text = Oct(Val(txtDec2.Text)) txtOct3.Text = Oct(Val(txtDec3.Text))
End Sub
Запустить проект на выполнение. Ввести числа В два первых текстовых поля ввести числа в десятичной системе счисления. Выполнить операцию сложения, нажав на кнопку «+». Затем нажать кнопку Восьмеричная
72
система. Произойдет сложение десятичных чисел и перевод всех трех чисел в восьмеричную систему.
Очистить поля ввода. Для этого создать соответствующую кнопку
CmdButton3 ‒ «Очистить» (для нее ввести в Caption – Очистить). Для этой кнопки создать программный код:
Private Sub CmdButton3_Click() txtDec1 = ""
txtDec2 = "" txtDec3 = "" txtOct1 = "" txtOct2 = "" txtOct3 = "" End Sub
Рисунок 20. ‒ Проект Инженерный калькулятор с переводом в восьмеричную систему счисления
Практические задания
1. Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого использовать арифметические операции (сложение, вычитание, умножение, деление,
возведение в степень, извлечения корня квадратного) в десятичной системе счисления и функции перевода чисел из десятичной системы счисления в
73
восьмеричную и шестнадцатеричную системы и, наоборот, из восьмеричной
ишестнадцатеричной систем в десятичную.
2.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого использовать арифметические операции (сложение, вычитание, умножение, деление,
экспонента, модуль, натуральный логарифм) в десятичной системе счисления и функции перевода чисел из десятичной системы счисления в шестнадцатеричную и обратно.
3. Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого использовать арифметические операции (сложение, вычитание, умножение, деление),
вычисление значение тригонометрических функций и функций преобразования чисел из десятичной системы счисления в двоичную и шестнадцатеричную системы и, наоборот, из двоичной и шестнадцатеричной систем в десятичную.
4. Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения арифметических операций в десятичной системе счисления, возведения числа в степень, числа
(пи) и единицы деленной на некоторое число. Обеспечить возможность определения количества цифр во введенном натуральном десятичном числе.
5.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения арифметических операций в десятичной системе счисления, возведения числа десять в любую степень, вычисление логарифма числа. Обеспечить возможность определения количества цифр во введенном целом десятичном числе.
6.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться
возможностью выполнения основных арифметических операций в
74
десятичной системе счисления, вычисления модуля числа, возведение числа в квадрат, определение факториала числа. Обеспечить возможность вывода на печать (по зонам) цифр, составляющих введенное целое десятичное число.
7.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения основных арифметических операций в десятичной системе счисления, вычисления экспоненты, натурального логарифма числа, основных тригонометрических функций (sin(), cos(), tg(), Ctg()). Обеспечить возможность вычислить сумму десятичных цифр заданного целого десятичного числа.
8.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения арифметических операций в десятичной системе счисления, основные тригонометрические функции, перевод из радиан в градусы и обратно. Обеспечить возможность печати в возрастающей последовательности натуральные двухзначные числа, в которых нет одинаковых цифр.
9.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения арифметических операций в десятичной системе счисления, вычисление экспоненты, корня квадратного. Обеспечить возможность замены заданного натурального числа на число, которое получается из исходного путем записи его цифр в обратном порядке.
10.Написать программу на VBA с использованием формы под названием «Инженерный калькулятор». Для этого воспользоваться возможностью выполнения арифметических операций в десятичной системе счисления, вычисление факториала, модуля числа. Обеспечить возможность перевода натуральных десятичных чисел в двоичную систему счисления и обратно.
75
11. Написать программу на VBA с использованием формы под названием «Шифровка и дешифровка текстовых сообщений». Показать возможность зашифровывать и расшифровывать текстовые сообщения.
Использовать алгоритм шифрования, который базируется на использовании ключевой фразы (ключа шифрования).
Пояснение: Пусть имеется некоторый секретный текст, который нужно зашифровать. В процессе шифровки необходимо заменить каждый символ секретного текста на порядковый номер этого символа в ключевой фразе.
При дешифровке последовательность чисел должна преобразовываться обратно в секретный текст с помощью той же ключевой фразы. Ключевая фраза должна содержать все символы, которые будут использоваться в сообщениях, и должна быть известна только шифровальщику и получателю сообщений. Исходный секретный текст, зашифрованное и дешифрованное сообщения вводить и выводить в текстовых полях, а для запуска процедур шифровки и дешифровки использовать кнопки.
12.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможности вырезки из строки левой и правой подстрок, определение позиции подстроки в строке и преобразования числового кода символа в символ.
13.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность подсчитывать количество экземпляров какого-либо символа в заданном тексте.
14.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить
76
различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность ввода и вывода текста и символа с помощью текстовых окон.
15.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность заменять в тексте один заданный символ на другой.
16.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность ввода и вывода текста и символов с помощью текстовых окон.
17.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность изменять прямую последовательность символов (слева направо)
во введенном слове на обратную (справа налево).
18.Написать программу на VBA с использованием формы под названием «Строковый калькулятор», который позволит производить различные преобразования строк (операцию конкатенацию, операцию вырезания подстроки, определения количества символов в строке). Добавить возможность ввода и вывода слова с помощью текстового окна.
19.Написать программу на VBA с использованием формы под названием «Логический калькулятор», который позволит определять истинность логических выражений. В котором реализуются основные логические операции с помощью логических операторов And (логическое умножение), Or (логическое сложение), Not (логическое отрицание), Xor (исключающее Or) и Eqv (операция эквивалентности) Логические операторы
77
могут оперировать с логическими аргументами True (двоичная единица) и
False (двоичный нуль), а также с логическими переменными типа Boolean.
20.Написать программу на VBA с использованием формы под названием «Компьютер в картинках», который будет выводить на форму изображения компьютера и его устройств. Картинку каждого устройства разместить на отдельной форме. Организовать переход между формами.
21.Написать программу на VBA с использованием формы под названием «Собери картинку». Изображение разбить на фрагменты и неупорядоченно вывести их на форму. Предусмотреть возможность вывода фрагментов на форму таким образом, чтобы получалось первоначальное изображение.
22.Написать программу на VBA с использованием формы под названием «Графический редактор», который будет выполнять функции простого графического редактора (координаты точки, рисование линии,
рисование прямоугольника, рисование закрашенных прямоугольников и окружностей), в котором в качестве поля для рисования будет использоваться графическое поле.
23. Написать программу на VBA с использованием формы под названием «Графический редактор», который будет выполнять функции простого графического редактора (установка координат точки, рисование:
линии, прямоугольника, закрашенных прямоугольников и окружностей), так,
чтобы параметры для рисования графических примитивов задавались в текстовых полях и существовала возможность очистки поля рисования.
24. Написать программу на VBA с использованием формы под названием «Построение графиков функций» (например: y = sinx). Так, чтобы можно было строить график функции для различных наборов значений ее аргумента х. Предусмотреть автоматическую корректировку масштаба и шкал осей координат. Предусмотреть возможность очистки графического поля.
78
79
Список литературы
1.Берндт Г., Каинка Б. Измерение, управление и регулирование с помощью макросов VBA в Word и Excel. Электронное издание. [URL:] https://ExcelVBA.ru/UsefulBooks/book1.rar (дата обращения 12.09.20)
2.Воробьева Ф.И., Воробьев Е.С. Приемы программирования в среде
Visual Basic for Application MS Office. Казань, 2010, 104 с. |
|
||
3. |
Гарбер Г. Основы программирования на Visual Basic и VBA в Excel |
||
2007. |
Электронное |
издание. |
[URL:] |
https://ExcelVBA.ru/UsefulBooks/book2.rar (дата обращения 12.09.20) |
|
||
4. |
Дж. Уокенбах Excel 2010: профессиональное программирование на |
||
VBA. |
Электронное |
издание. |
[URL:] |
https://ExcelVBA.ru/UsefulBooks/book9.pdf (дата обращения 12.09.20) |
|
||
5. |
Кашаев Сергей Программирование в Microsoft Excel на примерах. |
||
БХВ-Петербург, 2007, 320 с. |
|
|
|
6. |
Комолова Н., Яковлева Е. Программирование на VBA в Excel 2016. |
||
Самоучитель. БХВ-Петербург, 2007, 431 с. |
|
|
|
7. |
Кудрявцев Н.Г., Кудин Д.В., Беликова М.Ю. Программирование на |
VBA MS Excel: учебное пособие. Горно-Алтайск: РИО ГАГУ, 2015, 116 с.
8. Петрова, В.А. Программирование и решение сложных задач в Excel:
учеб. пособие. Екатеринбург: Изд-во Урал. ун-та, 2016. 88 с.
9. Слепцова Л.Д. Программирование на VBA в Microsoft Office 2010.
Вильямс, 2010, 432 с.
10. Слепцова Л.Д. Программирование на VBA в Microsoft Office 2010.
Электронное издание. [URL:] https://ExcelVBA.ru/UsefulBooks/book3.rar (дата обращения 12.09.20)
11. Уокенбах Дж. Excel 2010. Профессиональное программирование на
VBA. Диалектика, 2012, 944 с.
80