SlideShare a Scribd company logo
Методические рекомендации по выполнению контрольной
работы по VBA
Проектирование приложения в интегрированной среде редактора
VBA для решения задачи - определение суммы возврата кредита
с уплатой процентов банку по истечению определенного срока
Цель: выработать умения и навыки работы с компонентами
интегрированной среды VBA при разработке приложений для решения
задач по банковскому делу.

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

Математическая модель
Сумма средств, подлежащая возврату банку по истечению срока
действия кредитного договора, увеличится на сумму начисленных
процентов за пользование кредита:
S%=K1*P%/100,
где S% - сумма начисленных процентов за пользование кредитом;
K1 - сумма кредита;
P% - годовая процентная ставка.
По истечению срока действия кредитного договора (один год для
рассматриваемого примера) сумма средств, подлежащая возврату
клиентом банка, с начисленной суммой процентов определяется по
формуле:
K2=K1+S%,
где V2 - сумма средств, подлежащая возврату банку через год.
2

Используя математическую модель, требуется разработать
алгоритм решения задачи, в котором необходимо предусмотреть четыре
этапа обработки данных:
1. Ввод исходных данных для решения задачи - сумма полученного
кредита и годовая процентная ставка за пользование кредитом;
2. Вычисление суммы начисленных процентов за пользование
кредитом;
3. Расчет суммы средств, которая возвращается клиентом банку;
4. Вывод результатов вычислений.

Алгоритм решения задачи
В соответствии с приведенной выше математической моделью
необходимо разработать алгоритм решения задачи. Пример
разработанного алгоритма представлен на рис. 1.
Начало

Ввод
K1, P%

S%= K1*P%/100

K2= K1+S%

Вывод
K2

Конец

Рис. 1. Схема алгоритма определения суммы возврата кредита
3

Структура данных
В разрабатываемом приложении используются различные
элементы управления, состав которых и их основные свойства
представлены в таблице 1.
Таблица 1
Основные свойства элементов управления
Имя элемента
управления

Name

Caption
Кредитор: (введите
наименование
банка)
Заемщик (введите
Ф. И. О.)

Text

Назначение

Отсутствует

Текст свойства Caption выводится
на форме

Label

lblКредитор

Label

lblЗаемщик

Label

lblКредит

Сумма кредита

Отсутствует

Label

lblСтавка

Процентная ставка

Отсутствует

Сумма возврата
кредита с уплатой
процентов
Дата выдачи
кредита
Дата возврата
кредита

Отсутствует

Label

lblВозврат

Отсутствует

Label

lblДата1

Label

lblДата2

TextBox

txtКредитор

Отсутствует

Пусто

TextBox

txtЗаемщик

Отсутствует

Пусто

TextBox

txtКредит

Отсутствует

Пусто

TextBox

txtСтавка

Отсутствует

Пусто

TextBox

txtВозврат

Отсутствует

Пусто

TextBox

txtДата1

Отсутствует

Пусто

TextBox

txtДата2

Отсутствует

Пусто

CommandButton

cmdПечать

Печать формы

Отсутствует

CommandButton

cmdВыход

Выход

Отсутствует

Отсутствует
Отсутствует

Текст свойства Caption выводится
на форме
Текст свойства Caption выводится
на форме
Текст свойства Caption выводится
на форме
Текст свойства Caption выводится
на форме
Текст свойства Caption выводится
на форме
Текст свойства Caption выводится
на форме
Используется для ввода
наименования банка
Используется для ввода Ф. И. О.
клиента
Используется для ввода
исходных данных (сумма кредита)
Используется для ввода
исходных данных (процентная
ставка)
Используется для вывода суммы
возврата кредита с уплатой
процентов
Используется для вывода даты
выдачи кредита (вычисляется на
момент выполнения программы)
Используется для вывода даты
возврата кредита
Печать формы с результатами
вычислений
Завершается работа приложения

Элементы управления Label используются для вывода текстовой
информации на форме, позволяющей пользователю сориентироваться,
4

как происходит в программе процесс ввода данных и где размещены
результаты вычислений. Текст, введенный в свойстве Caption элемента
управления Label, выводится на форме и в процессе выполнения
программы не может быть изменен.
Данные Сумма кредита, Процентная ставка являются исходными
и вводятся с клавиатуры в текстовые поля txtКредит и txtСтавка.
Поэтому для соответствующих элементов управления TextBox в
свойстве Name указаны префиксы txt. Результаты вычислений Сумма
возврата кредита с уплатой процентов выводятся в форме также в
текстовое поле – txtВозврат.
В коде программы при выполнении вычислений используются
четыре переменных:
curСумКредит,
curГодПроц,
curСумПроц,
curВозвратКред.
В таблице 2 представлены имена переменных, которые
используются в коде программы, и их назначение при обработке
банковской информации при кредитовании.
Таблица 2
Структура данных
Реквизит

Имя

Тип
переменной

Назначение

Сумма кредита

curСумКредит

Currency

Полученная клиентом сумма
кредита

Процентная ставка

curГодПроц

Currency

Годовая процентная ставка

Сумма по
процентам

curСумПроц

Currency

Сумма начисленных процентов

Сумма возврата
кредита

curВозвратКред

Currency

Сумма средств, возвращаемая
клиентом
5

Интерфейс с пользователем
Задача решается с помощью формы, структура которой
представлена на рис. 2. Проект формы и внешний ее вид после
выполнения программы представлены на рис. 3.
Кредитор

1
1

Заемщик

2
2

Сумма кредита

Процентная ставка

3
3

Сумма возврата кредита с
уплатой процентов

4
4

Дата выдачи кредита

5
5
Дата возврата кредита

