Bir çalışma sayfasında iki veya daha fazla hücre içine girilmiş formüller birbirlerine başvurarak bir döngüye giriyor ise  döngüsel başvuru hatası meydana gelir. Mesela A1 hücresine C2 hücresindeki değere başvuran bir formül girdik. C2 hücresinde B4 hücresinin değerini işleyen bir formül var. Ancak C2 hücresinin değeri de A1 hücresindeki ana değere göre hesaplanıyor. Bu durumda A1 hücresi dolaylı olarak kendi kendisine tekrar başvurmuş oluyor. Bu döngüsel başvurudur. Normalde bu istenmeyen bir durumdur. Ve formül araç çubuğundaki “Hata Denetimi” simgesine basınca açılan menüden “Döngüsel Başvurular” komutu ile hangi hücrelerdeki hangi formüllerin birbirine başvurduğunu görebilirsiniz.

Ancak bazı durumlarda biz bir iterasyon sonucunu elde etmek isteyebiliriz. Yani elde etmek istediğimiz değer aslında birbirine bağlı bu formüllerin belli bir sayıda tekrarlanması neticesinde elde ediliyor olabilir. Bu durumda Excel bize nasıl yardımcı olabilir?

Bunun için öne bir ayar değişikliği yapmak gerekiyor. Excel “Dosya” menüsünden “Seçenekleri” tıklayın. Gelen pencerede “Formüller” sekmesine girin ve “Yinelemeli hesaplamayı etkinleştir” seçeneğini etkinleştirin. Bu seçeneğin altında yer alan 2 değişken önemli.

Bu tarz hesaplamalar 3 sonuca sahiptir.

1. Hesaplama sonunda değerler birbirine yaklaşır. Yani ardışık iki hesaplamanın sonuçları arasındaki fark her yenilemede sıfıra yaklaşır. Ancak tam olarak sıfır olmayabilir veya sıfır olması için gereken tekrar sayısı çok çok fazla olabilir. Bunun sonucunda da Excel çok uzun süren bir hesaplama döngüsüne girebilir.

2. Ardışık hesaplamaların sonuçları arasındaki fark gittikçe büyür. Bu durumda da istenilen sonuç elde edilemeyebilir ve tabii ki çok uzun sürebilecek döngüler meydana gelebilir.

3. Ardışık hesaplamaların sonuçları belirli bir dizin oluşturabilir. Yani n. hesap sonucu ile n+1,n+2 hesap sonuçları arasındaki fark hep aynı değeri verir ve tekrar başa dönebilir.

Bu 3 seçenekte de gördüğünüz gibi istenilen değerler elde edilemez ise çok çok uzun sürecek bir hesaplama döngüsü oluşabilir. Hatta hesaplama nedeni ile bilgisayar kilitlenebilir. Programlamaya aşına olanlar bilirler, bazen düzgün belirlenmemiş şartlar nedeni ile yazdığınız program sonsuz bir döngüye girer.

Ancak Excel bu tarz sonsuz döngüleri engellemek adına bize iki tane seçenek sunuyor.  En fazla yinele seçeneği, eğer sonuç istenilen aralıkta değil ise Excel’in yapacağı en fazla tekrar adedini belirler. En büyük değişiklik ise takip eden iki hesaplama sonucunda elde edilen değerlerin birbiri ile olan mutlak farkı ifade eder. Excel döngüsel başvuruya sahip formülleri en fazla 100 kere veya takip eden iki hesaplama sonucunun farkı 0,001 olana kadar, hangisi ilk olursa o kadar sayıda tekrar eden hesaplamalar yapar. Siz bu değerleri değiştirerek hesaplamanın hassasiyetini değiştirebilirsiniz. Ancak bu değerleri aşırı hassas hale getirmek hesaplama süresini de katlanarak arttıracaktır. Bu yüzden dikkatli olmak ve kademeli ayar yapmak gerekebilir. Ayar değişikliği yapmadan önce de Excel dosyanızı mutlaka kaydedin. Çok hassas değerler veya çok yüksek yineleme adedi girerseniz sorun yaşayabilir ve verilerinizi kaybedebilirsiniz.

İlginizi Çekebilecek Diğer Yazılar

Leave a Reply