Excel'de dizilerle çalışma sınırlamalarının açıklaması

Özet

Microsoft Excel'in "Şunlar için geçerlidir" bölümünde listelenen sürümlerinde, "Hesaplama Belirtimleri" Yardım konusunda bir diziyle çalışma sınırlamaları listelenir. Bu makalede, Excel'deki dizilerin sınırlamaları açıklanmaktadır.

Ek Bilgi

Excel'de, çalışma sayfalarındaki diziler kullanılabilir rastgele erişim belleğiyle, dizi formüllerinin toplam sayısıyla ve "sütunun tamamı" kuralıyla sınırlıdır.

Kullanılabilir bellek

"Uygulandığı yer" bölümünde listelenen Excel sürümleri, çalışma sayfası dizilerinin boyutuna bir sınır getirmez. Bunun yerine, yalnızca bilgisayarınızdaki kullanılabilir bellekle sınırlıdır. Bu nedenle, yüz binlerce hücre içeren çok büyük diziler oluşturabilirsiniz.

"Sütunun tamamı" kuralı

Excel'de çok büyük diziler oluşturabilse de, tam sütun veya birden çok hücre sütunu kullanan bir dizi oluşturamazsınız. Bir hücre sütununun tamamını kullanan bir dizi formülünü yeniden hesaplamanız zaman alıcı olduğundan, Excel formülde bu tür bir dizi oluşturmanıza izin vermez.

Not

Microsoft Office Excel 2003'te ve Excel'in önceki sürümlerinde bir sütunda 65.536 hücre vardır. Microsoft Office Excel 2007'de bir sütunda 1.048.576 hücre vardır.

En fazla dizi formülü

Excel 2003'te ve Excel'in önceki sürümlerinde, tek bir çalışma sayfasında başka bir çalışma sayfasına başvuran en fazla 65.472 dizi formülü bulunabilir. Daha fazla formül kullanmak istiyorsanız, tek bir çalışma sayfasına 65.472'den az başvuru olması için verileri birden çok çalışma sayfasına bölün.

Örneğin, çalışma kitabının Sayfa1'de aşağıdaki öğeleri oluşturabilirsiniz:

  • Sayfa2'ye başvuran 65.472 dizi formülü
  • Sayfa3'e başvuran 65.472 dizi formülü
  • Sayfa4'e başvuran 65.472 dizi formülü

Belirli bir çalışma sayfasına başvuran 65.472'den fazla dizi formülü oluşturmaya çalışırsanız, 65.472 numaralı dizi formülünden sonra girdiğiniz dizi formülleri girdiğinizde kaybolabilir.

Dizi formülü örnekleri

Dizi formülü örneklerinin listesi aşağıda verilmiştir. Bu örnekleri kullanmak için yeni bir çalışma kitabı oluşturun ve her formülü dizi formülü olarak girin. Bunu yapmak için formülü formül çubuğuna yazın ve CTRL+SHIFT+ENTER tuşlarına basarak formülü girin.

Excel 2007

  • A1: =TOPLA(EĞER(B1:B1048576=0,1,0))

    A1 hücresindeki formül sonuç 1048576 döndürür. Bu sonuç doğrudur.

  • A2: =TOPLA(EĞER(B:B=0,1,0))

    A2 hücresindeki formül sonuç 1048576 döndürür. Bu sonuç doğrudur.

  • A3: =TOPLA(EĞER(B1:J1048576=0,1,0))

    A3 hücresindeki formül sonuç 9437184 döndürür. Bu sonuç doğrudur.

    Not

    Formül 1 milyondan fazla hücreyi denetlediğinden formülün sonucu hesaplaması uzun sürebilir.

  • A4: =TOPLA(EĞER(B:J=0,1,0))

    A4 hücresindeki formül sonuç 9437184 döndürür. Bu sonuç doğrudur.

    Not

    Formül 1 milyondan fazla hücreyi denetlediğinden formülün sonucu hesaplaması uzun sürebilir.

  • A5: =TOPLA(EĞER(B1:DD1048576=0,1,0))

    Bu formülü A5 hücresine girdiğinizde, aşağıdaki hata iletilerinden birini alabilirsiniz:

    Bir veya daha fazla formülü hesaplamaya çalışırken Excel'de kaynak kalmadı. Sonuç olarak, bu formüller değerlendirilemez.

    Aldığınız iletiyle ilişkili benzersiz sayıyı belirlemek için CTRL+SHIFT+I tuşlarına basın. Bu iletinin sağ alt köşesinde aşağıdaki sayı görüntülenir:

    101758

    Bu durumda, çalışma sayfası dizisinin boyutu kullanılabilir bellek için çok büyük. Bu nedenle formül hesaplanamaz.

    Ayrıca, Excel birkaç dakika boyunca yanıt vermeyi durdurmuş gibi görünebilir. Bunun nedeni, girdiğiniz diğer formüllerin sonuçlarını yeniden hesaplaması gerekir.

    Sonuçlar yeniden hesaplandıktan sonra Excel beklendiği gibi yanıt verir. A5 hücresindeki formül 0 (sıfır) değerini döndürür.

