DDB-funktio

Palauttaa kauden kirjanpidollisen poiston Double-tietotyyppi-tyyppiä olevana lukuna amerikkalaisen DDB-menetelmän (Double-Declining Balance) tai jonkin muun määrittämäsi menetelmän mukaan.

Syntaksi

DDB(kustannus, loppuarvo, aika, kausi [, kerroin] )

DDB-funktion syntaksilla on seuraavat argumentti:

Argumentti:

Kuvaus:

kustannus

Pakollinen. Double, määrittää omaisuuden alkuperäisen hankintahinnan.

loppuarvo

Pakollinen. Double, määrittää omaisuuden arvon sen käyttöiän päättyessä.

aika

Pakollinen. Double, määrittää omaisuuden käyttöiän pituuden.

kausi

Pakollinen. Double, määrittää kauden, jolle omaisuuden poisto lasketaan.

kerroin

Valinnainen. Variant-tietotyyppi-tyyppiä oleva arvo, joka määrittää poistonopeuden. Jos kerroin jätetään pois, käytetään arvoa 2 (DDB-menetelmä).


Huomautuksia

DDB-menetelmällä poistot lasketaan etupainoisesti. Poisto on suurin ensimmäisellä kaudella ja pienenee seuraavilla kausilla.

argumenttiaika ja kausi on ilmoitettava samana yksikkönä. Jos esimerkiksi aika annetaan kuukausina, kausi on myös annettava kuukausina. Kaikkien argumenttien on oltava positiivisia lukuja.

DDB-funktio laskee annetun kauden poiston käyttämällä seuraavaa kaavaa:

Poisto / kausi = ((kustannusloppuarvo) * kerroin) / aika

Esimerkki

Huomautus: Seuraavat esimerkit havainnollistavat tämän funktion käyttämistä Visual Basic for Applications (VBA) -moduulissa. Lisätietoja VBA:n käyttämisestä saat valitsemalla Etsi-ruudun vieressä olevasta avattavasta luettelosta Sovelluskehittäjän opas ja kirjoittamalla hakuruutuun vähintään yhden termin.

Tässä esimerkissä DDB-funktiolla palautetaan omaisuuden poisto tietyllä kaudella ottaen huomioon alkuperäinen hankintahinta (InitCost), loppuarvo omaisuuden käyttöiän päättyessä (SalvageVal), omaisuuden kokonaiskäyttöikä vuosina (LifeTime) ja vuosina kausi, jolle poisto lasketaan (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) & "."
Kehitä taitojasi
Tutustu koulutusmateriaaliin
Saat uudet ominaisuudet ensimmäisten joukossa
Liity Office Insider -käyttäjiin

Oliko näistä tiedoista hyötyä?

Kiitos palautteesta!

Kiitos palautteestasi! Näyttää siltä, että Office-tukiedustajamme avusta voi olla sinulle hyötyä.

×