IRR, fonction

Mise à jour : novembre 2007

Retourne une donnée de type Double indiquant le taux de rendement interne d'une série de liquidités périodiques (paiements et encaissements).

Function IRR( _
    ByRef ValueArray() As Double, _
   Optional ByVal Guess As Double = 0.1 _
) As Double

Paramètres

  • ValueArray
    Requis. Tableau de valeurs Double représentant les valeurs des liquidités. Le tableau doit contenir au moins une valeur négative (un paiement) et une valeur positive (un encaissement).

  • Guess
    Facultatif. Objet indiquant la valeur qui devrait être retournée par IRR. Si cet argument est omis, Guess a la valeur 0.1 (10 pour cent).

Exceptions

Type d'exception

Numéro de l'erreur

Condition

ArgumentException

5

Les valeurs de l'argument tableau ne sont pas valides ou Guess <= -1.

Consultez la colonne « Numéro d'erreur » si vous mettez à niveau des applications Visual Basic 6.0 qui utilisent la gestion non structurée des erreurs. (Vous pouvez comparer le numéro d'erreur par rapport à Number, propriété (objet Err).) Toutefois, lorsque cela est possible, vous devez envisager de remplacer un tel contrôle d'erreurs par Vue d'ensemble de la gestion structurée des exceptions pour Visual Basic.

Notes

Le taux de rendement interne est le taux d'intérêt perçu pour un investissement comprenant des paiements et des encaissements survenant à intervalles réguliers.

La fonction IRR utilise l'ordre des valeurs dans le tableau pour interpréter l'ordre des paiements et des encaissements. Veillez à entrer dans le bon ordre les valeurs représentant vos paiements et vos encaissements. Les liquidités de chaque période ne doivent pas nécessairement être fixes, comme dans le cas d'une annuité.

IRR est calculé par itération. En commençant par la valeur de l'argument Guess, la fonction IRR répète le cycle de calcul jusqu'à ce que le résultat soit précis à 0,00001 pour cent près. La fonction IRR échoue si elle n'a pas pu trouver de résultat après 20 tentatives.

Exemple

Dans cet exemple, la fonction IRR retourne le taux de rendement interne d'une série de cinq liquidités contenues dans le tableau Values(). Le premier élément du tableau est un mouvement de trésorerie négatif correspondant aux frais de lancement de l'entreprise. Les quatre liquidités restantes représentent des liquidités positives pour les quatre années suivantes. Guess est le taux de rendement interne estimé.

' Define money format.
Dim MoneyFmt As String = "###,##0.00"
' Define percentage format.
Dim PercentFmt As String = "#0.00"

Dim values(4) As Double
' Business start-up costs.
values(0) = -70000
' Positive cash flows reflecting income for four successive years.
values(1) = 22000
values(2) = 25000
values(3) = 28000
values(4) = 31000

' Use the IRR function to calculate the rate of return.
' Guess starts at 10 percent.
Dim Guess As Double = 0.1
' Calculate internal rate.
Dim CalcRetRate As Double = IRR(values, Guess) * 100
' Display internal return rate.
MsgBox("The internal rate of return for these cash flows is " & _
    Format(CalcRetRate, CStr(PercentFmt)) & " percent.")

Configuration requise

Espace de noms :Microsoft.VisualBasic

Module : Financial

**Assembly :**bibliothèque Visual Basic Runtime (dans Microsoft.VisualBasic.dll)

Voir aussi

Référence

NPV, fonction

MIRR, fonction

Liste des mots clés financiers

ArgumentException