Returnerar ett värde avskrivningsvärde för en tillgång under en viss tidsperiod med dubbel degressiv avskrivning eller någon annan metod som du anger.

Syntax

DDB( kostnad; restvärde; livslängd; period [; faktor] )

Syntaxen för funktionen DDB har följande argument:

Argument

Beskrivning

kostnad

Obligatoriskt. Double (Dubbel ) anger initialkostnaden för tillgången.

Bärgning

Obligatoriskt. Double (Dubbel ) anger tillgångens värde i slutet av dess livslängd.

tid

Obligatoriskt. Double (Dubbel ) anger tillgångens livslängd.

Period

Obligatoriskt. Double (Dubbel ) anger den period som tillgångens avskrivning beräknas för.

Faktor

Valfritt. Variant som anger hur mycket saldot minskar. Om argumentet utelämnas används 2 (dubbel degressiv degressiv metod).

Kommentarer

Metoden med dubbel degressiv avskrivning beräknar en avskrivning som är störst under den första perioden och minskar successivt under följande perioder.

Argumenten för livslängd och period måste uttryckas i samma enheter. Om till exempel liv ges i månader måste perioden också ges i månader. Alla argument måste vara positiva tal.

Funktionen DDB använder följande formel för att beräkna avskrivningen för en viss period:

Avskrivning/ period = ((kostnadrestvärde) * faktor) / livslängd

Exempel

Obs!: I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.

I det här exemplet används funktionen DDB för att returnera avskrivningen för en tillgång under en angiven period givet initialkostnaden (InitCost), restvärdet i slutet av tillgångens livslängd (SalvageVal), tillgångens totala livslängd i år (LifeTime) och perioden i år då avskrivningen beräknas (Depr).

Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, DeprConst 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?")LoopLifeTime = 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.")LoopDepr = DDB(InitCost, SalvageVal, LifeTime, DepYear)MsgBox "The depreciation for year " & DepYear & " is " & _Format(Depr, Fmt) & "."

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.