Рис. 2. Расположение объектов на форме
6
Объекты - Кредитор, Заёмщик, Сумма кредита, 7 Процентная
7
6
ставка, Сумма возврата кредита с уплатой процентов, Дата выдачи
кредита, Дата возврата кредита размещаются на форме с помощью
Печать формы
8
9
Выход
элемента управления Label и имеют префикс lbl.
8
9
1
1

2
2

в эти два поля (txtКредитор и
txtЗаемщик соответственно) вводится
текстовая информация с клавиатуры
— txtКредит

3
3
—txtСтавка

4
4
—txtВозврат

5
5
— txtДата1

6
6
— txtДата2

7
7

—cmdПечать

8
8
—cmdВыход

9
9
Проект формы

Графический образ формы после выполнения приложения

Рис.3. Проект формы и внешний ее вид после выполнения программы
Код программы
Код программы, который обеспечивает выполнение указанного выше
проекта, представлен на рис. 4.

Рис.4. Окно кода с процедурами обработки событий
Расчет суммы средств, подлежащей возврату банку, выполняется в два
этапа. После двойного щелчка на текстовом поле txtВозврат определяется
начисляемая за пользование кредитом сумма по процентам, которая
суммируется с величиной кредита, полученной клиентом банка по кредитному
договору.
В текстовые поля txtДата1 (Дата выдачи кредита) и txtДата2 (Дата
возврата кредита) информация вводится с помощью функции дат: Now и Date
соответственно.
Дата выдачи кредита - это текущая дата и время, полученная с помощью
функции Now. Допускается, что оформление кредитного договора и выдача
клиенту кредита осуществляется в тот день, когда данная программа запускается
на выполнение.
Дата возврата кредита определяется с помощью функции DateAdd, которая
добавляет к заданной дате (дате выдачи кредита) количество временных
интервалов. В рассматриваемом примере предусматривается выдача кредита на
год с выплатой суммы по процентам в конце действия кредитного договора. Срок
действия кредитного договора вводится в коде программы с помощью константы,
значение которой и добавляется функцией DateAdd к дате выдачи кредита.
Результаты работы программы выдаются на печать с помощью команды
PrintForm, которая выводит на принтер графический образ окна формы.
Завершение работы программы осуществляется с помощью командной
кнопки Выход.
На рис. 4 представлены процедуры, которые выполняют указанные выше
действия.

Проектирование приложения
1.
Если не открыто приложение Microsoft Excel, то откройте его
командой Пуск — Программы — Microsoft Office — Microsoft Excel или другим
способом.
2.
Выполните команду Сервис — Макрос — Безопасность и установите
следующие параметры безопасности:
2.1. Во вкладке Безопасность выберите переключатель Средняя.
2.2.
Во вкладке Надежные изделия установите флажок Доверять
доступ к Visual Basic Project (для версии 2003 и выше).
3.
Закройте окно приложения Microsoft Excel, повторите п. 1 и
проверьте, сохранились ли параметры безопасности, которые были установлены
в п. 2.
4.
Находясь в среде Excel или другого приложения из Microsoft Office
(Word или др.) откройте окно интегрированной среды разработки приложений
редактора Visual Basic командой Сервис — Макрос — Редактор Visual Basic
или нажатием комбинации клавиш <Alt>+<F11>.
5.
На панели инструментов щелкните кнопку Insert UserForm .
Появляется окно с формой UserForm1.
6.
Задайте имя и заголовок формы. Для этого перейдите в окно свойств
Properties и введите значения следующих свойств:
Name: FrmКредит
Caption: Руденко Виктория
Примечание. В свойстве Caption студент указывает свою фамилию и имя.
7.
Поместите на форму надписи Кредитор: (введите наименование
банка), Заёмщик (введите Ф. И. О.), Сумма кредита, Процентная ставка,
Сумма возврата кредита с уплатой процентов, Дата выдачи кредита, Дата
возврата кредита в соответствующие поля (см. рис. 3).
•
Выберите на панели элементов управления элемент Label, а затем
щелкните на форме в том месте, где будет начинаться надпись, и выделите
область для надписи.
•
Выделите на форме элемент Label1 щелчком левой кнопкой мыши,
а затем в свойстве Name окна Properties введите текст lblКредитор, а в
свойстве Caption, укажите «Кредитор: (введите наименование банка)».
•
Справа от созданной надписи (см. рис. 2 и 3), поместите текстовое
поле (TextBox). Выберите на панели элементов управления элемент TextBox, а
затем щелкните на форме и выделите область для нового объекта. Выделите на
форме элемент TextBox1, а затем в окне Properties введите значение свойства:
Name - txtКредит.
8.
Аналогично создайте поля для размещения на форме надписей
Заемщик (введите Ф. И. О.), Сумма кредита, Процентная ставка, Сумма
возврата кредита с уплатой процентов, Дата выдачи кредита, Дата
возврата кредита и соответствующие им текстовые поля (имена полей см. в
табл. 1).
9.
Создайте командную кнопку Печать формы.
•
Выберите
на
панели
элементов
управления
элемент
CommandButton, а затем щелкните на форме в том месте, где будет начинаться
кнопка – слева внизу формы, и удерживая нажатой левую кнопку мыши выделите
для нее область (см. рис. 3).
•
Перейдите в окно Properties и введите значения следующих
свойств:
Caption:
Name:

Печать формы
cmdПечать

