Siyahıdakı məlumatların
dublikatlarsız sayının tapılması qaydası:
Code
SUMPRODUCT((A2:A16<>"")/(COUNTIF(A2:A16;A2:A16&"")))
Izahı
: burada (A2:A16<>"")
siyahıda yalnız boş olmayanların nəzərə alınacağını göstərirı.
Formulun bu hissəsinin necə
işlədiyini vizual görmək üçün həmin hissəni seçib "F9" sıxmaqla (ya da Alt+T+U+F ilə) görə bilərsiniz.
Bu misalda
{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}nəticəsini
görəcəksiniz çünki bu siyahıda boş olan hücrə movcud deyil, əgər məsələl
"A3" boş olsa idi onda siyahı bu cür davam edərdi {TRUE;FALSE;TRUE;TRUE
və s. Göründüyü kimi indi ikinci yerdə FALSE yazılıb bu isə o deməkdir ki,
həmin yerdə məlumat movcud deyil.
COUNTIF(A2:A16;A2:A16) formulu isə A2:A16-yədək olan bütün kriteriyaların
mövcud diapozondakı cəmi sayını tapır. Burada kriteriya bölməsində A2:A16&""-yazılışı
isə siyahıdakı ehtimal olunacaq boşluqlardan yan keçmək üçündür (əks halda
boşluq sıfır verəcəyi üçün 0-ra bölünməsi halı ilə rastlaşacağıq)
Sual
oluna bilər ki, bəs 1/COUNTIF(A2:A16;A2:A16&"") bizə hansı
nəticəni almaq üçün lazımdır. (Bu hissə formulumuzdakı ən əsas hissəsi
sayılır.) Əvvəlcə məxrəc tərəfə nəzər salaq. Əgər COUNTIF(A2:A16;A2:A16&"") olan hissəni seçib
"F9" sıxarsınızsa onda {1;1;5;5;5;5;5;4;4;2;1;1;2;4;4} yazılışını
görə biləcəksiniz. Bu nə deəmkdir? bu yol ilə hansı nəticəni almağa çalışırıq?
desəniz onda bunun izahı belə olar:burada diqqətlə nəzər yetirsək görərik ki, bu saylar elə siyahının
əvvəlindən
{"Day";1;3;3;3;3;3;2;2;"Name";15;10;"Name";2;2}başlayaraq
bütün kriteriyaların A2:A16 diapozonu üzrə ardıcıl olaraq cəmi saylarını göstərir.
Bəs 1/COUNTIF(A2:A16;A2:A16&"") əməliyyatı nə üçün lazımdır?
Cavab : qısaca desək bu əməliyyat siyahıdakı məlumatların dublikatsız sayını
almaq üçündür. Ətraflı izahı isə belə olardı ki, məsələn: 3 rəqəmi beş dəfə
təkrarlanır (yuxarıda F9-ilə artıq bunun şahidi oldunuz) əgər biz bu 5-ləri
toplayıb onların (yəni beşlərin) cəmi sayına bölsək onda bir rəqəmini alarıq və
bu üsulla 4-rəqəmini 4-ə, 2-rəqəmini 2-yə 1-rəqəmini 1-ə və s hər birini bu
üsulla bölüb toplasaq bu bizə dublikatlarsız siyahını vermiş olacaq bəs bunu
formul ilə necə etmək olar? cavab: hər birini "1/cəmi sayı"
formasında yazmaqla. həqiqətən də
(1/1+1/1+1/5+1/5+1/5+1/5+1/5+1/4+1/4+1/2+1/1+1/1+1/2+1/4+1/4)=7 nəticəsini verir.
Burada məxrəcləri eyni olduğu
üçün məsələn : 3-rəqəminin sayı olan 5 - beş dəfə 1/5 yazılaraq toplandıqda
"5/5"="1" nəticəsini verir. Əgər 3-rəqəmindən başqa deyək
ki, 2-rəqəmi də diapozonda 5-dəfə yazılıbsa (yəni sayı 5-dirsə) onda
"10/5" nəticəsi alınacaq ("=2" olacaq) bu isə 3 və
2-rəqəmlərinin hərəsini bir dəfə nəzərə almaqla toplamağa imkan verəcək.
Praktik olaraq isə bu faylda görə bilərsiniz.
Həmçinin vizual olaraq buradan baxa bilərsiniz. |