Функция SYD

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

Синтаксис

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

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

Аргумент

Описание

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

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

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

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

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

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

период

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


Примечания

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

Пример

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

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

Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, PDepr
Const YEARMONTHS = 12 ' Number of months in a year.
Fmt = "###,##0.00" ' Define money format.
InitCost = InputBox("What's the initial cost of the asset?")
SalvageVal = InputBox("What's the asset's value at the end of its life?")
MonthLife = InputBox("What's the asset's useful life in months?")
Do While MonthLife < YEARMONTHS ' 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?")
Loop
LifeTime = MonthLife / YEARMONTHS ' Convert months to years.
If LifeTime <> Int(MonthLife / YEARMONTHS) Then
LifeTime = Int(LifeTime + 1) ' Round up to nearest year.
End If
DepYear = CInt(InputBox("For which year do you want depreciation?"))
Do While DepYear < 1 Or DepYear > LifeTime
MsgBox "You must enter at least 1 but not more than " & LifeTime
DepYear = CInt(InputBox("For what year do you want depreciation?"))
Loop
PDepr = SYD(InitCost, SalvageVal, LifeTime, DepYear)
MsgBox "The depreciation for year " & DepYear & " is " & Format(PDepr, Fmt) & "."
Совершенствование навыков
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×