10. Аналогично создайте командную кнопку Выход (в Caption укажите
Выход, а в Name – cmdВыход). Размещение кнопки на форме см. на рис. 2 и 3.
11. Вызовите окно Code (кода) командой View – Code. Указанное окно
может быть вызвано и другими способами, например с помощью контекстного
меню.
12. Введите оператор Option Explicit. Для ввода указанного оператора
необходимо выполнить следующие действия. Выбрать в окне Code объект
General из списка объектов Object. Выбрать Declaration из списка Proc. Ввести
оператор Option Explicit.
13. Для объявления константы, указывающей, на какой срок выдан кредит
(в рассматриваемом примере срок кредитования 12 месяцев), введите оператор
const t = 12
14. Создайте код процедуры, которая обрабатывает событие «Двойной
щелчок на текстовом поле txtВозврат».
•
Дважды щелкните на текстовом поле txtВозврат. В результате
открывается окно кода с заголовком и концом процедуры. В заголовке процедуры
Sub вместо события Change введите событие DblClick.
•
В тело процедуры введите оператор Dim для явного объявления
четырех переменных (См. табл. 2 и рис. 4).
•
Переменным curСумКредит и curГодПроц необходимо присвоить
значения текстовых полей, которые были введены в форме. Для этих целей
введите в тело процедуры два оператора
curСумКредит = CCur(TxtКредит.Text)
curГодПроц = CCur(TxtСтавка.Text)
Примечание. Допускается в указанных выше операторах запись
текстовых полей и без их свойств Text.
Для выполнения вычислений в тело процедуры введите следующие
операторы
curСумПроц = curСумКредит * curГодПроц / 100
curВозвратКред = curСумКредит + curСумПроц
В первом операторе определяется сумма, начисленная банком по
процентам за пользование кредитом. Во втором операторе вычисляется сумма,
которую клиент должен вернуть банку.
•
Следующий оператор обеспечивают вывод полученного
результата в текстовое поле формы
txtВозврат.Text = Format(curВозвратКред, "# ### ##0.00")
15. Создайте код процедуры, которая обрабатывает событие «Щелчок на
текстовом поле TxtДата1».
Дважды щелкните на текстовом поле TxtДата1. В результате открывается
окно кода с заголовком и концом процедуры. В тело процедуры введите
оператор
TxtДата1.Text = Now
Примечание. Дата выдачи кредита вычисляется на момент выполнения
программы.
16. Создайте код процедуры, которая обрабатывает событие «Щелчок на
текстовом поле TxtДата2».
Дважды щелкните на текстовом поле TxtДата2. В результате открывается
окно кода с заголовком и концом процедуры. В тело процедуры введите
оператор
txtДата2.Text = Format(DateAdd("m", t, Date), "dd/mm/yyyy")
Примечание. Возврат кредита осуществляется через год после
заключения кредитного договора.
17. Создайте код процедуры, которая обрабатывает событие «Щелчок на
командной кнопке Печать формы»
Дважды щелкните на кнопке Печать формы. В тело процедуры введите
оператор, который выведет на печать графический образ окна формы с
полученными результатами:
Me.PrintForm
18. Создайте код процедуры, которая обрабатывает событие «Щелчок на
командной кнопке Выход».
Дважды щелкните на кнопке Выход. В тело процедуры введите операторы,
которые закроют форму.
Unload Me
Set FrmКредит = Nothing
19. Сохраните документ Excel вместе с программой в своей папке (имя
файла, например, может быть – Кредитование).
20. Запустите программу на выполнение и проверьте ее работу с
несколькими комплектами исходных данных.
21. Завершите работу в приложении Microsoft Excel. Закройте окно
Excel.
22. Двойным щелчком на имени только что созданного файла откройте
его. При открытии ответьте на запрос - отключать ли макросы, нажав кнопку Не
отключать макросы, а затем перейдите в окно интегрированной среды
разработки приложений редактора Visual Basic и убедитесь, что в нем имеется
форма UserForm и у вас имеется возможность снова запустить созданную вами
программу Visual Basic.
Литература
1. Методические рекомендации к дистанционному курсу ″Інформатика та
комп’ютерна техніка″ для студентів усіх спеціальностей всіх форм
навчання. / Сост. В.П. Бурдаев. - Харьков: Изд. ХНЭУ, 2006 -

126 с. Укр.

яз.
2. Методические рекомендации к дистанционному курсу ″Информатика и

компьютерная техника″ для студентів усіх спеціальностей всіх форм
навчання. / Сост. В.П. Бурдаев. — Харьков: Изд. ХНЭУ, 2007 — 160с. Укр.
яз.
3. Гарнаев А. Ю. Excel, VBA, Internet в экономике и финансах. – СПб. БХВПетербург, 2001. – 816 с.
4. Лабораторний

практикум

по

информатике

и

компьютерным

технологиям. /Под ред. проф. А. И. Пушкаря. - X.: Издат. Дом "ИНЖЗК",
2004. - 468 с.

More Related Content

What's hot

Упражнение 1
Упражнение 1Упражнение 1
Упражнение 1Artyukhova
 
Бази даних-1 (LibreOffice Base)
Бази даних-1 (LibreOffice Base)Бази даних-1 (LibreOffice Base)
Бази даних-1 (LibreOffice Base)s-lana
 
раздел 5 субд Access
раздел 5  субд Accessраздел 5  субд Access
раздел 5 субд Accesstatianabtt
 
1
11
упражнение 6
упражнение 6упражнение 6
упражнение 6Artyukhova
 
создание таблиц в Ms access
создание таблиц в Ms accessсоздание таблиц в Ms access
создание таблиц в Ms access
chiz123
 
0034
00340034
0034JIuc
 
тест работа с макросами и внешними данными
тест работа с макросами и внешними даннымитест работа с макросами и внешними данными
тест работа с макросами и внешними даннымиJIuc
 
Конечный документ для быстрого форматирования
Конечный документ для быстрого форматированияКонечный документ для быстрого форматирования
Конечный документ для быстрого форматирования
Николай Колдовский
 
