Главная » Просмотр файлов » Программирование в среде Visual Basic for Applications

Программирование в среде Visual Basic for Applications (1082430), страница 16

Файл №1082430 Программирование в среде Visual Basic for Applications (Программирование в среде Visual Basic for Applications) 16 страницаПрограммирование в среде Visual Basic for Applications (1082430) страница 162018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 16)

Рассматриваемое приложение решает задачу следующего типа. В некоторой стране, например в России, живет начинающий бизнесмен Иванов Иван Иванович. Однажды ему предлагают следующую сделку. Иванов дает в долг 10 000 руб., а ему возвращают по 2 000 руб. в течение шести последующих лет, т. е. в сумме 12 000 руб., что больше даваемой в долг суммы.

Иванов может не давать эти деньги в долг, а положить под проценты в банк. Спрашивается: при какой минимальной процентной ставке более выгодно класть деньги под проценты, чем давать в долг на указанных условиях? Чему равен текущий обьем вклада при годовой ставке 7;4? Маргинальной процентной ставкой является максимальная процентная ставка, при которой предлагаемая сделка более выгодна, чем просто положить деньги под проценты. 17. Расчетма гинальнай и о ентной ставки 123 Для решения этой задачи воспользуемся понятием текуи1ий объем вклада. Текущий объем вклада в это сегодняшний объем будущих платежей (отрицательные значения) и поступлений (положительные значения).

Например, вам предлагают следующую сделку. У вас берут в долг некоторую сумму денег и предлагают через к1 год вернуть Рк1 денег, через к2 года — Рк2 денег и т. д., через кп лет вернуть Р)пз денег. Кроме данной сделки у вас есть альтернативный способ использования ваших денег, например положить их в банк под 1% годовых. Тогда текущим объемом вклада является та сумма денег, которой вы должны располагать в текущем году, чтобы, положив их в банк под 1% годовых, вы получили предлагаемую вам прибыль. Текущий объем вклада на основе постоянных периодических платежей в течение согласованного срока возвращает финансовая функция рабочего листа ПЗ (РЧ).

Синтаксис: ПЭ(ставка; клер; выплата; бз; тип) Аргументы функции: Ставка Процентная ставка за период Кпер Общее число периодов выплат Величина постоянных периодических платежей Выплата Бз Будущая стоимость, или баланс наличности, которого нужно достичь после последней выплаты. Если Бз опущено, то он полагается равным нулю (будущая стоимость займа, например, равна нулю) Тип Число О или 1, обозначающие, когда должна произво- диться выплата. Если тип равен О или опущен, то опла- та в конце периода, если — 1, то в начале периода Текужий объем вклада = размер ссуды. При решении задачи о сделке пользователь вводит значения следующих параметров: число выплат (кпер), размер ссуды, размер одной выплаты (выплата) и процентную ставку (ставка).

Приложение вычисляет с помощью функции ПЗ (РЧ) при данной годовой ставке текущий объем вклада. Маргинальная процентная ставка находится как корень уравнения Программирование в среде 11хиа1 ВахГс7ог Аррйсайот 124 Рис. 17.1. Диалоговое окно «Маргинальная процентная ставка» Рассмотрим, как приведенная ниже программа решает перечисленные выше задачи и что происходит в программе. 11яеге'опп 1п111а! 1ае 1. Активизирует диалоговое окно, 2.

Запрещает ввод данных пользователем в по- ля Текущий объем ссуды и Маргинальная процентная ставка. 3. Назначает клавише Езс функцию кнопки Отмена, а клавише Епгсг — Вычислить. 4. Связываст с кнопками Вычислить и Отме- на всплывающие подсказки Данное соотношение является уравнением относительно одной неизвестной величины — процентной ставки. Корень одного уравнения с одной неизвестной находится на рабочем листе с помощью команды Сервис/Подбор параметра или программно посредством метода Соа1Яеек.

Для решения задачи нахождения текущего объема вклада и нахождения маргинальной процентной ставки с помощью редактора пользовательских форм создадим диалоговое окно Маргинальная процентная ставка (рис. 17.1). 17. Расчетма гинальной н оиентной ставки 125 5. Проверяет, являются ли вводимые данные числами. Если хотя бы одно из них не является числом, то на экране отображается соответствующее информационное сообщение с установкой фокуса на поле, где произведен некорректный ввод данных. б.

