GDA-Funktion
Gibt einen Double-Wert zurück, der die Abschreibung eines Vermögenswerts für einen bestimmten Zeitraum angibt, indem die Double-Degressive-Methode oder eine andere von Ihnen angegebene Methode verwendet wird.
Syntax
DDB(Cost, Salvage, Life, Period, [ Faktor ])
Die DDB-Funktion hat folgende benannten Argumente:
Bestandteil | Beschreibung |
---|---|
kosten | Erforderlich. Double , der die Anfänglichkosten der Ressource angibt. |
Bergung | Erforderlich. Double , der den Wert des Medienobjekts am Ende seiner Nutzungsdauer angibt. |
Leben | Erforderlich. Double , der die Länge der Nutzungsdauer des Medienobjekts angibt. |
Periode | Erforderlich. Double , der den Zeitraum angibt, für den die Abschreibung von Vermögenswerten berechnet wird. |
Faktor | Optional. Variante , die die Rate angibt, mit der der Saldo sinkt. Wenn diese Variante weggelassen wird, wird 2 (degressive Doppelraten-Methode) angenommen. |
Hinweise
Die degressive Doppelraten-Abschreibungsmethode berechnet die Abschreibung mit beschleunigter Geschwindigkeit. Die Abschreibung ist im ersten Zeitraum am höchsten und verringert sich mit den folgenden Zeiträumen.
Die life- und period-Argumente müssen in denselben Einheiten ausgedrückt werden. Wenn Lebensdauer beispielsweise in Monaten angegeben ist, muss auch Zeitraum in Monaten angegeben werden. Alle Argumente müssen positive Zahlen sein.
Die DDB-Funktion verwendet folgende Formel, um die Abschreibung für einen bestimmten Zeitraum zu berechnen:
Abschreibung / Period = ((Kostenwutigung - ) * Faktor) / Lebensdauer
Beispiel
In diesem Beispiel wird die DDB-Funktion verwendet, um die Abschreibung eines Vermögenswerts für einen bestimmten Zeitraum unter Berücksichtigung der Anfänglichkosten (InitCost
), des Werts am Ende der Nutzungsdauer des Vermögenswerts (SalvageVal
), der Gesamtlebensdauer des Vermögenswerts in Jahren (LifeTime
) und des Zeitraums in Jahren zurückzugeben, für den die Abschreibung berechnet wird (Depr
).
Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, Depr
Const YRMOS = 12 ' Number of months in a year.
Fmt = "###,##0.00"
InitCost = InputBox("What's the initial cost of the asset?")
SalvageVal = InputBox("Enter the asset's value at end of its life.")
MonthLife = InputBox("What's the asset's useful life in months?")
Do While MonthLife < YRMOS ' Ensure period is >= 1 year.
MsgBox "Asset life must be a year or more."
MonthLife = InputBox("What's the asset's useful life in months?")
Loop
LifeTime = MonthLife / YRMOS ' Convert months to years.
If LifeTime <> Int(MonthLife / YRMOS) Then
LifeTime = Int(LifeTime + 1) ' Round up to nearest year.
End If
DepYear = CInt(InputBox("Enter year for depreciation calculation."))
Do While DepYear < 1 Or DepYear > LifeTime
MsgBox "You must enter at least 1 but not more than " & LifeTime
DepYear = InputBox("Enter year for depreciation calculation.")
Loop
Depr = DDB(InitCost, SalvageVal, LifeTime, DepYear)
MsgBox "The depreciation for year " & DepYear & " is " & _
Format(Depr, Fmt) & "."
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.