Função SDA
Retorna um Double especificando a depreciação de dígitos de soma de anos de um ativo por um período especificado.
Sintaxe
SYD(custo, salvamento, vida, período)
A função SYD tem estes argumentos nomeados:
Sair | Descrição |
---|---|
Custo | Obrigatório. Especifique duas vezes o custo inicial do ativo. |
Salvar | Obrigatório. Especifique duas vezes o valor do ativo no final de sua vida útil. |
Vida | Obrigatório. Especifique duas vezes o comprimento da vida útil do ativo. |
Período | Obrigatório. Especifique duas vezes o período para o qual a depreciação do ativo é calculada. |
Comentários
Os argumentos de vida e de período devem ser expressos nas mesmas unidades. Por exemplo, se a vida é dada em meses, o período também deve ser dado em meses. Todos os argumentos devem ser números positivos.
Exemplo
Este exemplo usa a função SYD para retornar a depreciação de um ativo por um período especificado, dado o custo inicial do ativo (InitCost
), o valor de salvamento no final da vida útil do ativo (SalvageVal
) e a vida útil total do ativo em anos (LifeTime
). O período em anos para o qual a depreciação é calculada é PDepr
.
Dim Fmt, InitCost, SalvageVal, MonthLife, LifeTime, DepYear, 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 life?")
MonthLife = InputBox("What's the asset's useful life in months?")
Do While MonthLife < YEARMONTHS ' Ensure period is >= 1 year.
MsgBox "Asset life must be a year or more."
MonthLife = InputBox("What's the asset's useful life in months?")
Loop
LifeTime = MonthLife / YEARMONTHS ' Convert months to years.
If LifeTime <> Int(MonthLife / YEARMONTHS) Then
LifeTime = Int(LifeTime + 1) ' Round up to nearest year.
End If
DepYear = CInt(InputBox("For which year do you want depreciation?"))
Do While DepYear < 1 Or DepYear > LifeTime
MsgBox "You must enter at least 1 but not more than " & LifeTime
DepYear = CInt(InputBox("For what year do you want depreciation?"))
Loop
PDepr = SYD(InitCost, SalvageVal, LifeTime, DepYear)
MsgBox "The depreciation for year " & DepYear & " is " & Format(PDepr, Fmt) & "."
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.