OpenBI Docs Buy

VDB

An asset's declining-balance depreciation for any period, partial ones too, turning to straight line when that is more.

Group: Financial. Compatible with DAX.

Syntax

VDB ( <cost>, <salvage>, <life>, <start_period>, <end_period> [, <factor>] [, <no_switch>] )
ParameterTypeDescription
costNumberWhat the asset cost.
salvageNumberWhat it is worth at the end of its life.
lifeNumberHow many periods the asset is used: years, or months for a monthly schedule.
start_periodNumberWhere the stretch begins: 0 for the start of the life. It may hold a fraction.
end_periodNumberWhere it ends, at most life. It may hold a fraction.
factorNumber
optional
How fast the value declines: 2 (double-declining balance) when left out.
no_switchBoolean
optional
TRUE to keep to the declining balance; FALSE or left out to switch to straight line when that gives more.

Returns

Number. The depreciation over the stretch, from start_period to end_period.

Remarks

  • Declining balance like DDB, but once spreading what is left above salvage evenly over the remaining life gives more, it switches to straight line, so the value reaches salvage at the end of the life.
  • With start_period 0 and end_period 1 it is the first period, as DDB would give it; a stretch over several periods adds them up.
  • A negative cost, salvage or factor, a life of 0 or less, a start below 0, an end before the start or after life, is an error.

Examples

Where the switch to straight line happens

2,400, worth 300 after 10 years, at 1.5 times the straight-line rate. From year 7 an even share of what is left is more than the declining balance would take, so VDB switches; DDB does not.

EVALUATE
ADDCOLUMNS (
    SELECTCOLUMNS ( GENERATESERIES ( 1, 10 ), "Year", [Value] ),
    "VDB", VDB ( 2400, 300, 10, [Year] - 1, [Year], 1.5 ),
    "DDB", DDB ( 2400, 300, 10, [Year], 1.5 )
)
ORDER BY [Year]
YearVDBDDB
1360360
2306306
3260.1260.1
4221.085221.085
5187.92225187.92225
6159.7339125159.7339125
7151.289709375135.773825625
8151.289709375115.40775178125
9151.28970937598.0965890140625
10151.28970937583.3821006619531

Part of a year

The first seven eighths of a year, and the second to fourth years together.

EVALUATE
ROW (
    "First 0.875 years", VDB ( 2400, 300, 10, 0, 0.875, 1.5 ),
    "Years 2 to 4", VDB ( 2400, 300, 10, 1, 4, 1.5 )
)
First 0.875 yearsYears 2 to 4
315787.185

From part of a year to the end

Stretches that start inside a year, with the switch to straight line inside them.

EVALUATE
ROW (
    "Years 0.5 to 7.8", VDB ( 2400, 300, 10, 0.5, 7.8, 1.5 ),
    "Years 7.8 to 10", VDB ( 2400, 300, 10, 7.8, 10, 1.5 )
)
Years 0.5 to 7.8Years 7.8 to 10
1585.09850083333333.721991428571

DDB, DB, SLN, SYD.

Last updated · OpenBI Studio 0.3.74