Excel 2003 ve Excel'in önceki sürümleri

  • A1: =TOPLA(EĞER(B1:B65535=0,1,0))

    A1 hücresindeki formül 65535 sonucunu döndürür. Bu sonuç doğrudur.

  • A2: =TOPLA(EĞER(B:B=0,1,0))

    A2 hücresindeki formül bir #NUM! hatasını verir çünkü dizi formülü bir hücre sütununun tamamına başvurur.

  • A3: =TOPLA(EĞER(B1:J65535=0,1,0))

    A3 hücresindeki formül sonuç 589815 döndürür. Bu sonuç doğrudur.

    Not

    Formül neredeyse 600.000 hücreyi denetlediğinden formülün sonucu hesaplaması uzun sürebilir.

  • A4: =TOPLA(EĞER(B:J=0,1,0))

    A2 hücresindeki formül gibi, A4 hücresindeki formül de bir #NUM! hatasını verir çünkü dizi formülü bir hücre sütununun tamamına başvurur.

  • A5: =TOPLA(EĞER(B1:DD65535=0,1,0))

    Formülü A5 hücresine girdiğinizde, aşağıdaki hata iletilerinden birini alabilirsiniz:

    Yeterli bellek yok. Geri Alma olmadan devam et?

    Yeterli bellek yok.

    Bu durumda, çalışma sayfası dizisinin boyutu kullanılabilir bellek için çok büyük. Bu nedenle formül hesaplanamaz.

    Ayrıca, Excel birkaç dakika boyunca yanıt vermeyi durdurmuş gibi görünebilir. Bunun nedeni, girdiğiniz diğer formüllerin sonuçlarını yeniden hesaplaması gerekir.

    Sonuçlar yeniden hesaplandıktan sonra Excel beklendiği gibi yanıt verir. A5 hücresindeki formül 0 (sıfır) değerini döndürür.

Bu formüllerden hiçbirinin Excel'in önceki sürümlerinde çalışmadığını unutmayın. Bunun nedeni, formüller tarafından oluşturulan çalışma sayfası dizilerinin tümünün Excel'in önceki sürümlerindeki en yüksek sınırlardan daha büyük olmasıdır. Excel'de dizi kullanan bazı işlevlerin listesi aşağıdadır:

  • LINEST()
  • MDETERM()
  • MINVERSE()
  • MMULT()
  • TOPLA(EĞER())
  • SUMPRODUCT()
  • TRANSPOSE()
  • TREND()

Not

İşlevler hakkında aşağıdaki olguları hatırlamak yararlı olacaktır.

  • Dizideki herhangi bir hücre boşsa veya metin içeriyorsa, MINVERSE işlevi #VALUE! hata değerini verir.
  • Dizide eşit sayıda satır ve sütun yoksa, MINVERSE de #VALUE! hata değerini döndürür.
  • Döndürülen dizi 52 sütunu 52 satır aşıyorsa EN KÜÇÜK TERS, #VALUE! hatasını verir.
  • Çıktı 5460 hücreyi aşarsa, MMULT işlevi #VALUE! döndürür.
  • Döndürülen dizi 73 satırdan 73 sütundan büyükse MDETERM işlevi #VALUE! döndürür.