使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。

返回一个 Double 类型的值,指定单个周期内资产的直线折旧。

语法

SLN ( 成本、打捞、生命 )

SLN 函数具有以下参数:

参数

说明

成本

必需。 双重 指定资产的初始成本。

打捞

必需。 资产的使用寿命结束时指定其值。

使用时间

必需。 指定资产的使用寿命长度的双精度值。

备注

折旧期必须与 生命周期参数 相同的单位表示。 所有参数都必须是正数。

查询示例

Expression

结果

SELECT SLN ([LoanAmount],[LoanAmount]*.1,20) AS Expr1 FROM FinancialSample;

返回价值为“LoanAmount”的资产的折旧值,其残值为 10% (“LoanAmount”乘以 0.1) ,考虑到该资产的使用寿命为 20 年。

SELECT SLN ([LoanAmount],0,20) AS SLDepreciation FROM FinancialSample;

返回价值为“LoanAmount”的资产的折旧值,其残值为 0 美元,考虑到该资产的使用寿命为 20 年。 结果显示在 SLDepreciation 列中。

VBA 示例

注意: 下面的示例演示了如何在 Visual Basic for Applications (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."

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。

此信息是否有帮助?

你对语言质量的满意程度如何?
哪些因素影响了你的体验?
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。 你的 IT 管理员将能够收集此数据。 隐私声明。

谢谢您的反馈!

×