Проверяет, будет ли ссуда меньше чем возвращаемая сумма денег. Если ссуда больше этой суммы, то отображается сообщение с ука- занием, насколько ссуда меньше возвращаемой суммы денег (рис. 17.2). 7. Используя финансовую функцию рабочего листа, ПЗ(Рт') вычисляет чистый текущий объем ссуды при введенной процентной ставке.

8. Используя метод Соа!веек (Подбор пара- метра), находит маргинальную процентную ставку, т. е. ставку, при которой чистый теку- щий объем ссуды равен величине самой ссуды. 9. Подготавливает рабочий лист для вывода результатов вычислений. Выводит полученные данные на рабочий лист (рис. 17.4) и в диало- говое окно (рис. 17.3) Нажатие кнопки Вычислить запускает на выполнение процедуру СопипапбВп11оп1 Сйск Закрывает диалоговое окно Нажатие кнопки Отмена запускает на выполнение процедуру Сопипапдвппоп2 С! 1ск Рис. 17.2. Сообщение о некорректном вводе данных 126 Программирование в среде Ивиа! Вапс~ог Арр!(са((опт Рис.

17.3. Отчет, выводимый на рабочем листе программой расчета маргинальной процентной ставки Текст программы имеет следующий вид: Рг1чаее ЯиЬ Соаавапбвиепоп1 С11ск() Процедура расчета маргинальной процентной ставки Вйщ 1 Ая ПоиЫе П1щ р Ая ПоиЫе Вйш А Ая ПоиЬ1е П1ш 1Магд Ая ПоиЫе П1щ рриге Ая ПоиЫе П1щ и Ая тпеедег и — число выплат р — размер ссуды а — размер одной выплаты — процентная ставка рриге — текущий объем ссуды, на рабочем листе вычисляется функцией ПЗ 1Магд — маргинальная процентная ставка Проверка того, чтобы введенные в диалоговое окно данные являлись числами 11 1яИищегтс(ТехСВох1.Техе) = Ра1яе ТЬеп МядВох "Ошибка в числе выплат", чЬ1пгогшагтоп, "Маргинальная ставка" ТехСВох1.Бесгосия Вх1С ЯиЬ ! 7. Расчет ма гинальной и о ентной ставки 127 Епд 11 11 1яыишег1с(ТехТВох2.ТехТ) = Ра1яе ТЬеп МядВох "Ошибка в размере ссуды", чЬ1пйогшаТ1оп, "Маргинальная ставка" ТехТВох2.БеТРосия Ехйг ЯиЬ Епб 11 11 1яышаегйс(дяегрогш1.ТехТВохЗ.ТехТ) = Ра1яе ТЬеп МядВох "Ошибка в размере одной выплаты", чЬХп1огшаТ1оп, "Маргинальная ставка" ТехТВохЗ.ЯеТРосия Ех1Т ЯиЬ Епс) ХТ ХТ Хяыишег1с(ТехТВох4.ТехТ) = Ра1яе ТЬеп МядВох "Ошибка в процентной ставке", чЬХп1огшаТ1оп, "Маргинальная ставка" ТехТВох2.БеТРосия Ех1Т ЯиЬ Епд 11 Ввод данных в переменные из диалогового окна — С1пТ(ТехТВох1.ТехТ) р = СЭЬ1(ТехТВох2.ТехТ) А = С1пТ(ТехТВохЗ.ТехТ) 1 = С1пТ(ТехТВох4.ТехТ) / 100 Проверка согласованности ввода данных 11 и * А < р Тпеп МядВох "Возвращается на" я СБТТ(РогшаТ(р — и * А, "РХхеб")) а "меньше размера ссуды", чЬЕхс1ашаТХоп, "Маргинальная ставка" ТехТВох1.ЯеТРосия Ех1Т ЯиЬ Епс) 11 Изменение ширины столбцов и задание рекима ввода текста с переносом АсТ1чеЯЬееТ.Со1ишпя("А:А").Яе1есс ИХТЬ Яе1есТйоп .Со1игоп(ВЫТЬ = 20 .ИгарТехс = Тгие Епс) И1ТЬ АСТ1чеЯЬееТ.С01ишпя("В:В").Бе1есс Бе1есТ1оп.Со1ишпш1с)ТЬ = 12 Выбор ячейки В2 для того, чтобы снять выделение со столбца В АТТ1чеЯЬеес.наиде("В2").Бе1есТ Ввод названий записей на рабочем листе ИХТЬ АсТ1чеЯЬееТ .Рапде("А2").Ча1ие = "Число выплат"' .Балде("АЗ").Ча1ие = "Размер ссуды" .

наиде ("А4") .Ча1ие = "Размер одной выплаты" 128 Программирование в среде Уииа( Вапс7от Аррйсайопб .Калде("А5").Ча1це = "Процентная ставка" .Калде("Аб").Ча1це = "Текущий объем ссуды" .Калде("А7").Ча1це = "Маргинальная процентная ставка" .Калде("А8").Ча1це "Маргинальный чистый текущий объем ссуды" .Рапде("ВБ").Аст1чате Епс) Х1тЬ Расчет чистого текущего объема ссуды ррцге = Арр1тсат1оп.РЧ(1, и, -А) Нахождение маргинальной процентной ставки с помощью команды "Подбор параметра".

Ввод данных в ячейки активного рабочего листа и задание процентного и денежного форматов в ячейках Х1тЬ Аст1чеБЬеет .Канде("В2").Ча1це = и .Рапде("ВЗ").НшаЬетуогщат = "$,$$0$" .Калде("ВЗ").Ча1це = р .Калде("В4").НцщЬегуогщат = "4,$$0$" .Калде("В4").Ча1це = А .Калде("В5").НцщЬегрогщат = "0.00$" .Калде("85").Ча1це .Калде("В7").Нц1пЬегроппат = "0.00$" Ввод начального приближения для маргинальной процентной ставки .Рапде("В7").Ча1це = 1 Ввод формулы расчета .Калде("В8").Ротщц1аПоса1 =ПБ(87;82,"-84)" .Калде("Вб").Ча1це = .Калде("В8").Ча1це Выполнение команды "Подбор параметра" .Калде("В8").Боа1Бее)с Боа1:=р, СЬапд1пдСе11:=.Калде("В7") Присвоение найденного значения маргинальной процентной ставки переменной ЕМатд ТМатд = .Калде("В7").Ча1це Епс( ХЕГЬ Переформатирование найденных значений и вывод их в диалоговом окне ТехтВох5.Техт СБтт(Ротщат(ррцте, "РТхеб")) техтВохб.техт = сБтт(Ротщат(1магд * 100, "Р1хеб")) Епб БцЬ Рт1чате ЯцЬ Сощщапс)Вцттоп2 С11сй() Процедура закрытия диалогового окна Пзетуотю1.НТс)е Епб БцЬ Рг1чате БцЬ Пзетротт.1п1т1а11зе() !7.

