الدالة SLN

ينطبق على
Access لـ Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

ترجع هذه الدالة Double يحدد الإهلاك الثابت لأصل لفترة واحدة.

بناء الجملة

SLN(cost, salvage, life)

تتضمن الدالة SLN الوسيطات التالية:

الوسيطة الوصف
التكلفة مطلوبة. ضاعفة تحديد التكلفة الأولية للأصل.
الإنقاذ مطلوبة. مزدوجة تحديد قيمة الأصل في نهاية عمرها الإنتاجي.
حياة مطلوبة. مزدوج يحدد المدة الإنتاجية للأصل.

ملاحظات

يجب التعبير عن فترة الإهلاك بالوحدة نفسها التي يتم التعبير عنها في وسيطة العمر الإنتاجي. يجب أن تكون جميع الوسيطات أرقاما موجبة.

أمثلة عن الاستعلام

التعبير النتائج
SELECT SLN([LoanAmount],[LoanAmount]*.1,20) AS Expr1 FROM FinancialSample; ترجع هذه الدالة الإهلاك لأصول تتم قيمتها ك "مبلغ القرض"، بقيمة الإنقاذ 10٪ (مضروبة ب "مبلغ القرض" مضروبة في 0.1)، مع الأخذ في الاعتبار العمر الإنتاجي للأصل ب 20 عاما.
SELECT SLN([LoanAmount],0,20) AS SLDepreciation FROM FinancialSample; ترجع هذه الدالة الإهلاك لأصول تتم قيمتها ك "مبلغ القرض"، بقيمة الباقات التي تبلغ 0 ر.س. مع الأخذ في الاعتبار العمر الإنتاجي للأصل بقيمة 20 عاما. يتم عرض النتائج في العمود SLDepreciation.

مثال VBA

ملاحظة

توضح الأمثلة التالية استخدام هذه الدالة في وحدة نمطية ل Visual Basic for Applications (VBA). لمزيد من المعلومات حول استخدام VBA، حدد "مرجع المطور" في القائمة المنسدلة بجوار "بحث" وأدخل مصطلح أو أكثر في مربع البحث.

يستخدم هذا المثال الدالة SLN لإرجاع الإهلاك الثابت لأصل لفترة واحدة بالنظر إلى التكلفة الأولية للأصل (InitCost) والقيمة الباقية في نهاية العمر الإنتاجي للأصل (SalvageVal) والعمر الإجمالي للأصل بالسنوات (LifeTime).

Dim Fmt, InitCost, SalvageVal
Dim MonthLife, LifeTime, PDepr
Const YEARMONTHS = 12    ' Number of months in a year.
Fmt = "###,##0.00"    ' Define money format.
InitCost = InputBox("What's the initial cost " & _
           "of the asset?")
SalvageVal = InputBox("What's the asset's value " & _
             "at the end of its useful life?")
MonthLife = InputBox("What's the asset's useful " & _
            "life in months?")
' Ensure period is >= 1 year.
Do While MonthLife < YEARMONTHS 
    MsgBox "Asset life must be a year or more."
    MonthLife = InputBox("What's the asset's " & _
                "useful life in months?")
Loop
' Convert months to years.
LifeTime = MonthLife / YEARMONTHS 
If LifeTime <> Int(MonthLife / YEARMONTHS) Then
    ' Round up to nearest year.
    LifeTime = Int(LifeTime + 1)    
End If
PDepr = SLN(InitCost, SalvageVal, LifeTime)
MsgBox "The depreciation is " & _
       Format(PDepr, Fmt) & " per year."