VDB

使用双倍余额递减法或你指定的其他一些方法,返回你指定的任何期间(包括部分期间)的资产折旧。 VDB 表示可变余额递减。

语法

VDB(<cost>, <salvage>, <life>, <start_period>, <end_period>[, <factor>[, <no_switch>]])

parameters

术语定义
cost资产的原始成本。
salvage折旧结束时的价值(有时称为资产的残值)。 此值可以为 0。
变得生动鲜活对资产进行折旧的周期数(有时称为资产的可用生命周期)。
start_period要计算其折旧的起始周期。 Start_period 必须使用与 life 相同的单位。 必须介于 1 至 life 之间(含首尾)。
end_period要计算其折旧的结束周期。 End_period 必须使用与 life 相同的单位。 必须介于 start_period 至 life 之间(含首尾)。
factor(可选)余额递减的速率。 如果省略 factor,则假定为 2(双倍余额递减法)。 如果不想使用双倍余额递减法,请更改 factor。 有关双倍余额递减法的说明,请参阅 DDB。
no_switch(可选)一个逻辑值,指定折旧大于余额递减计算时是否切换为直线折旧。 如果省略,则假定为 FALSE。
- 如果 no_switch 的计算结果为 TRUE,则即使折旧大于余额递减计算,VDB 也不会切换为直线折旧。
- 如果 no_switch 的计算结果为 FALSE 或省略,则当折旧大于余额递减计算时,VDB 将切换为直线折旧。

返回值

指定期间内的折旧。

备注

  • 如果出现以下情况,则返回错误:

    • cost < 0。
    • salvage < 0。
    • life < 1。
    • start_period < 1 或 start_period > end_period。
    • end_period < start_period 或 end_period > life。
    • factor < 0。
    • no_switch 的计算结果不为 TRUE 或 FALSE。
  • 在已计算的列或行级安全性 (RLS) 规则中使用时,不支持在 DirectQuery 模式下使用此函数。

示例

数据描述
2400初始成本
300残值
10使用期(年)

示例 1

以下 DAX 查询:

EVALUATE{   VDB(2400, 300, 10*365, 0, 1) }

在 factor 设为 2 的情况下返回资产的第一天的折旧。

[值]
1.31506849315068

示例 2

以下 DAX 查询:

EVALUATE{   VDB(2400, 300, 10*12, 6, 18, 3) }

返回 6$^{ th }$ 月之间 18$^{ th }$ 月之间的资产折旧。 此计算将 factor 设为 3。

[值]
540.185558199698

示例 3

以下 DAX 查询:

EVALUATE{   VDB(2400, 300, 10, 0, 0.875, 1.5) }

返回资产在你拥有它的第一个会计年度内的折旧,假设税法限制资产余额递减折旧为 150%。 资产是在会计年度第一季度中期购买的。

[值]
315

results matching ""

    No results matching ""