SLN (función)

Se aplica a
Access para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Devuelve un tipo de datos Double que especifica la depreciación por método directo de un activo durante un único período.

Sintaxis

SLN(costo, valor_residual, vida)

La función SLN tiene estos argumentos:

Argumento Descripción
costo Obligatorio. Doble especificación del costo inicial del bien.
valor residual Obligatorio. Doble especificación del valor del bien al final de su vida útil.
vida Obligatorio. Doble especificación de la duración de la vida útil del bien.

Observaciones

El período de amortización debe expresarse en la misma unidad que el argumento vida. Todos los argumentos deben ser números positivos.

Ejemplos de consulta

Expresión Resultados
SELECT SLN([LoanAmount],[LoanAmount]*.1,20) AS Expr1 FROM FinancialSample; Devuelve la depreciación de un bien valorado como "LoanAmount", con un valor residual del 10%("LoanAmount" multiplicado por 0,1), teniendo en cuenta que la vida útil del bien es de 20 años.
SELECT SLN([LoanAmount],0,20) AS SLDepreciation FROM FinancialSample; Devuelve la depreciación de un activo con valor de "LoanAmount", con un valor residual de 0 $, considerando que la vida útil del bien es de 20 años. Los resultados se muestran en la columna SLDepreciation.

Ejemplo VBA:

Nota

Los ejemplos siguientes muestran el uso de esta función en un módulo de Visual Basic para Aplicaciones (VBA). Para obtener más información sobre cómo trabajar con VBA, seleccione referencia para desarrolladores en la lista desplegable situada junto a búsqueda y escriba uno o varios términos en el cuadro de búsqueda.

En este ejemplo se usa la función SLN para devolver la amortización por método directo de un bien durante un único período, dado el costo inicial del bien (InitCost), el valor residual al final de la vida útil del bien (SalvageVal) y la vida total del bien en años (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."