Les références circulaires se produisent lorsqu’une formule fait référence – directement ou indirectement – à la cellule dans laquelle la formule est stockée. Par exemple, si B3 contient la formule = B2 + B3, alors B3 contient une référence circulaire.

Normalement, les références circulaires représentent une erreur dans une formule. Il existe cependant des situations dans lesquelles des références circulaires sont souhaitables.

Excel vous permet d’inclure des références circulaires dans une feuille de calcul, mais il peut être un peu difficile à leur sujet.

Dans la plupart des cas, Excel est très indulgent sur les références circulaires si le contrôle Activer le calcul itératif est activé. (Affichez la boîte de dialogue Options Excel, puis cliquez sur Formules sur le côté gauche de la boîte de dialogue.) Si vous cochez la case Activer le calcul itératif, puis entrez une référence circulaire, Excel ne proteste pas. Au lieu de cela, il utilise les paramètres de la boîte de dialogue Options Excel pour contrôler combien de fois la référence circulaire est répétée avant qu’elle ne soit considérée comme terminée.

Il semble que le paramètre de la case à cocher Activer le calcul itératif est stocké dans le cadre d’un classeur, mais il n’est pas toujours prêté attention au moment où le classeur est chargé ultérieurement dans Excel. En fait, le paramètre est complètement ignoré si l’une des situations suivantes se produit avant d’ouvrir le classeur:

  • Vous ouvrez tout autre classeur en plus du classeur par défaut créé lors du premier démarrage d’Excel.

  • Vous modifiez la case à cocher Itération pendant que le classeur par défaut est affiché.

Excel examine le paramètre de case à cocher Activer le calcul itératif pour le classeur que vous ouvrez en premier. Ce paramètre devient la « valeur par défaut » pour la session en cours avec Excel. Pour tout autre classeur chargé au cours de la même session, le paramètre enregistré de la case à cocher Activer le calcul itératif est ignoré.

En outre, si vous avez défini un classeur personnel sur votre système, le paramètre de la case à cocher Activer le calcul itératif dans ce fichier est toujours utilisé par défaut. Pourquoi? Parce que le classeur personnel est toujours le premier classeur ouvert, et le premier classeur ouvert définit toujours la valeur par défaut pour le paramètre.

Si vous disposez d’un classeur enregistré qui utilise des références circulaires et que la case à cocher Activer le calcul itératif est désactivée (par défaut ou explicitement), lorsque vous ouvrez le classeur contenant les références circulaires, Excel affiche un avertissement. Si vous ne souhaitez pas voir l’avertissement, la solution évidente consiste soit à vous assurer que vous ouvrez le classeur avant tout autre classeur (afin que son paramètre Itération soit utilisé), soit à cocher explicitement la case Activer le calcul itératif avant d’ouvrir le classeur.

Si vous ne voulez pas vous soucier de l’ordre dans lequel vous ouvrez les classeurs et que vous ne voulez pas toujours modifier le paramètre de la case à cocher Activer le calcul itératif, vous pouvez créer une macro qui garantit que la case Activer le calcul itératif est cochée pour le classeur. Si vous affectez la macro à l’événement Open pour le classeur, elle s’exécutera à chaque fois que le classeur est ouvert, garantissant que vous ne verrez pas l’avertissement que vous ne souhaitez pas voir. La macro se présente comme suit:

Private Sub Workbook_Open()

Application.Iteration = True End Sub

Si vous avez défini un classeur personnel pour votre système, vous pouvez y ajouter cette macro plutôt que dans des classeurs individuels. De cette façon, vous pouvez vous assurer que la case à cocher Activer le calcul itératif est toujours activée pour chaque session Excel.

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (9748) s’applique à Microsoft Excel 2007, 2010, 2013, 2016, 2019 et Excel dans Office 365. Vous pouvez trouver une version de cette astuce pour l’ancienne interface de menu d’Excel ici:

lien: / excel-Iterating_Circular_References [Iterating Circular References].