Devolve um Duplo (tipo de dados Duplo: tipo de dados fundamental que contém números de vírgula flutuante de dupla precisão. É armazenado como um número de 64 bits com um valor entre cerca de -1,797E308 e -4,940E-324 (negativo), entre 4,94E-324 e 1,797E308 (positivo) e 0.) que especifica a taxa interna de rentabilidade de uma série de fluxos monetários periódicos (pagamentos e recebimentos).
Sintaxe
IRR(valores() [, estimativa ] )
A sintaxe da função IRR tem os seguintes argumentos (argumento: valor que fornece informações a uma acção, evento, método, propriedade, função ou procedimento.):
Observações
A taxa interna de rentabilidade é a taxa de juro recebida para um investimento composto por pagamentos e recebimentos que ocorrem em intervalos regulares.
A função IRR utiliza a ordem de valores na matriz para interpretar a ordem de pagamentos e recebimentos. Certifique-se de que introduz os valores do pagamento e do recebimento na sequência correcta. O fluxo monetário de cada período não tem de ser fixo, ao contrário do que acontece numa anuidade.
O IRR é calculado por iteração. Começando com o valor da estimativa, a função IRR percorre o cálculo até o resultado corresponder a 0,00001 por cento. Se a função IRR não conseguir encontrar um resultado após 20 tentativas, ocorre uma falha.
Exemplo
Nota Os exemplos que se seguem demonstram a utilização desta função num módulo do Visual Basic for Applications (VBA). Para mais informações sobre como trabalhar com VBA, seleccione 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 IRR devolve a taxa interna de rentabilidade de uma série de 5 fluxos monetários incluídos na matriz Values(). O primeiro elemento da matriz é um fluxo monetário negativo, que representa custos de arranque do negócio. Os 4 fluxos monetários remanescentes representam fluxos monetários positivos para os 4 anos subsequentes. Guess é a taxa interna de rentabilidade prevista.
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.