VDB
使用雙倍餘額遞減法或其他您所指定的方法,傳回某項資產在指定期間 (包括部分期間) 的折舊值。 VDB 代表變數餘額遞減。
語法
VDB(<cost>, <salvage>, <life>, <start_period>, <end_period>[, <factor>[, <no_switch>]])
參數
詞彙 | 定義 |
---|---|
成本 | 資產的初始成本。 |
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 模式中使用此函式。
範例
Data | 說明 |
---|---|
2400 | 初始成本 |
300 | 殘餘價值 |
10 | 使用年限 |
範例 1
下列 DAX 查詢:
EVALUATE
{
VDB(2400, 300, 10*365, 0, 1)
}
使用 2 作為 factor,傳回資產第一天的折舊。
[Value] |
---|
1.31506849315068 |
範例 2
下列 DAX 查詢:
EVALUATE
{
VDB(2400, 300, 10*12, 6, 18, 3)
}
傳回 6$^{th}$ 月 18$^{th}$ 月之間的資產折舊。 這項計算使用 3 作為 factor。
[Value] |
---|
540.185558199698 |
範例 3
下列 DAX 查詢:
EVALUATE
{
VDB(2400, 300, 10, 0, 0.875, 1.5)
}
傳回您擁有資產的第一個會計年度中的資產折舊 (假設稅務法最多允許您採用 150% 的餘額遞減法來提報折舊)。 資產是在會計年度的第一季中期所購買的。
[值] |
---|
315 |