Функция SYD

Применяется к
Access для Microsoft 365 Access 2021 Access 2019 Access 2016

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

Синтаксис

SYD (стоимость, ликвидация, жизнь, период)

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

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

Замечания

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

Примеры запросов

Выражение Результаты
SELECT SYD([LoanAmount],[LoanAmount]*.1,20,2) AS Expr1 FROM FinancialSample; Вычисляет амортизацию для актива, оцениваемого как "LoanAmount" с остаточной стоимостью 10% ("LoanAmount", умноженная на 0,1), при этом срок полезного использования актива составляет 20 лет. Амортизация рассчитывается за второй год.
SELECT SYD([LoanAmount],0,20,3) AS SLDepappreciation FROM FinancialSample; Возвращает величину амортизации для актива, оцениваемого как "LoanAmount" с остаточной стоимостью 0 USD, при полезном использовании актива в течение 20 лет. Результаты отображаются в столбце SLDepreciation. Амортизация рассчитывается за третий год.

Пример VBA

Примечание

В примерах ниже показано, как использовать эту функцию в модуле 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) & "."