Возвращает значение Double, указывающее количество периодов для аннуитета на основе периодических фиксированных платежей и фиксированной процентной ставки.
Синтаксис
NPer ( rate, pmt, pv [, fv ] [, type ] )
Аргументы функции NPer :
Аргумент |
Описание |
ставка |
Обязательный аргумент. Значение double, обозначающее процентную ставку за период. Например, если вы берете кредит на автомобиль с годовой процентной ставкой, равной 10 %, и ежемесячными выплатами, ставка за период будет равна 0,1/12 (0,0083). |
плт |
Обязательный аргумент. Значение double, обозначающее платеж, который должен выплачиваться в каждый период. Обычно платежи включают основную сумму и проценты, которые не изменяются на протяжении всего периода выплат. |
пс |
Обязательный аргумент. Значение Double, которое указывает текущую стоимость ряда будущих платежей или поступлений. Например, при получении кредита на покупку автомобиля сумма кредита для кредитора равноценна будущим ежемесячным платежам по кредиту. |
бс |
Необязательный аргумент. Вариант, обозначающий будущую стоимость или баланс, которые вы хотите достичь после последней выплаты. Например, будущая стоимость для займа равна 0 р., поскольку это значение останется после последней выплаты. Но если вы хотите накопить за 18 лет 50 000 $ на образование ребенка, будущая стоимость равна 50 000 $. Если этот аргумент не задан, используется значение 0. |
тип |
Необязательный аргумент. Вариант, определяющий, когда должна производиться выплата. Укажите значение 0, если платежи выплачиваются в конце периода оплаты, или 1, если они выплачиваются в начале периода. Если этот аргумент не задан, используется значение 0. |
Замечания
Выплатами называется ряд фиксированных платежей наличными, которые выполняются в определенный период времени. Это может быть заём (например, ипотека) или инвестиция (например, сберегательный вклад с ежемесячным пополнением).
Все аргументы, которым соответствуют выплачиваемые денежные средства (например, сберегательные вклады), представляются отрицательными числами, а получаемые (например, дивиденды) — положительными.
Пример запроса
Expression |
Результаты |
SELECT FinancialSample.*, INT(NPER([AnnualRate]/12,-[MonthlyRePayment],[LoanAmount],0,0)) AS MonthsRequired FROM FinancialSample; |
Возвращает все поля из таблицы "FinancialSample", вычисляет количество периодов (месяцы в этом примере), необходимых для оплаты "LoanAmount", на основе "AnnualRate" и "MonthlyRePayment" и отображает результаты в столбце MonthsRequired. Функция INT используется для преобразования выходных данных "Double" в целочисленное значение. |
Пример VBA
Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.
В этом примере функция NPer возвращает количество периодов, в течение которых должны быть произведены платежи для погашения кредита, стоимость которого содержится в PVal. Также предоставляются процентная ставка за период (APR / 12), платеж (Payment), будущая стоимость кредита (FVal) и число, указывающее, должен ли платеж производиться в начале или конце периода платежа (PayType).
Dim FVal, PVal, APR, Payment, PayType, TotPmts
' When payments are made. Const ENDPERIOD = 0, BEGINPERIOD = 1 FVal = 0 ' Usually 0 for a loan. 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. Payment = InputBox("How much do you " & _ "want to pay each month?") PayType = MsgBox("Do you make payments " & _ "at the end of month?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD End If TotPmts = NPer(APR / 12, -Payment, PVal, FVal, PayType) If Int(TotPmts) <> TotPmts Then TotPmts = Int(TotPmts) + 1 End If MsgBox "It will take you " & TotPmts & _ " months to pay off your loan."