Вставка формул в Word от простого к сложному
Вставка формул в Word   от простого к сложномуВставка формул в Word   от простого к сложному
Вставка формул в Word от простого к сложному
Galina Balashova
 
6.Заполнение заявления на регистрацию
6.Заполнение заявления на регистрацию6.Заполнение заявления на регистрацию
6.Заполнение заявления на регистрациюschambala
 
0020
00200020
0020JIuc
 
Idef0&dfd
Idef0&dfdIdef0&dfd
Упражнение 3. Запросы
Упражнение 3. ЗапросыУпражнение 3. Запросы
Упражнение 3. ЗапросыArtyukhova
 
СУБД MS Access
СУБД MS AccessСУБД MS Access
СУБД MS AccessArtyukhova
 
Web forms tutorial
Web forms tutorialWeb forms tutorial
Web forms tutorialevpolov
 
Начальный документ для быстрого форматирования
Начальный документ для быстрого форматированияНачальный документ для быстрого форматирования
Начальный документ для быстрого форматирования
Николай Колдовский
 
урок по информатике формы 12 класс
урок по информатике формы 12 классурок по информатике формы 12 класс
урок по информатике формы 12 классinnaivarlak
 

What's hot (20)

Упражнение 1
Упражнение 1Упражнение 1
Упражнение 1
 
Бази даних-1 (LibreOffice Base)
Бази даних-1 (LibreOffice Base)Бази даних-1 (LibreOffice Base)
Бази даних-1 (LibreOffice Base)
 
раздел 5 субд Access
раздел 5  субд Accessраздел 5  субд Access
раздел 5 субд Access
 
1
11
1
 
упражнение 6
упражнение 6упражнение 6
упражнение 6
 
создание таблиц в Ms access
создание таблиц в Ms accessсоздание таблиц в Ms access
создание таблиц в Ms access
 
Ibpro Cms Manual
Ibpro Cms ManualIbpro Cms Manual
Ibpro Cms Manual
 
0034
00340034
0034
 
тест работа с макросами и внешними данными
тест работа с макросами и внешними даннымитест работа с макросами и внешними данными
тест работа с макросами и внешними данными
 
Конечный документ для быстрого форматирования
Конечный документ для быстрого форматированияКонечный документ для быстрого форматирования
Конечный документ для быстрого форматирования
 
Вставка формул в Word от простого к сложному
Вставка формул в Word   от простого к сложномуВставка формул в Word   от простого к сложному
Вставка формул в Word от простого к сложному
 
6.Заполнение заявления на регистрацию
6.Заполнение заявления на регистрацию6.Заполнение заявления на регистрацию
6.Заполнение заявления на регистрацию
 
0020
00200020
0020
 
Urok 3
Urok 3Urok 3
Urok 3
 
Idef0&dfd
Idef0&dfdIdef0&dfd
Idef0&dfd
 
Упражнение 3. Запросы
Упражнение 3. ЗапросыУпражнение 3. Запросы
Упражнение 3. Запросы
 
СУБД MS Access
СУБД MS AccessСУБД MS Access
СУБД MS Access
 
Web forms tutorial
Web forms tutorialWeb forms tutorial
Web forms tutorial
 
Начальный документ для быстрого форматирования
Начальный документ для быстрого форматированияНачальный документ для быстрого форматирования
Начальный документ для быстрого форматирования
 
урок по информатике формы 12 класс
урок по информатике формы 12 классурок по информатике формы 12 класс
урок по информатике формы 12 класс
 

Similar to метод рекомендации контр_раб_vba

Организация успешного внедрения payroll_Unistaff
Организация успешного внедрения payroll_UnistaffОрганизация успешного внедрения payroll_Unistaff
Организация успешного внедрения payroll_Unistaff
Irina_P
 
Устав проекта
Устав проектаУстав проекта
Устав проекта
Yury Kupriyanov
 
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...Usabilitylab
 
Bo 20 presentation
Bo 20 presentationBo 20 presentation
Bo 20 presentation_And
 
2011 диплом Чуркин А.А.
2011 диплом Чуркин А.А.2011 диплом Чуркин А.А.
Seocrm
SeocrmSeocrm
Seocrm
VladRia
 
кредит
кредиткредит
кредитlilia63
 
Trpo 11 оценка_стоимости
Trpo 11 оценка_стоимостиTrpo 11 оценка_стоимости
Trpo 11 оценка_стоимости
pogromskaya
 
Smeta
SmetaSmeta
Smetasmeta
 
план показа
план показаплан показа
план показаART BANK
 
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...Александр Шамрай
 
Mixx2016_Чухляев_Илья
Mixx2016_Чухляев_ИльяMixx2016_Чухляев_Илья
Mixx2016_Чухляев_Илья
iabrussiaprez
 
Описание содержания проекта
Описание содержания проектаОписание содержания проекта
Описание содержания проекта
Yury Kupriyanov
 
Програмные продукты.pptx
Програмные продукты.pptxПрограмные продукты.pptx
Програмные продукты.pptx
TimorHazara
 
BProfi Finance Model - финансовая модель в Эксель (Excel)
BProfi Finance Model - финансовая модель в Эксель (Excel)BProfi Finance Model - финансовая модель в Эксель (Excel)
BProfi Finance Model - финансовая модель в Эксель (Excel)
Roman Motin
 

Similar to метод рекомендации контр_раб_vba (20)

Организация успешного внедрения payroll_Unistaff
Организация успешного внедрения payroll_UnistaffОрганизация успешного внедрения payroll_Unistaff
Организация успешного внедрения payroll_Unistaff
 
Устав проекта
Устав проектаУстав проекта
Устав проекта
 
лек11 2
лек11 2лек11 2
лек11 2
 
