Daha əvvəlki yazılarda, siyahımızdakı ən yüksək 3,5,10-cu dəyərlərin avtomatik cəmlənməsini hesablamışdıq (Daha ətraflı – Siyahıdakı ən yüksək dəyərlərin avtomatik cəmlənməsi). Lakin məsələnin bu cür həlli bir sıra problemlər yaradırdı. Belə ki, siyahıdakı ən böyük 20 ədədi cəmləmiş olsaq, bu zaman bu 1-dən 20-yə qədər ədədləri əllə daxil etməli olurduq. Bu problemi aradan qaldırmanın bir yolu var.
Hesab edək ki, yuxarıdakı siyahıdakı ən yüksək 6 ədədi cəmləmək istəyirik. Daha öncəki prinsiplə getmiş olsaydıq, yazacağımız formul aşağıdakı kimi olacaqdı.
Bu formul əlbəttə ki, doğru nəticəni verəcəkdir, lakin bu formulla ən böyük 100 dəyərin cəmini hesablamaq üçün, 1-dən 100-ə qədər ədədləri formul daxilinə bir-bir əlavə etməli olacaqdıq. Bunun əvəzinə, məsələnin rahat həllinə baxaq.
Gördüyümüz kimi, LARGE funksiyasının daxilinə kriteriya olaraq {1;2;3;4;5;6} əvəzinə ROW(INDIRECT(“1:6”)) daxil edərək problemi həll etmiş oluruq.
Xatırlatmalı olduğum nyuans isə ondan ibarətdir ki, formulu yazıb bitirdikdən sonra Enter yox, Ctrl + Shift + Enter basmaq mütləqdir. Əks halda formul yanlış nəticə verəcəkdir.
Formul çubuğundan da gördüyümüz kimi, formul { } mötərizələri arasındadır, bu isə o deməkdir ki, array funksiyası ilə qarşı qarşıyayıq. Bu səbəblə, Ctrl + Shift + Enter mütləqdir!
Uğurlar!
Faylı endir – SUM nth largest values