Share via


Función IRR

Devuelve un valor doble que especifica la tasa interna de retorno para una serie de flujos de efectivo periódicos (pagos y cobros).

Sintaxis

IRR(values(), [ guess ])

La función IRR tiene estos argumentos denominados:

Parte Descripción
values() Obligatorio. Matriz de valores dobles que especifica valores de flujo de caja. La matriz debe contener al menos un valor negativo (pago) y un valor positivo (cobro).
Adivinar Opcional. Variant que especifica el valor que calcula que devolverá IRR. Si se omite, la presuposición o guess (guess) es 0,1 (el 10 por ciento).

Comentarios

La tasa interna de retorno es la tasa de interés recibida para una inversión que consta de pagos y cobros que se producen con intervalos regulares.

La función IRR usa el orden de valores de la matriz para interpretar el orden de los pagos y cobros. Asegúrese de especificar los valores de pagos y cobros en el orden correcto. No es necesario fijar el flujo de caja de cada periodo, ya que es anual.

La función IRR se calcula mediante iteración. Empezando por el valor de la estimación, la función IRR recorre el cálculo hasta que el resultado tenga una precisión de hasta el 0.00001 por ciento. Si la función IRR no da con ningún resultado tras 20 intentos, se produce un error.

Ejemplo:

En este ejemplo, la función IRR devuelve la tasa interna de retorno para una serie de 5 flujos de caja contenidos en la matriz Values(). El primer elemento de la matriz es un flujo de caja negativo que representa los costes de inicio del negocio. Los cuatro flujos de caja restantes representan flujos de efectivo positivos para los 4 años siguientes. Guess es la tasa interna de retorno 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
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.

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.