Detekterar cirkulär referens

Introduktion

Arbetsböcker kan ha cirkulära referenser och ibland finns det ett behov av att upptäcka om cirkulära referenser finns där eller inte.

Konceptet bakom att detektera den cirkulära referensen

Cirkulära referenser kan bara upptäckas när formeln beräknas eftersom referenserna för en formel vanligtvis beror på det beräknade resultatet av andra delar eller andra formler. Så vi tillhandahåller nya API:er för detta krav (för att samla celler med cirkulära referenser) i processen för formelberäkning:

Beräkningscell: Representerar beräkningen av relevant data om en cell som beräknas

AbstractCalculationMonitor.OnCircular(IEnumerator circularCellsData): kommer att anropas av formelberäkningsmotorn när cirkulära referenser påträffas, elementet i enumeratorn ärBeräkningscell objekt som representerar alla celler i en cirkel. Det returnerade värdet anger om formelmotorn behöver beräkna dessa celler i cirkulär efter detta anrop.

Användare kan samla in dessa cirkulära referenser i implementeringen avAbstractCalculationMonitor.OnCircular() metod.

Källexempelfilen kan laddas ner från följande länk:

Cirkulära formler.xls

Definition avCircularMonitor klass som härrör frånAbstractCalculationMonitor klass är som följer: