Financial.DDB(Double, Double, Double, Double, Double) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение, определяющее амортизацию актива за указанный период времени с помощью метода двойного уменьшения остатка или другого указанного метода.
public static double DDB (double Cost, double Salvage, double Life, double Period, double Factor = 2);
static member DDB : double * double * double * double * double -> double
Public Function DDB (Cost As Double, Salvage As Double, Life As Double, Period As Double, Optional Factor As Double = 2) As Double
Параметры
- Cost
- Double
Обязательный. Начальная стоимость актива.
- Salvage
- Double
Обязательный. Стоимость актива на момент окончания срока его эксплуатации.
- Life
- Double
Обязательный. Срок эксплуатации актива.
- Period
- Double
Обязательный. Период расчета амортизации актива.
- Factor
- Double
Необязательный элемент. Коэффициент уменьшения остатка. Если значение не указано, то предполагается 2 (метод двойного уменьшения остатка).
Возвращаемое значение
Значение, определяющее амортизацию актива за указанный период времени с помощью метода двойного уменьшения остатка или другого указанного метода.
Исключения
Factor
<= 0, Salvage
< 0,<Period
= 0 или Period
>Life
.
Примеры
В этом примере функция используется DDB
для возврата амортизации актива за указанный период с учетом начальной стоимости (InitCost
), стоимости использования в конце срока эксплуатации актива (SalvageVal
), общего срока службы актива в годах (LifeTime
) и периода в годах, для которого рассчитывается амортизация (Depr
).
Dim InitCost, SalvageVal, LifeTime, DepYear As Double
Dim Fmt As String = "###,##0.00"
InitCost = CDbl(InputBox("What's the initial cost of the asset?"))
SalvageVal = CDbl(InputBox("Enter the asset's value at end of its life."))
LifeTime = CDbl(InputBox("What's the asset's useful life in years?"))
' Use the SLN function to calculate the deprecation per year.
Dim SlnDepr As Double = SLN(InitCost, SalvageVal, LifeTime)
Dim msg As String = "The depreciation per year: " & Format(SlnDepr, Fmt)
msg &= vbCrLf & "Year" & vbTab & "Linear" & vbTab & "Doubling" & vbCrLf
' Use the SYD and DDB functions to calculate the deprecation for each year.
For DepYear = 1 To LifeTime
msg &= DepYear & vbTab &
Format(SYD(InitCost, SalvageVal, LifeTime, DepYear), Fmt) & vbTab &
Format(DDB(InitCost, SalvageVal, LifeTime, DepYear), Fmt) & vbCrLf
Next
MsgBox(msg)
Комментарии
Метод двойного сокращения остатка рассчитывает амортизацию с повышенным коэффициентом. Самое большое значение амортизации приходится на первый период, а в последующих периодах скорость снижается.
Аргументы Life
и Period
должны быть выражены в одних и том же единицах. Например, если Life
задано в месяцах, Period
то также должно быть задано в месяцах. Все аргументы должны быть положительными числами.
Функция DDB
использует следующую формулу для вычисления амортизации за заданный период:
Амортизация / период = ((стоимость - спасение) * фактор) / срок службы