2010-11 (ПБД) Вологжанин Д.Г.
2010-11 (ПБД) Вологжанин Д.Г.2010-11 (ПБД) Вологжанин Д.Г.
2010-11 (ПБД) Вологжанин Д.Г.
 
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...
Внутренние системы. Call-centre. Дмитрий Силаев. Открытый семинар Digital и б...
 
Bo 20 presentation
Bo 20 presentationBo 20 presentation
Bo 20 presentation
 
лр8
лр8лр8
лр8
 
2011 диплом Чуркин А.А.
2011 диплом Чуркин А.А.2011 диплом Чуркин А.А.
2011 диплом Чуркин А.А.
 
Seocrm
SeocrmSeocrm
Seocrm
 
кредит
кредиткредит
кредит
 
2010-11 (ТРПО) Костромин А.В.
2010-11 (ТРПО) Костромин А.В.2010-11 (ТРПО) Костромин А.В.
2010-11 (ТРПО) Костромин А.В.
 
Trpo 11 оценка_стоимости
Trpo 11 оценка_стоимостиTrpo 11 оценка_стоимости
Trpo 11 оценка_стоимости
 
Smeta
SmetaSmeta
Smeta
 
Lecture 11 2
Lecture 11 2Lecture 11 2
Lecture 11 2
 
план показа
план показаплан показа
план показа
 
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...
Изучение кода с использованием инструментов архитектуры в Visual Studio Ultim...
 
Mixx2016_Чухляев_Илья
Mixx2016_Чухляев_ИльяMixx2016_Чухляев_Илья
Mixx2016_Чухляев_Илья
 
Описание содержания проекта
Описание содержания проектаОписание содержания проекта
Описание содержания проекта
 
Програмные продукты.pptx
Програмные продукты.pptxПрограмные продукты.pptx
Програмные продукты.pptx
 
BProfi Finance Model - финансовая модель в Эксель (Excel)
BProfi Finance Model - финансовая модель в Эксель (Excel)BProfi Finance Model - финансовая модель в Эксель (Excel)
BProfi Finance Model - финансовая модель в Эксель (Excel)
 

More from Vladimir Burdaev

Modul 1 Systems Business Intelligence
Modul 1 Systems Business IntelligenceModul 1 Systems Business Intelligence
Modul 1 Systems Business Intelligence
Vladimir Burdaev
 
презентация управления знаниями_каркас
презентация управления знаниями_каркаспрезентация управления знаниями_каркас
презентация управления знаниями_каркас
Vladimir Burdaev
 
2015 04 14_info_b_2
2015 04 14_info_b_22015 04 14_info_b_2
2015 04 14_info_b_2
Vladimir Burdaev
 
E makros bur_2
E makros bur_2E makros bur_2
E makros bur_2
Vladimir Burdaev
 
управление знаний3 (2)
управление знаний3 (2)управление знаний3 (2)
управление знаний3 (2)Vladimir Burdaev
 
парадигма ии
парадигма иипарадигма ии
парадигма ии
Vladimir Burdaev
 
интелектуальный анализ экономических данных в системе каркас
интелектуальный анализ экономических данных в системе каркасинтелектуальный анализ экономических данных в системе каркас
интелектуальный анализ экономических данных в системе каркас
Vladimir Burdaev
 
каркас новая версия
каркас новая версиякаркас новая версия
каркас новая версия
Vladimir Burdaev
 
каркас интеллектуальный анализ вар 2
каркас интеллектуальный анализ вар 2каркас интеллектуальный анализ вар 2
каркас интеллектуальный анализ вар 2
Vladimir Burdaev
 
Karkas интеллектуальный анализ
Karkas интеллектуальный анализKarkas интеллектуальный анализ
Karkas интеллектуальный анализ
Vladimir Burdaev
 
продвижение нового товара
продвижение нового товарапродвижение нового товара
продвижение нового товара
Vladimir Burdaev
 
оценка инновационных рисков предприятия
оценка инновационных рисков предприятияоценка инновационных рисков предприятия
оценка инновационных рисков предприятия
Vladimir Burdaev
 
источник финансирования
источник финансированияисточник финансирования
источник финансирования
Vladimir Burdaev
 
каркас рибс1
каркас рибс1каркас рибс1
каркас рибс1
Vladimir Burdaev
 
каркас 2011 prezent_servis
каркас 2011 prezent_servisкаркас 2011 prezent_servis
каркас 2011 prezent_servis
Vladimir Burdaev
 
каркас тестирование
каркас тестированиекаркас тестирование
каркас тестирование
Vladimir Burdaev
 
Построение базы знаний для агентов
Построение базы знаний для агентовПостроение базы знаний для агентов
Построение базы знаний для агентов
Vladimir Burdaev
 
бурдаев Mac1
бурдаев Mac1бурдаев Mac1
бурдаев Mac1
Vladimir Burdaev
 

More from Vladimir Burdaev (20)

Modul 1 Systems Business Intelligence
Modul 1 Systems Business IntelligenceModul 1 Systems Business Intelligence
Modul 1 Systems Business Intelligence
 
презентация управления знаниями_каркас
презентация управления знаниями_каркаспрезентация управления знаниями_каркас
презентация управления знаниями_каркас
 
2015 04 14_info_b_2
2015 04 14_info_b_22015 04 14_info_b_2
2015 04 14_info_b_2
 
E makros bur_2
E makros bur_2E makros bur_2
E makros bur_2
 
Burdtech
BurdtechBurdtech
Burdtech
 
управление знаний3 (2)
управление знаний3 (2)управление знаний3 (2)
управление знаний3 (2)
 
Paradigma km 0
Paradigma km 0Paradigma km 0
Paradigma km 0
 
