تابع db در اکسل
تابع DB در اکسل برای محاسبه مقدار استهلاک یک دارایی در یک دوره مشخص با استفاده از روش کاهش ثابت (fixed-declining balance) به کار میرود. این روش برای داراییهایی مناسب است که در سالهای اول استفاده، افت ارزش سریعتری دارند. در این مطلب ساختار تابع، فرمولپایه، مثالهای عملی، تفاوت با سایر توابع استهلاک و نکات حرفهای کاربردی را به زبان ساده توضیح میدهیم.
ساختار (Syntax) تابع DB
ساختار تابع در اکسل به صورت زیر است:
=DB(cost, salvage, life, period, [month])- cost: قیمت اولیه یا بهای تمامشده دارایی.
- salvage: ارزش بازیافتی (Salvage value) در پایان عمر مفید.
- life: عمر مفید دارایی به تعداد دورهها (مثلاً سال).
- period: شماره دورهای که میخواهید استهلاک آن را محاسبه کنید (1، 2، …).
- month (اختیاری): تعداد ماههای سال اول که دارایی در آن قرار گرفته است (برای حالت صفر یا کسری از سال اول)؛ اگر وارد نشود، فرض میشود 12 ماه است.
منطق ریاضی و فرمول پایه
DB نرخ ثابتی را محاسبه میکند که باعث میشود ارزش دفتری دارایی در طول عمر مفید به سمت ارزش بازیافتی میل کند. نرخ معمولا بهصورت زیر محاسبه میشود:
rate = 1 - (salvage / cost)^(1 / life)سپس استهلاک برای دوره p بهصورت زیر محاسبه میشود (قبل از تعدیلات مربوط به ماهها و آخرین دوره):
depreciation_p = cost * rate * (1 - rate)^(p-1)توجه کنید که اکسل برای دورههای نهایی و در صورت مشخصکردن پارامتر month تنظیماتی انجام میدهد تا مجموع استهلاکها از (cost – salvage) تجاوز نکند.
مثال عددی ساده
فرض کنید:
- هزینه اولیه (cost) = 10000
- ارزش بازیافتی (salvage) = 1000
- عمر مفید (life) = 5 سال
محاسبه نرخ:
rate = 1 - (1000/10000)^(1/5) ≈ 0.369043استهلاک دوره اول (با تابع DB):
=DB(10000, 1000, 5, 1) ' ≈ 3690.43و دوره دوم:
=DB(10000, 1000, 5, 2) ' ≈ 2327.08در یک جدول ساده میتوان تمامی مقادیر هر دوره، مجموع تجمعی و مانده ارزش دفتری را مشاهده کرد.
| دوره | استهلاک دورهای (تقریب) | استهلاک تجمعی | ارزش دفتری انتهای دوره |
|---|---|---|---|
| 1 | 3,690.43 | 3,690.43 | 6,309.57 |
| 2 | 2,327.08 | 6,017.51 | 3,982.49 |
| 3 | 1,466.60 | 7,484.11 | 2,515.89 |
| 4 | 923.79 | 8,407.90 | 1,592.10 |
| 5 | 592.10 | 8,999.99 | 1,000.01 |
در عمل اکسل از گرد شدنها و تنظیمات نهایی برای مطابقت با salvage استفاده میکند تا مجموع استهلاکها تقریباً برابر cost – salvage شود.
استفاده از پارامتر month — حالت نیمهسال یا ماهیانه شروع شدن دارایی
اگر دارایی در ابتدای سال استفاده نشده باشد، میتوانید تعداد ماههای استفاده در سال اول را وارد کنید. به عنوان نمونه:
=DB(10000, 1000, 5, 1, 9)در این مثال فرض شده دارایی از ماه چهارم سال وارد سرویس شده (یعنی 9 ماه در سال اول استفاده میشود). اکسل مقدار استهلاک دوره اول و انتهایی را براساس این مقدار تطبیق میدهد.
مثال سریسازی در اکسل (پر کردن مقادیر برای همه دورهها)
' For Excel (without dynamic array):
In A2:A6 put 1,2,3,4,5 (periods)
In B1 put cost (e.g. 10000)
In B2 put salvage (e.g. 1000)
In B3 put life (e.g. 5)
In B2 (for period 1) or beside period row:
=DB($B$1, $B$2, $B$3, A2)
Fill down for periods 1..5
' For Excel 365 using SEQUENCE:
=MAP(SEQUENCE(5), LAMBDA(p, DB(10000,1000,5,p)))
توضیح: در مثال اول از قید مطلق ($) برای قفلکردن پارامترها هنگام Fill Down استفاده شده است. در اکسل 365 میتوان با SEQUENCE و MAP ردیفهای استهلاک را بهصورت دینامیک تولید کرد.
نکات کاربردی و تفاوت با توابع دیگر
- DB vs. DDB: تابع DDB مقدار استهلاک بر مبنای نرخ چندبرابر (مثلاً دو برابر) کاهش (double-declining) را میدهد و قابل تنظیم با فاکتور است. DB نرخ ثابتی استخراج میکند که به سمت salvage میل کند.
- DB vs. SLN: SLN استهلاک خطی (مساوی) را محاسبه میکند؛ اگر دارایی افت یکنواختی دارد از SLN استفاده کنید.
- جمع مقادیر: مجموع مقادیر برگشتی توسط DB معمولاً برابر (تقریباً) cost – salvage است؛ برای جلوگیری از خطاهای گرد شدگی از ROUND استفاده کنید.
- پارامترها باید معتبر باشند: cost و life باید بزرگتر از صفر باشند؛ در غیر این صورت اکسل خطا بازمیگرداند.
موارد کاربردی (Use Cases)
- مدلسازی مالی و صورتهای جریان نقدی که در آن داراییها در سالهای اولیه سریعتر مستهلک میشوند.
- تحلیل مالیاتی که نیاز به روشهای مختلف استهلاک برای محاسبه هزینههای قابل قبول دارد.
- برآورد ارزش دفتری برای برنامهریزی تعویض دارایی و بودجهریزی سرمایهای.
نکات حرفهای و توصیهها
- همیشه کنترل کنید که مجموع استهلاکها بهدلیل گرد شدنها دقیقاً برابر cost – salvage شود؛ در صورت نیاز از تابع ROUND استفاده کنید.
- برای مقایسه روشها (DB، DDB، SLN) یک جدول ساده بسازید تا اثر هر روش بر سود، مالیات و ارزش دفتری مشخص شود.
- اگر نیاز به گزارش ماهانه دارید، life را به ماه تبدیل کنید (مثلاً life = سال*12) و ماه اول را مطابق مورد تنظیم کنید.
در نهایت، تابع DB ابزار سریعی و مناسب برای محاسبه استهلاک با نرخ کاهش ثابت است؛ اما فهم نحوه محاسبه نرخ و تأثیر پارامتر month حیاتی است تا نتایج واقعی و قابلقبولی حاصل شود.
آیا این مطلب برای شما مفید بود ؟




