Программирование в среде Visual Basic for Applications (1082430), страница 17
Текст из файла (страница 17)
Теперь все производимые действия будут записываться до тех пор, пока не будет нажата эта кнопка. Предварительно решите уравнение, вычисляющее маргинальную процентную ставку. В ячейку В2 введено число вы- 130 Программирование в среде )г(виа! Вав(с(ос Арр((сансов плат, равное шести, ячейка В7 отведена под процентную ставку, а в ячейку В8 введена формула =ПЗ (В7 ) В2; В4), вычисляющая текущий объем ссуды. Требуется найти процентную ставку, при которой текущий объем ссуды равен 10 000. Включите Масгойесог(1ег и решите данную задачу вручную на рабочем листе и посмотрите на записанный макрос.
Решите задачу в соответствии со следующим алгоритмом: 1. Выберите команду Сервис/Подбор параметра. 2. В появившемся диалоговом окне Подбор параметра в поле Установить в ячейке укажите ссылку на ячейку В8, где содержится формула с левой частью решаемого уравнения. В поле Значение введите число 10 000, значение правой части решаемого уравнения. В поле Изменяя значение ячейки укажите ссылку на ячейку В7, которая отведена под неизвестную в решаемом уравнении. 3. Нажмите на кнопку ОК. Появится диалоговое окно Результат подбора параметра с информацией о найденном решении.
4. Нажмите на кнопку ОК диалогового окна Результат подбора параметра. Перечисленные выше действия будут переведены МасгоКесог(1ег в следующий макрос: ЯпЬ Макрос1() Макрос1 Макрос Макрос записан 06.12.99 (Иванов ) Напде("ВВ").ооа1вее)с Ооа1:=10000, СЬапдьпдое11о=иапде("В7") Епс) БпЬ Как видно из записанного макроса, несмотря на многошаговость процесса решения уравнения вручную, программно это решение состоит только нз одной инструкции. Во избежание ошибок при написании программ те фрагменты, которые можно создать с помощью МасгоВесог(1ег, лучше и создавать с его помощью. Потом лишь скопировать их в исходную программу, внеся требуемые изменения, если в этом возникнет необходимость.
МасгоВесог(1ег, в отличие от неопытного пользователя, не делает синтаксических ошибок. 17. Расчет ма гинальной и о ентной ставки тз1 При написании программы данного приложения МасгоКесогдег может также пригодиться для задания числовых форматов в ячейках ВЗ, В4, Вб и В7. Для активизации МасгоКесог(1ег выберите команду Сервис/ Макрос/Начать запись и запустите МасгоКесогдег на запись. Задавайте числовые форматы в ячейках ВЗ, В4, В5 и В7 по следующему алгоритму: 1. Выделите ячейку ВЗ. Выберите команду Формат/Ячейки.
В появившемся диалоговом окне Формат ячеек 1рис. 17.4) на вкладке Число в списке Числовые форматы выберите Денежный. В поле Число десятичных знаков введите О, а в раскрывающемся списке Обозначения выберите р. Нажмите кнопку ОК. 2. Выделите ячейку В4 и установите в ней числовой формат, как описано выше. 3. Выделите ячейку В5. Выберите команду Формат/Ячейки. В появившемся диалоговом окне Формат ячеек на вкладке Число в списке Числовые форматы выберите Процентный. В поле Число десятичных знаков введите 2. Нажмите кнопку ОК. 4.
Выделите ячейку В7 и установите в ней числовой формат, как описано в п. 3. Перечисленные выше действия будут переведены МасгоКесогдег в следующий макрос: ЯпЬ Макросз() Макросз Макрос Макрос записан 06.05.99 (Иванов) Еапче ("Вз") .Яе1есп Яе1есстоп.нпеЬеввогпас = "4,6()ОЯ" Еапде("В4").Яе1есо Яе1есС1оп.н~лпЬевкоккап = "$,$((0$" Еапое("В5").Яе1есо Яе1есС1оп.иппЬевкосвао = "0.00$" капуе("В7").Яе1есв Яе1есо1оп.нппЬеггоспао = "0.00$" Епд ЯиЬ 132 программирование в среде 1вгвиа1 Ваек7ог Арр1гсаиопе Созданные в данном макросе инструкции как раз и осуществляют требуемое в программе приложения форматирование. Рнс.
17.4. Диалоговое окно иФормат ячеек» Самостоятельное задание Разработать приложение с диалоговым окном Решение уравнения (рис. 17.5) для реализации следующих задач: ° Нахождение корней уравнения хем= а; ° Отметим, что данное уравнение в зависимости от параметров а и 6 может иметь два корня, либо только один корень, либо вообще их не иметь. В приложении следует предусмотреть отображение информационного сообщения о том, сколько корней при вводимом наборе параметров имеет уравнение.
При наличии корней вывести нх значения. Используя свойство У1яЫе (Видимый) элементов управления, сделайте так, чтобы в группе Корни в случае единственного корня отображалось только одно поле с этим корнем, а при отсугствии корней в этой группе не отображалось бы ни одного поля, но вместо них отображался бы элемент управления СарНоп (Надпись) с текстовым сообщением об их отсутствии.
18. Расчет амортизации Разработаем приложение, решающее задачу расчета амортизации в зависимости от выбранного метода: стандартного или к-кратного учета амортизации. На примере данного приложения вы узнаете, что такое ([21): ° финансовые функции расчета амортизации; ° управление видимостью отдельных элементов управления в окне диалога; ° программный вывод объектов 1)т'огйАгФ на рабочий лист.
аМР(стоимость; остаток; время эксплуатации) Аргументы функции: Стоимость Начальная стоимость имущества Остаток Остаточная стоимость в конце периода амортиза- ции (иногда называется ликвидной стоимостью имущества) Время экспяуатаиии Количество периодов, за которые собственность амортнзируется (иногда называется периодом амортизации) Предположим, вы купили за б 000 руб. компьютер, который после 5 лет эксплуатации будет оцениваться в 1 000 руб. Снижение стоимости для каждого года эксплуатации вычисляется формулой =АМР (б000; 1000; 5), которая определяет 1 000.
Под амортизацией подразумевается уменьшение стоимости имущества в процессе эксплуатации. Обычно оценивают величину этого уменьшения на единицу времени. Функция рабочего листа АМР (ЯЬМ) возвращает величину амортизации имущества за один период времени, используя метод равномерной амортизации. Синтаксис функции АМР: 1В. Расчет амо тиэа ии 135 Функция АМГД (Ях'Р) возвращает годовую амортизацию имущества для указанного периода.
Синтаксис АМГД: АМГД(стоимость; остаток; время эксплуатации; период) Аргументы функции АМГД: Стоимость Начальная стоимость имущества Остаток Остаточная стоимость в конце периода амортизации (ииогда называется ликвидной стоимостью имущества) Время эксплуатации Количество периодов, за которые собственность амортизируется (иногда называется периодом амор- тизации) Номер периода для вычисления амортизации (дол- жен измеряться в тех же единицах, в которых изме- ряется и время полной амортизации) Период дОБ(стоимость; остаток; время эксплуатации; период; месяц) Аргументы функции АМГД: Стоимость Остаток Начальная стоимость имущества Остаточная стоимость в конце периода амортизации (иногда называется ликвидной стоимостью имуще- ства) Время эксплуатации Количество периодов, за которые собственность амортизируется (иногда называется периодом амор- тизации) При расчете предыдущего примера получим, что за первый год эксплуатации компьютера амортизация вычисляется формулой =АМГД (6000; 1000; 5; 1), которая возвращает значение 1666,67 руб., а запоследний — формулой =АМГД (6000; 10 0 0 $5; 5 ), которая возвращает значение 333.33 руб.
Функция ДОБ (РВ) возвращает амортизацию имущества на заданный период, используя метод постоянного учета амортизации. Синтаксис функции ДОБ: Программирование в среде )тэна( Ваэ(суок Аррйсаполэ 136 Метод постоянного учета амортизации вычисляет амортизацию, используя фиксированную процентную ставку. При расчете предыдущего примера получим амортизацию за время эксплуатации компьютера: Функция ДЖОБ(РРВ) возвращает величину амортизации имущества для указанного периода, используя метод двукратного 1или к-кратного) учета амортизации.
Синтаксис функции ДДОБ: ДДОБ(стоимость; остаток; время эксплуатации; период; коэффициент) Аргументы функции ДДОБ: Стоимость Начальная стоимость имущества Остаточная стоимость в конце периода амортиза- ции (нногда называется ликвидной стоимостью имущества) Остаток Время эксплуатации Количество периодов, за которые собственность амортнзируется (иногда называется периодом амортизации) Период Номер периода для вычисления амортизации (должен измеряться в тех же единицах, в которых измеряется н время полной амортизации) Коэффициент Норма снижения балансовой стоимости (аморти- зации).
Если коэффициент опущен, то предполага- ется, что он равен двум (метод двукратного учета амортизации) Метод двукратного учета амортизации предполагает ускоренную амортизацию имущества. При этом амортизация является максимальной в первый период и снижается в последующие периоды. В примере с компьютером по методу двукратной амортизации она составит: =ДОБ(6000;1000;5;1) возвращает =ДОБ(6000;1000;5;2) возвращает =ДОБ(6000;1000;5;3) возвращает =ДОБ(6000;1000р5;4) возвращает =ДОБ(6000;1000;5;5) возвращает значение 1806.00р.
значение 1262.39р. значение 882.41р. значение 616.81р. значение 431.15р. 18. Расчет аиа тиза ии 137 (6000;1000р5; 1) возвращает (60004100045; 2) возвращает (6000;1000;5; 3) возвращает (6000;1000;5; 4) возвращает (6000;1000р5; 5) возвращает =ДДОБ =ДДОБ =.ДДОБ =ДДОБ =ДДОБ значение 2400.00р значение 1440.00р. значение 864.00р. значение 296.00р.
значение 0.00р. Рис. 18.) . Диалоговое окно чРасчет амортизации» В следующем разделе рассматривается разработка приложения, в котором по начальной и остаточной стоимости оборудования, сроку амортизации и расчетному периоду амортизации при выбранном методе расчета находится величина амортизации.
Кроме того, в диалоговом окне, с помощью которого происходит управление работой приложения, свойство Ч1Б1Ые осуществляет управление видимостью поля, счетчика и надписи. Изменение свойства Ч161Ые происходит при выборе метода амортизации. Для придания большей презентабельности отчету об амортизации на рабочий лист внедряется объект ЪЧогдАг1 при помощи метода А(ЫТех$Ейест семейства ЯЬарея. Для решения задачи нахождения вычисления амортизации оборудования по стандартному методу или методу к-кратного учета с помощью редактора пользовательских форм создадим диалоговое окно Расчет амортизации (рис.