Online Reference

Home

Microsoft Reference
Knowledge Developer Database Internet Resource Forum
VBA
Financial Function
ดาวน์โหลดคู่มือ

SLN Function

VBA Function, ส่งออกค่าเป็นประเภทข้อมูล Double ของค่าเสื่อมราคาในทรัพย์สินแบบ straight-line

ไวยากรณ์

SLN(cost, salvage, life )

อากิวเมนต์ของฟังก์ชัน SLN มีความหมาย คือ

ส่วน รายละเอียด
cost บังคับ, เป็นประเภทข้อมูล Double, ระบุต้นทุนเริ่มต้น
salvage บังคับ, เป็นประเภทข้อมูล Double, ระบุราคาซากเมื่อสิ้นสุดอายุใช้งาน
life บังคับ, เป็นประเภทข้อมูล Double, อายุการใช้งานในการคำนวณ

ลักษณะการประยุกต์

อากิวเมนต์ life และ period ต้องใช้หน่วยเดียวกัน เช่น ถ้า life กำหนดเป็นเดือน period ต้องใช้หน่วยเป็นเดือนด้วย อากิวเมนต์ทั้งหมดต้องเป็นค่าบวก

ดูเพิ่มเติม

ฟังก์ชัน DDB, ฟังก์ชัน FV, ฟังก์ชัน IPMT, ฟังก์ชัน IRR, ฟังก์ชัน MIRR, ฟังก์ชัน NPer, ฟังก์ชัน NPV, ฟังก์ชัน Pmt, ฟังก์ชัน PPmt, ฟังก์ชัน PV, ฟังก์ชัน Rate, ฟังก์ชัน SYD

ตัวอย่าง

ตัวอย่างการใช้ฟังก์ชัน SLN เพื่อส่งออกค่าเสื่อมราคาแบบ straight-line depreciation โดยให้ค่าต้นทุนเริ่มต้น (InitCost) ราคาซากที่งวดสุดท้าย (SalvageVal) และอายุการใช้งานของทรัพย์สินเป็นปี (LifeTime)

Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, PDepr

' จำนวนเดือนใน 1 ปี
Const YEARMONTHS = 12

' กำหนดรูปแบบการเงิน
Fmt = "###,##0.00"
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

' แปลงเดือนเป็นปี
LifeTime = MonthLife / YEARMONTHS

If LifeTime <> Int(MonthLife / YEARMONTHS) Then
  ' ปรับค่าขึ้นเป็นปีที่ใกล้ที่สุด
  LifeTime = Int(LifeTime + 1)
End If

PDepr = SLN(InitCost, SalvageVal, LifeTime)
MsgBox "The depreciation is " & Format(PDepr, Fmt) & " per year."