Compartilhar via


Função TIR

Devolve um Valor Duplo especificando a taxa interna de rentabilidade de uma série de fluxos monetários periódicos (pagamentos e recibos).

Sintaxe

IRR(values(), [ guess ])

A função IRR tem estes argumentos nomeados:

Sair Descrição
valores() Obrigatório. Matriz de Duplo especificando valores de fluxo de caixa. A matriz tem de conter, pelo menos, um valor negativo (um pagamento) e um valor positivo (um recibo).
guess Opcional. Variante que especifica o valor que estima que será devolvido pelo IRR. Se omitido, estimativa é 0,1 (10 por cento).

Comentários

A taxa de rentabilidade interna é a taxa de juro recebida para um investimento que consiste em pagamentos e recibos que ocorrem em intervalos regulares.

A função IRR utiliza a ordem dos valores na matriz para interpretar a ordem de pagamentos e recibos. Certifique-se de que introduz os valores de pagamento e recibo na sequência correta. O fluxo de caixa para cada período não tem de ser corrigido, pois é para uma anuidade.

O IRR é calculado por iteração. Começando com o valor de estimativa, o IRR percorre o cálculo até que o resultado seja preciso até 0,000001 por cento. Se o IRR não conseguir encontrar um resultado após 20 tentativas, falha.

Exemplo

Neste exemplo, a função IRR devolve a taxa interna de rentabilidade de 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 do negócio. Os restantes quatro fluxos monetários representam fluxos monetários positivos para os 4 anos seguintes. Guess é a taxa interna estimada de retorno.

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
RetRate = IRR(Values(), Guess) * 100    ' Calculate internal rate.
Msg = "The internal rate of return for these five cash flows is "
Msg = Msg & Format(RetRate, Fmt) & " percent."
MsgBox Msg    ' Display internal return rate.

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.