парадигма ии
парадигма иипарадигма ии
парадигма ии
 
интелектуальный анализ экономических данных в системе каркас
интелектуальный анализ экономических данных в системе каркасинтелектуальный анализ экономических данных в системе каркас
интелектуальный анализ экономических данных в системе каркас
 
каркас новая версия
каркас новая версиякаркас новая версия
каркас новая версия
 
каркас интеллектуальный анализ вар 2
каркас интеллектуальный анализ вар 2каркас интеллектуальный анализ вар 2
каркас интеллектуальный анализ вар 2
 
Karkas интеллектуальный анализ
Karkas интеллектуальный анализKarkas интеллектуальный анализ
Karkas интеллектуальный анализ
 
продвижение нового товара
продвижение нового товарапродвижение нового товара
продвижение нового товара
 
оценка инновационных рисков предприятия
оценка инновационных рисков предприятияоценка инновационных рисков предприятия
оценка инновационных рисков предприятия
 
источник финансирования
источник финансированияисточник финансирования
источник финансирования
 
каркас рибс1
каркас рибс1каркас рибс1
каркас рибс1
 
каркас 2011 prezent_servis
каркас 2011 prezent_servisкаркас 2011 prezent_servis
каркас 2011 prezent_servis
 
каркас тестирование
каркас тестированиекаркас тестирование
каркас тестирование
 
Построение базы знаний для агентов
Построение базы знаний для агентовПостроение базы знаний для агентов
Построение базы знаний для агентов
 
бурдаев Mac1
бурдаев Mac1бурдаев Mac1
бурдаев Mac1
 

