Devolve um valor Duplo que especifica a taxa interna de rentabilidade para uma série de fluxos monetários periódicos (pagamentos e recibos).
Sintaxe
TIR(valores () [, estimativa ] )
A sintaxe da função TIR tem os seguintes argumentos:
| Argumento | Descrição |
|---|---|
| valores () | Obrigatório. Matriz do valor Duplo a especificar os valores de fluxo de caixa. A matriz tem de conter pelo menos um valor negativo (um pagamento) e um valor positivo (um recibo). |
| Adivinhação | Opcional. A variante que especifica o valor estimado será devolvida por TIR. Se for omitido, a estimativa é de 0,1 (10%). |
Observações
A taxa de retorno interna é a taxa de juro recebida por um investimento que consiste em pagamentos e recebimentos que ocorrem a intervalos regulares.
A função TIR utiliza a ordem dos valores na matriz para interpretar a ordem de pagamentos e recibos. Certifique-se de que introduz os seus valores de pagamento e de recibo na sequência correta. O fluxo de caixa para cada período não tem de ser fixo, como acontece para uma anuidade.
TIR é calculado por iteração. Começando pelo valor estimativa, TIR refaz os cálculos até o resultado ter uma precisão de 0,00001%. Se TIR não conseguir obter um resultado após 20 tentativas, falha.
Exemplo
Nota
Os exemplos seguintes demonstram a utilização desta função no módulo VBA (Visual Basic for Applications). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência para Programadores na lista pendente junto a Procurar e introduza um ou mais termos na caixa de pesquisa.
Neste exemplo, a função TIR devolve a taxa interna de rentabilidade para uma série de 5 fluxos monetários contidos na matriz Values(). O primeiro elemento de matriz é um fluxo de caixa negativo que representa os custos de arranque da empresa. Os restantes 4 fluxos de caixa representam fluxos de caixa positivos para os 4 anos subsequentes.
Guess é a taxa interna de rentabilidade estimada.
Dim Guess, Fmt, RetRate, Msg
Static Values(5) As Double ' Set up array.
Guess = .1 ' Guess starts at 10 percent.
Fmt = "#0.00" ' Define percentage format.
Values(0) = -70000 ' Business start-up costs.
' Positive cash flows reflecting income for
' four successive years.
Values(1) = 22000 : Values(2) = 25000
Values(3) = 28000 : Values(4) = 31000
' Calculate internal rate.
RetRate = IRR(Values(), Guess) * 100
Msg = "The internal rate of return for these " & _
"five cash flows is "
Msg = Msg & Format(RetRate, Fmt) & " percent."
MsgBox Msg ' Display internal return rate.