Расчетма гинальной п о ентной ставки Процедура вызова диалогового окна. Поля Чистый текущий объем ссуды и маргинальная процентная ставка доступны для вывода информации, но не для ее ввода Техпаохз.кпаЬ1ей = Ра1ве Техевохб.впаЬ1ей = Ра1ве Клавише Епгег назначена функция кнопки Вычислить Кнопке Вычислить назначен текст всплывающей подсказки НТСЬ СошшапйВцееоп1 /Пегац1С = Тгце .Соппго1Т1рТехе "Расчет и составление отчета на рабочем листе" Епй Х1ЬЬ Клавише Еас назначена функция кнопки Отмена Кнопке Отмена назначен текст всплывающей подсказки ИТСЬ Согошапйнцееоп2 /Сапсе1 = Тгце .Сопего1Т1ртехг = "Кнопка отмены" Епй ИТСЬ Пвеггогш1.ВЬои Епй ВцЬ 129 При написании программ, в которых используются те или иные возможности рабочего листа, а не только ЧВА, часто бывает удобным вариантом употребить средство МасгоКесогдег.

Оно создаст макрос, описывающий на языке ЧВА осуществляемые вами действия. МасгоКесогдег является одним из интеллектуальных средств М1сгозой Опзсе, которое облегчает работу разработчиков приложений. Конечно, создаваемый им макрос будет во многих отношениях неоптимальным, но он даст хорошую подсказку, какие инструкции должны быть добавлены в программу, чтобы добиться требуемого эффекта. Для активизации МасгоКесогдег выберите команду Сервис/Макрос/Начать запись и запустите МасгоКесогдег на запись. После задания всех параметров в появившемся диалоговом окне Запись макроса и нажатия кнопки ОК появится плавающая панель инструментов с кнопкой Остановить запись.

Характеристики

Тип файла
DJVU-файл
Размер
1,73 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6367
Авторов
на СтудИзбе
310
Средний доход
с одного платного файла
Обучение Подробнее