метод рекомендации контр_раб_vba

  • 1. Методические рекомендации по выполнению контрольной работы по VBA Проектирование приложения в интегрированной среде редактора VBA для решения задачи - определение суммы возврата кредита с уплатой процентов банку по истечению определенного срока Цель: выработать умения и навыки работы с компонентами интегрированной среды VBA при разработке приложений для решения задач по банковскому делу. Постановка задачи Составить программу, реализующего вычислительный процесс по определению суммы возврата кредита с уплатой процентов банку по истечению срока действия кредитного договора (в рассматриваемом примере принимается срок кредитования, равным одному году, или 12 месяцам). Предусматривается выплата по процентам в конце действия кредитного договора. Математическая модель Сумма средств, подлежащая возврату банку по истечению срока действия кредитного договора, увеличится на сумму начисленных процентов за пользование кредита: S%=K1*P%/100, где S% - сумма начисленных процентов за пользование кредитом; K1 - сумма кредита; P% - годовая процентная ставка. По истечению срока действия кредитного договора (один год для рассматриваемого примера) сумма средств, подлежащая возврату клиентом банка, с начисленной суммой процентов определяется по формуле: K2=K1+S%, где V2 - сумма средств, подлежащая возврату банку через год.
  • 2. 2 Используя математическую модель, требуется разработать алгоритм решения задачи, в котором необходимо предусмотреть четыре этапа обработки данных: 1. Ввод исходных данных для решения задачи - сумма полученного кредита и годовая процентная ставка за пользование кредитом; 2. Вычисление суммы начисленных процентов за пользование кредитом; 3. Расчет суммы средств, которая возвращается клиентом банку; 4. Вывод результатов вычислений. Алгоритм решения задачи В соответствии с приведенной выше математической моделью необходимо разработать алгоритм решения задачи. Пример разработанного алгоритма представлен на рис. 1. Начало Ввод K1, P% S%= K1*P%/100 K2= K1+S% Вывод K2 Конец Рис. 1. Схема алгоритма определения суммы возврата кредита
  • 3. 3 Структура данных В разрабатываемом приложении используются различные элементы управления, состав которых и их основные свойства представлены в таблице 1. Таблица 1 Основные свойства элементов управления Имя элемента управления Name Caption Кредитор: (введите наименование банка) Заемщик (введите Ф. И. О.) Text Назначение Отсутствует Текст свойства Caption выводится на форме Label lblКредитор Label lblЗаемщик Label lblКредит Сумма кредита Отсутствует Label lblСтавка Процентная ставка Отсутствует Сумма возврата кредита с уплатой процентов Дата выдачи кредита Дата возврата кредита Отсутствует Label lblВозврат Отсутствует Label lblДата1 Label lblДата2 TextBox txtКредитор Отсутствует Пусто TextBox txtЗаемщик Отсутствует Пусто TextBox txtКредит Отсутствует Пусто TextBox txtСтавка Отсутствует Пусто TextBox txtВозврат Отсутствует Пусто TextBox txtДата1 Отсутствует Пусто TextBox txtДата2 Отсутствует Пусто CommandButton cmdПечать Печать формы Отсутствует CommandButton cmdВыход Выход Отсутствует Отсутствует Отсутствует Текст свойства Caption выводится на форме Текст свойства Caption выводится на форме Текст свойства Caption выводится на форме Текст свойства Caption выводится на форме Текст свойства Caption выводится на форме Текст свойства Caption выводится на форме Используется для ввода наименования банка Используется для ввода Ф. И. О. клиента Используется для ввода исходных данных (сумма кредита) Используется для ввода исходных данных (процентная ставка) Используется для вывода суммы возврата кредита с уплатой процентов Используется для вывода даты выдачи кредита (вычисляется на момент выполнения программы) Используется для вывода даты возврата кредита Печать формы с результатами вычислений Завершается работа приложения Элементы управления Label используются для вывода текстовой информации на форме, позволяющей пользователю сориентироваться,
  • 4. 4 как происходит в программе процесс ввода данных и где размещены результаты вычислений. Текст, введенный в свойстве Caption элемента управления Label, выводится на форме и в процессе выполнения программы не может быть изменен. Данные Сумма кредита, Процентная ставка являются исходными и вводятся с клавиатуры в текстовые поля txtКредит и txtСтавка. Поэтому для соответствующих элементов управления TextBox в свойстве Name указаны префиксы txt. Результаты вычислений Сумма возврата кредита с уплатой процентов выводятся в форме также в текстовое поле – txtВозврат. В коде программы при выполнении вычислений используются четыре переменных: curСумКредит, curГодПроц, curСумПроц, curВозвратКред. В таблице 2 представлены имена переменных, которые используются в коде программы, и их назначение при обработке банковской информации при кредитовании. Таблица 2 Структура данных Реквизит Имя Тип переменной Назначение Сумма кредита curСумКредит Currency Полученная клиентом сумма кредита Процентная ставка curГодПроц Currency Годовая процентная ставка Сумма по процентам curСумПроц Currency Сумма начисленных процентов Сумма возврата кредита curВозвратКред Currency Сумма средств, возвращаемая клиентом
  • 5. 5 Интерфейс с пользователем Задача решается с помощью формы, структура которой представлена на рис. 2. Проект формы и внешний ее вид после выполнения программы представлены на рис. 3. Кредитор 1 1 Заемщик 2 2 Сумма кредита Процентная ставка 3 3 Сумма возврата кредита с уплатой процентов 4 4 Дата выдачи кредита 5 5 Дата возврата кредита Рис. 2. Расположение объектов на форме 6 Объекты - Кредитор, Заёмщик, Сумма кредита, 7 Процентная 7 6 ставка, Сумма возврата кредита с уплатой процентов, Дата выдачи кредита, Дата возврата кредита размещаются на форме с помощью Печать формы 8 9 Выход элемента управления Label и имеют префикс lbl. 8 9 1 1 2 2 в эти два поля (txtКредитор и txtЗаемщик соответственно) вводится текстовая информация с клавиатуры — txtКредит 3 3 —txtСтавка 4 4 —txtВозврат 5 5 — txtДата1 6 6 — txtДата2 7 7 —cmdПечать 8 8 —cmdВыход 9 9
  • 6. Проект формы Графический образ формы после выполнения приложения Рис.3. Проект формы и внешний ее вид после выполнения программы
  • 7. Код программы Код программы, который обеспечивает выполнение указанного выше проекта, представлен на рис. 4. Рис.4. Окно кода с процедурами обработки событий Расчет суммы средств, подлежащей возврату банку, выполняется в два этапа. После двойного щелчка на текстовом поле txtВозврат определяется начисляемая за пользование кредитом сумма по процентам, которая суммируется с величиной кредита, полученной клиентом банка по кредитному договору. В текстовые поля txtДата1 (Дата выдачи кредита) и txtДата2 (Дата возврата кредита) информация вводится с помощью функции дат: Now и Date соответственно.
  • 8. Дата выдачи кредита - это текущая дата и время, полученная с помощью функции Now. Допускается, что оформление кредитного договора и выдача клиенту кредита осуществляется в тот день, когда данная программа запускается на выполнение. Дата возврата кредита определяется с помощью функции DateAdd, которая добавляет к заданной дате (дате выдачи кредита) количество временных интервалов. В рассматриваемом примере предусматривается выдача кредита на год с выплатой суммы по процентам в конце действия кредитного договора. Срок действия кредитного договора вводится в коде программы с помощью константы, значение которой и добавляется функцией DateAdd к дате выдачи кредита. Результаты работы программы выдаются на печать с помощью команды PrintForm, которая выводит на принтер графический образ окна формы. Завершение работы программы осуществляется с помощью командной кнопки Выход. На рис. 4 представлены процедуры, которые выполняют указанные выше действия. Проектирование приложения 1. Если не открыто приложение Microsoft Excel, то откройте его командой Пуск — Программы — Microsoft Office — Microsoft Excel или другим способом. 2. Выполните команду Сервис — Макрос — Безопасность и установите следующие параметры безопасности: 2.1. Во вкладке Безопасность выберите переключатель Средняя. 2.2. Во вкладке Надежные изделия установите флажок Доверять доступ к Visual Basic Project (для версии 2003 и выше). 3. Закройте окно приложения Microsoft Excel, повторите п. 1 и проверьте, сохранились ли параметры безопасности, которые были установлены в п. 2. 4. Находясь в среде Excel или другого приложения из Microsoft Office (Word или др.) откройте окно интегрированной среды разработки приложений редактора Visual Basic командой Сервис — Макрос — Редактор Visual Basic или нажатием комбинации клавиш <Alt>+<F11>. 5. На панели инструментов щелкните кнопку Insert UserForm . Появляется окно с формой UserForm1. 6. Задайте имя и заголовок формы. Для этого перейдите в окно свойств Properties и введите значения следующих свойств: Name: FrmКредит Caption: Руденко Виктория
  • 9. Примечание. В свойстве Caption студент указывает свою фамилию и имя. 7. Поместите на форму надписи Кредитор: (введите наименование банка), Заёмщик (введите Ф. И. О.), Сумма кредита, Процентная ставка, Сумма возврата кредита с уплатой процентов, Дата выдачи кредита, Дата возврата кредита в соответствующие поля (см. рис. 3). • Выберите на панели элементов управления элемент Label, а затем щелкните на форме в том месте, где будет начинаться надпись, и выделите область для надписи. • Выделите на форме элемент Label1 щелчком левой кнопкой мыши, а затем в свойстве Name окна Properties введите текст lblКредитор, а в свойстве Caption, укажите «Кредитор: (введите наименование банка)». • Справа от созданной надписи (см. рис. 2 и 3), поместите текстовое поле (TextBox). Выберите на панели элементов управления элемент TextBox, а затем щелкните на форме и выделите область для нового объекта. Выделите на форме элемент TextBox1, а затем в окне Properties введите значение свойства: Name - txtКредит. 8. Аналогично создайте поля для размещения на форме надписей Заемщик (введите Ф. И. О.), Сумма кредита, Процентная ставка, Сумма возврата кредита с уплатой процентов, Дата выдачи кредита, Дата возврата кредита и соответствующие им текстовые поля (имена полей см. в табл. 1). 9. Создайте командную кнопку Печать формы. • Выберите на панели элементов управления элемент CommandButton, а затем щелкните на форме в том месте, где будет начинаться кнопка – слева внизу формы, и удерживая нажатой левую кнопку мыши выделите для нее область (см. рис. 3). • Перейдите в окно Properties и введите значения следующих свойств: Caption: Name: Печать формы cmdПечать 10. Аналогично создайте командную кнопку Выход (в Caption укажите Выход, а в Name – cmdВыход). Размещение кнопки на форме см. на рис. 2 и 3. 11. Вызовите окно Code (кода) командой View – Code. Указанное окно может быть вызвано и другими способами, например с помощью контекстного меню. 12. Введите оператор Option Explicit. Для ввода указанного оператора необходимо выполнить следующие действия. Выбрать в окне Code объект General из списка объектов Object. Выбрать Declaration из списка Proc. Ввести оператор Option Explicit.
  • 10. 13. Для объявления константы, указывающей, на какой срок выдан кредит (в рассматриваемом примере срок кредитования 12 месяцев), введите оператор const t = 12 14. Создайте код процедуры, которая обрабатывает событие «Двойной щелчок на текстовом поле txtВозврат». • Дважды щелкните на текстовом поле txtВозврат. В результате открывается окно кода с заголовком и концом процедуры. В заголовке процедуры Sub вместо события Change введите событие DblClick. • В тело процедуры введите оператор Dim для явного объявления четырех переменных (См. табл. 2 и рис. 4). • Переменным curСумКредит и curГодПроц необходимо присвоить значения текстовых полей, которые были введены в форме. Для этих целей введите в тело процедуры два оператора curСумКредит = CCur(TxtКредит.Text) curГодПроц = CCur(TxtСтавка.Text) Примечание. Допускается в указанных выше операторах запись текстовых полей и без их свойств Text. Для выполнения вычислений в тело процедуры введите следующие операторы curСумПроц = curСумКредит * curГодПроц / 100 curВозвратКред = curСумКредит + curСумПроц В первом операторе определяется сумма, начисленная банком по процентам за пользование кредитом. Во втором операторе вычисляется сумма, которую клиент должен вернуть банку. • Следующий оператор обеспечивают вывод полученного результата в текстовое поле формы txtВозврат.Text = Format(curВозвратКред, "# ### ##0.00") 15. Создайте код процедуры, которая обрабатывает событие «Щелчок на текстовом поле TxtДата1». Дважды щелкните на текстовом поле TxtДата1. В результате открывается окно кода с заголовком и концом процедуры. В тело процедуры введите оператор TxtДата1.Text = Now
  • 11. Примечание. Дата выдачи кредита вычисляется на момент выполнения программы. 16. Создайте код процедуры, которая обрабатывает событие «Щелчок на текстовом поле TxtДата2». Дважды щелкните на текстовом поле TxtДата2. В результате открывается окно кода с заголовком и концом процедуры. В тело процедуры введите оператор txtДата2.Text = Format(DateAdd("m", t, Date), "dd/mm/yyyy") Примечание. Возврат кредита осуществляется через год после заключения кредитного договора. 17. Создайте код процедуры, которая обрабатывает событие «Щелчок на командной кнопке Печать формы» Дважды щелкните на кнопке Печать формы. В тело процедуры введите оператор, который выведет на печать графический образ окна формы с полученными результатами: Me.PrintForm 18. Создайте код процедуры, которая обрабатывает событие «Щелчок на командной кнопке Выход». Дважды щелкните на кнопке Выход. В тело процедуры введите операторы, которые закроют форму. Unload Me Set FrmКредит = Nothing 19. Сохраните документ Excel вместе с программой в своей папке (имя файла, например, может быть – Кредитование). 20. Запустите программу на выполнение и проверьте ее работу с несколькими комплектами исходных данных. 21. Завершите работу в приложении Microsoft Excel. Закройте окно Excel. 22. Двойным щелчком на имени только что созданного файла откройте его. При открытии ответьте на запрос - отключать ли макросы, нажав кнопку Не отключать макросы, а затем перейдите в окно интегрированной среды разработки приложений редактора Visual Basic и убедитесь, что в нем имеется форма UserForm и у вас имеется возможность снова запустить созданную вами программу Visual Basic.
  • 12. Литература 1. Методические рекомендации к дистанционному курсу ″Інформатика та комп’ютерна техніка″ для студентів усіх спеціальностей всіх форм навчання. / Сост. В.П. Бурдаев. - Харьков: Изд. ХНЭУ, 2006 - 126 с. Укр. яз. 2. Методические рекомендации к дистанционному курсу ″Информатика и компьютерная техника″ для студентів усіх спеціальностей всіх форм навчання. / Сост. В.П. Бурдаев. — Харьков: Изд. ХНЭУ, 2007 — 160с. Укр. яз. 3. Гарнаев А. Ю. Excel, VBA, Internet в экономике и финансах. – СПб. БХВПетербург, 2001. – 816 с. 4. Лабораторний практикум по информатике и компьютерным технологиям. /Под ред. проф. А. И. Пушкаря. - X.: Издат. Дом "ИНЖЗК", 2004. - 468 с.