Restituisce un valore Double che specifica l'ammortamento di un bene per un periodo di tempo specifico usando il metodo di ammortamento a doppie quote proporzionali ai valori residui o un altro metodo specificato dall'utente.
Sintassi
DDB(costo; recupero; vita; periodo* [, fattore] )
La sintassi della funzione AMMORT ha gli argomenti seguenti:
| Argomento | Descrizione |
|---|---|
| costo | Obbligatorio. Valore Double che specifica il costo iniziale del bene. |
| val_residuo | Obbligatorio. Valore Double che specifica il valore del bene al termine della vita utile. |
| vita_utile | Obbligatorio. Valore Double che specifica la durata della vita utile del bene. |
| periodo | Obbligatorio. Valore Double che specifica il periodo di calcolo dell'ammortamento del bene. |
| fattore | Facoltativo. Valore Variant che specifica il tasso di deprezzamento del valore residuo. Se viene omesso, verrà considerato uguale a 2, ossia il metodo di ammortamento a doppie quote proporzionali ai valori residui. |
Osservazioni
Il metodo a doppie quote proporzionali ai valori residui calcola l'ammortamento a tasso accelerato. L'ammortamento è massimo nel primo periodo e diminuisce nei periodi successivi.
Gli argomenti durata e periodo devono essere espressi nelle stesse unità. Ad esempio, se la vita è data in mesi, anche il periodo deve essere dato in mesi. Tutti gli argomenti devono essere numeri positivi.
La funzione AMMORT usa la formula seguente per calcolare l'ammortamento per un determinato periodo:
Ammortamento / periodo = ((costo – recupero) * fattore) / vita
Esempio
Nota
Gli esempi seguenti illustrano l'uso di questa funzione in un modulo di Visual Basic, Applications Edition (VBA). Per altre informazioni sull'uso di VBA, selezionare Riferimenti per sviluppatori nell'elenco a discesa accanto a Cerca e immettere uno o più termini nella casella di ricerca.
In questo esempio viene utilizzata la funzione AMMORT per restituire l'ammortamento di un bene per un periodo specificato dato il costo iniziale (InitCost), il valore di recupero alla fine della vita utile del bene (SalvageVal), la vita totale del bene in anni (LifeTime) e il periodo in anni per il quale viene calcolato l'ammortamento (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) & "."