Функция SLN

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

Возвращает значение типа Double, показывающее значение линейной амортизации актива за один период.

Синтаксис

SLN(стоимость, утилизация, жизнь)

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

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

Замечания

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

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

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

Пример VBA

Примечание

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

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

Dim Fmt, InitCost, SalvageVal
Dim MonthLife, LifeTime, 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 useful life?")
MonthLife = InputBox("What's the asset's useful " & _
            "life in months?")
' Ensure period is >= 1 year.
Do While MonthLife < YEARMONTHS 
    MsgBox "Asset life must be a year or more."
    MonthLife = InputBox("What's the asset's " & _
                "useful life in months?")
Loop
' Convert months to years.
LifeTime = MonthLife / YEARMONTHS 
If LifeTime <> Int(MonthLife / YEARMONTHS) Then
    ' Round up to nearest year.
    LifeTime = Int(LifeTime + 1)    
End If
PDepr = SLN(InitCost, SalvageVal, LifeTime)
MsgBox "The depreciation is " & _
       Format(PDepr, Fmt) & " per year."