DB

適用対象:計算列計算テーブルメジャービジュアル計算

倍額定率法を使用して、指定した期間における資産の減価償却費を返します。

構文

DB(<cost>, <salvage>, <life>, <period>[, <month>])

パラメーター

用語 定義
cost 資産を購入した時点での価格です。
salvage 減価償却の最終的な価値です (資産の救済価額とも呼ばれます)。 この値は 0 にできます。
お手伝いをします 資産が減価償却される期間の数 (資産の耐用年数とも呼ばれます)。
period 減価償却費を計算する対象となる期間。 期間には、耐用年数と同じ単位を使用する必要があり、 1 から life までを指定する必要があります (両端は含みます)。
month (省略可能) 1 年目の月数。 月を省略する場合は、12 であると見なされます。

戻り値

指定した期間における減価償却費。

解説

  • 倍額定率法では、減価償却費を定率で計算します。 DB では、次の式を使用して、ある期間の減価償却費を計算します。

    $$(\text{cost} - \text{前の各期間からの減価償却費の合計}) \times \text{減価償却率}$$

    ここで、

    • $\text{減価償却率} = 1 - ((\frac{\text{salvage}}{\text{cost}})^{(\frac{1}{\text{life}})})\text{, 小数点第 3 位に丸めた値}$
  • 最初と最後の期間の減価償却費は特別なケースです。

    • 最初の期間については、DB では次の式を使用します。

      $$\frac{\text{cost} \times \text{減価償却率} \times \text{month}}{12}$$

    • 最後の期間については、DB では次の式を使用します。

      $$\frac{(\text{cost} - \text{前の各期間からの減価償却費の合計}) \times \text{減価償却率} \times (12 - \text{month})}{12}$$

  • period と month は、最も近い整数に丸められます。

  • 次の場合にエラーが返されます。

    • cost < 0。
    • salvage < 0。
    • life < 1。
    • period < 1 または period > life。
    • month < 1 または month > 12。
  • この関数は、計算列または行レベルのセキュリティ (RLS) ルールで使用される場合、DirectQuery モードでの使用はサポートされません。

例 1

次の DAX クエリを実行します。

EVALUATE
{
  DB(1000000, 0, 6, 1, 2)
}

6 年後の価値を \$0 と想定して、最初の年の最後の 2 か月間の資産の減価償却費を返します。

[値]
166666.666666667

例 2

次の例では、各耐用年数での、すべての資産の減価償却費の合計を計算します。 ここでは、最初の年は 7 か月のみ、最後の年は 5 か月のみが含まれています。

DEFINE
VAR NumDepreciationPeriods = MAX(Asset[LifeTimeYears])+1
VAR DepreciationPeriods = GENERATESERIES(1, NumDepreciationPeriods)
EVALUATE
ADDCOLUMNS (
  DepreciationPeriods,
  "Current Period Total Depreciation",
  SUMX (
    FILTER (
      Asset,
      [Value] <= [LifetimeYears]+1
    ),
    DB([InitialCost], [SalvageValue], [LifetimeYears], [Value], 7)
  )
)