ส่งกลับ สองชั้น ที่ระบุค่าเสื่อมราคาแบบเส้นตรงของสินทรัพย์สําหรับคาบเวลาเดียว
ไวยากรณ์
SLN( cost, salvage, life )
ฟังก์ชัน SLN มีอาร์กิวเมนต์ดังนี้
อาร์กิวเมนต์ |
คำอธิบาย |
ต้นทุน |
จำเป็น Double ที่ระบุต้นทุนเริ่มต้นของสินทรัพย์ |
ซาก |
จำเป็น สองเท่า ที่ระบุมูลค่าของสินทรัพย์เมื่อสิ้นสุดอายุการใช้งาน |
อายุการใช้งาน |
จำเป็น สองเท่า ที่ระบุความยาวของอายุการใช้งานของสินทรัพย์ |
ข้อสังเกต
รอบระยะเวลาการคิดค่าเสื่อมราคาต้องแสดงในหน่วยเดียวกับอายุการใช้งานอาร์กิวเมนต์ อาร์กิวเมนต์ทั้งหมดต้องเป็นจํานวนบวก
ตัวอย่างคิวรี
Expression |
ผลลัพธ์ |
SELECT SLN([LoanAmount],[LoanAmount]*.1,20) AS Expr1 FROM FinancialSample; |
ส่งกลับค่าเสื่อมราคาสําหรับสินทรัพย์ที่มีมูลค่าเป็น "LoanAmount" ด้วยค่าซาก 10%("LoanAmount" คูณด้วย 0.1) เมื่อพิจารณาอายุการใช้งานของสินทรัพย์เป็น 20 ปี |
SELECT SLN([LoanAmount],0,20) AS SLDepreciation FROM FinancialSample; |
ส่งกลับค่าเสื่อมราคาสําหรับสินทรัพย์ที่มีค่าเป็น "LoanAmount" ที่มีมูลค่าซาก $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."