Возвращает значение Double, указывающее выплату процентов за определенный период аннуитета на основе периодических фиксированных платежей и фиксированной процентной ставки.
Синтаксис
IPmt ( rate, per, nper , pv [, fv ] [, type ] )
Аргументы функции IPmt :
Аргумент |
Описание |
ставка |
Обязательный аргумент. Значение double, обозначающее процентную ставку за период. Например, если вы берете кредит на автомобиль с годовой процентной ставкой, равной 10 %, и ежемесячными выплатами, ставка за период будет равна 0,1/12 (0,0083). |
За |
Обязательный. Double , указывающий период оплаты в диапазоне от 1 до nper. |
кпер |
Обязательный аргумент. Значение Double , указывающее общее количество периодов оплаты в аннуитетном платеже. Например, при ежемесячных выплатах по четырехгодичному кредиту на машину число периодов выплат равно 4*12 (или 48). |
пс |
Обязательный аргумент. Значение Double, которое указывает текущую стоимость ряда будущих платежей или поступлений. Например, при получении кредита на покупку автомобиля сумма кредита для кредитора равноценна будущим ежемесячным платежам по кредиту. |
бс |
Необязательный аргумент. Вариант, обозначающий будущую стоимость или баланс, которые вы хотите достичь после последней выплаты. Например, будущая стоимость для займа равна 0 р., поскольку это значение останется после последней выплаты. Но если вы хотите накопить за 18 лет 50 000 $ на образование ребенка, будущая стоимость равна 50 000 $. Если этот аргумент не задан, используется значение 0. |
тип |
Необязательный аргумент. Вариант, определяющий, когда должна производиться выплата. Укажите значение 0, если платежи выплачиваются в конце периода оплаты, или 1, если они выплачиваются в начале периода. Если этот аргумент не задан, используется значение 0. |
Замечания
Выплатами называется ряд фиксированных платежей наличными, которые выполняются в определенный период времени. Это может быть заём (например, ипотека) или инвестиция (например, сберегательный вклад с ежемесячным пополнением).
При вычислении значений ставка и кпер нужно использовать периоды оплаты, выраженные в одних и тех же единицах. Например, если ставка вычисляется с использованием месяцев, значение кпер также должно рассчитываться с использованием месяцев.
Все аргументы, которым соответствуют выплачиваемые денежные средства (например, сберегательные вклады), представляются отрицательными числами, а получаемые (например, дивиденды) — положительными.
Пример запроса
Expression |
Результаты |
SELECT FinancialSample.*, IPMT([AnnualRate]/12,10,[TermInYears]*12,-[LoanAmount],0,0) AS INTPaid FROM FinancialSample; |
Возвращает все поля из таблицы "FinancialSample", вычисляет проценты, выплаченные в "per" (10 в этом примере) "LoanAmount" на основе "AnnualRate" и "TermInYears" и отображает результаты в столбце INTPaid. |
Пример VBA
Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.
В этом примере функция IPmt используется для вычисления суммы выплаты процентов, если все платежи имеют одинаковую ценность. Приведены процентная ставка за период (APR / 12), период выплаты, в течение которого требуется процентная часть (Period), общее количество платежей (TotPmts), приведенная стоимость или основная часть кредита (PVal), будущая стоимость кредита (FVal) и число, указывающее, должен ли платеж производиться в начале или конце периода выплаты (PayType).
Dim FVal, Fmt, PVal, APR, TotPmts, PayType
Dim Period, IntPmt, TotInt, Msg Const ENDPERIOD = 0, BEGINPERIOD = 1 FVal = 0 ' Usually 0 for a loan. Fmt = "###,###,##0.00" ' Define money format. PVal = InputBox("How much do you want to borrow?") APR = InputBox("What is the annual percentage rate " & _ "of your loan?") If APR > 1 Then APR = APR / 100 ' Ensure proper form. TotPmts = InputBox("How many monthly payments?") PayType = MsgBox("Do you make payments at " & _ "the end of the month?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If For Period = 1 To TotPmts ' Total all interest. IntPmt = IPmt(APR / 12, Period, TotPmts, _ -PVal, FVal, PayType) TotInt = TotInt + IntPmt Next Period Msg = "You'll pay a total of " & Format(TotInt, Fmt) Msg = Msg & " in interest for this loan." MsgBox Msg ' Display results.