Возвращает значение амортизации актива за указанный период (в виде числа Double), используя метод двойного уменьшения остатка или иной явно указанный метод.

Синтаксис

DDB( нач_стоимость;ост_стоимость;время_эксплуатации;период ;[коэффициент])

Функция DDB имеет следующие аргументы:

Аргумент

Описание

нач_стоимость

Обязательный аргумент. Значение типа Double, выражающее первоначальную стоимость актива.

ост_стоимость

Обязательный аргумент. Значение типа Double, выражающее стоимость актива по истечении срока службы.

время_эксплуатации

Обязательный аргумент. Значение типа Double, выражающее срок службы актива.

период

Обязательный аргумент. Значение Double, указывающее период, для которого вычисляется амортизация.

коэффициент

Необязательный аргумент. Значение Variant, обозначающее коэффициент уменьшения остатка. Если этот аргумент опущен, предполагается значение 2 (метод двойного уменьшения остатка).

Замечания

Метод двойного уменьшения остатка вычисляет амортизацию, используя увеличенный коэффициент. Амортизация является максимальной в первый период и уменьшается в последующие.

Аргументы время_эксплуатации и период должны быть выражены в одинаковых единицах. Например, если время_эксплуатации указано в месяцах, период также должен быть задан в месяцах. Значения всех аргументов должны быть положительными числами.

Функция DDB вычисляет амортизацию за указанный период по следующей формуле:

Амортизация / период = ((нач_стоимостьост_стоимость) * коэффициент) / время_эксплуатации

Пример

Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

В данном примере функция DDB возвращает амортизацию актива для указанного периода. Для функции задано значение начальной стоимости (InitCost), значение стоимости в конце срока службы актива (SalvageVal), срок службы актива (в годах) (LifeTime) и период (в годах), для которого вычисляется амортизация (Depr).

Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, DeprConst YRMOS = 12    ' Number of months in a year.Fmt = "###,##0.00"InitCost = InputBox("What's the initial cost of the asset?")SalvageVal = InputBox("Enter the asset's value at end of its life.")MonthLife = InputBox("What's the asset's useful life in months?")Do While MonthLife < YRMOS    ' Ensure period is >= 1 year.    MsgBox "Asset life must be a year or more."    MonthLife = InputBox("What's the asset's useful life in months?")LoopLifeTime = MonthLife / YRMOS    ' Convert months to years.If LifeTime <> Int(MonthLife / YRMOS) Then    LifeTime = Int(LifeTime + 1)    ' Round up to nearest year.End If DepYear = CInt(InputBox("Enter year for depreciation calculation."))Do While DepYear < 1 Or DepYear > LifeTime    MsgBox "You must enter at least 1 but not more than " & LifeTime    DepYear = InputBox("Enter year for depreciation calculation.")LoopDepr = DDB(InitCost, SalvageVal, LifeTime, DepYear)MsgBox "The depreciation for year " & DepYear & " is " & _Format(Depr, Fmt) & "."

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.