DDB () and FV() Function Function in MS Access

1. DDB() Function :
DDB() Function in MS Access is used to calculate the depreciation of an asset for a specific time period using the double-declining balance method or some other method. The DDB function uses the following formula to calculate depreciation for a given period :

Depreciation / period = ((cost – salvage) * factor) / life

Syntax :

DDB(cost, salvage, life, period, [factor])

Parameter : This method accepts five parameters as mentioned above and described below :

  • cost : It specifies the initial cost of the asset.
  • salvage : It specifies the value of the asset at the end of its useful life.
  • life : It specifies the length of the useful life of the asset.
  • period : It specifies period for which asset depreciation is calculated.
  • factor : It specifies rate at which the balance declines. If omitted, 2 (double-declining method) is assumed.

Returns : It returns depreciation of an asset for a specific time period.

Note : The depreciation period must be expressed in the same unit as the life argument. All arguments must be positive numbers.



Example-1 :
Depreciation for an asset with a salvage value of 15% considering the useful life of the asset to be 10 years and depreciation is calculated for 2nd year.

SELECT DDB(1500.0, 1500.0*0.15, 10, 2) AS Amount;

Output :

Amount
240

Example-2 :
Depreciation for a table of an asset with a salvage value of 10% considering the useful life to be 15 years and depreciation is calculated for 3rd year.

Table – Accounts

AccountId LoanAmount
11001 15000.0
11002 12000.0
11003 10000.0
SELECT DDB([LoanAmount], [LoanAmount]*.1, 15, 3) AS Amt 
FROM Accounts;

Output :

Amt
1502.22222222222
1201.77777777778
1001.48148148148


2. FV() Function :
FV() Function in MS Access is used to calculate the Future Value of an annuity based on periodic, fixed payments and a fixed interest rate. An annuity is a series of fixed cash payments made over a period of time. An annuity can be a loan or an investment.

Syntax :



FV(rate, nper, pmt, pv , type)

Parameter : This method accepts five parameters as mentioned above and described below :

  • rate : It specifies interest rate per period.
  • nper : It specifies total number of payment periods in the annuity.
  • pmt : It specifies payment to be made each period. Payments usually contain principal and interest that does not change over the life of the annuity.
  • pv : Optional. It specifies the present value (or lump sum) of a series of future payments.
  • type : It specifies when payments are due. Use 0 if payments are due at the end of the payment period, or use 1 if payments are due at the beginning of the period.

Returns : It returns future value of an annuity.

Note : The rate and nper arguments must be calculated using payment periods expressed in the same units. For example, if rate is calculated using months, nper must also be calculated using months.cash paid out (such as deposits to savings) is represented by negative numbers; cash received (such as dividend checks) is represented by positive numbers.

Example-1 :
Calculating the Future Value of the “LoanAmount 1000” based on the 6 % AnnualRate, “MonthlyRePayment 2 time” and “Payment made each period 50”.

SELECT FV(0.06/12, 2*12, -50, 1000, 0) AS FutureValue ;

Output :

FutureValue
144.4379858485

Example-2 :
Calculating the Future Value of the loan amount table based on the 6 % AnnualRate, “MonthlyRePayment 1 time” and “Payment made each period 100”.

Table – Accounts

AccountId LoanAmount
101 500
102 1000
103 1200
SELECT FV(0.06/12, 1*12, -100, [LoanAmount], 0) AS Amt 
FROM Accounts;

Output :

Amt
702.304600220726
176.723651279859
-33.5087282964875
My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.


Article Tags :
Practice Tags :


Be the First to upvote.


Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.