Array ilə Çoxlu Sütun və Sətrə Əsasən Məlumatların Gətirilməsi, 4-cü həll yolu (+Video)

Array Formulalar

Excelin ən maraqlı tərəflərindən birisi də o dur ki, məsələ və problemləri fərqli-fərqli yollardan həll etmək mümkündür. İndiyə qədər yazılan məqalələrdə bunu “iki və daha çox sütunlara əsasən məlumatların gətirilməsi” mövzusunda göstərməyə çalışdıq. Bu başlıq altında 3 ayrı həll yolu göstərildi. Bir çox zaman, bu həll yollarının bir-birlərində üstün və zəif cəhətləri olur. Artıq istifadəçilərin hansını istifadə etməli olduqları öz istəklərindən asılıdır. Həmin həll yolları ilə bu linklərdən tanış ola bilərsiniz

  1. İki və Daha Çox Sütuna Əsasən Məlumatların Gətirilməsi (1. Həll Yolu) – VLOOKUP, INDEX-MATCH
  2. İki və Daha Çox Sütuna Əsasən Məlumatların Gətirilməsi (2. Həll Yolu) – SUMIFS-INDEX
  3. OFFSET ilə İki Sütunlu Cədvəllərdə Məlumatların Gətirilməsi (3. Həll Yolu)

Bu məqalədə də, eyni məsələni “array” metoduyla həll etməyə çalışacayıq. Şəxsən mən, bu kimi məsələlərdə hər zaman bu həll yolunu tərcih edirəm. Digərlərinə görə ən optimal həll yolu indi görəcəyimiz metoddur.

Çoxlu Sütuna Əsasən Məlumatın Gətirilməsi

Nümunələr arasında bənzərlik olması səbəbi ilə, əvvəlki məqalələrdə istifadə olunan cədvəli yenə də bu mövzu üçün istifadə edəcəyik. Bu məsələnin həlli INDEX-MATCH kombinasıyası ilə olacaq.

Burdakı ən əsas məqam, MATCH funksiyasının istifadəsidir. Əvvəlcə Region sütununda (B2:B11) axtarılan region adını (Şəmal Zonası) axtardıq.

(B2:B11=H1)
"Nəticəsi"
{FALSE;FALSE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE}

“Şimal Zonası” kəliməsini diapazonun hər bir xanası ilə qarşılaşdırdı və kəlimənin olduğu sətri TRUE, olmadığı sətri isə FALSE kimi hesabladı.

İkinci kriteri “Satış Nöqtəsi” olduğu üçün, “Oba Market” kəliməsini C2:C11 diapazonunda axtardıq. Bununda nəticəsi aşağıdakı kimidir.

(C2:C11=H2)
"Nəticəsi"
{FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;TRUE}

Sonra is, aldığımız TRUE və FALSE nəticələrini bir-birlərinə vurduq.

(B2:B11=H1)*(C2:C11=H2)
"Nəticəsi"
{0;0;0;0;1;0;0;0;0;0}

TRUE və FALSE nəticələri üzərində riyazı əməliyyat onları 1-0 lardan ibarət rəqəmlərə çevirəcək. Əsas məntiq, hər iki kriteriyanın nəticəsi TRUE olduğu sətrdə, vurma əməliyyatı “1” nəticəsini verəcək. Biz də, MATCH funksiyası içərisində “1” rəqəmini həmin array içərisində axtarıb onun sıra sayını tapırıq.

MATCH(1;(B2:B11=H1)*(C2:C11=H2);0)       "Nəticə: 5"
MATCH(1;{0;0;0;0;1;0;0;0;0;0};0)

Əldə olunan nəticə INDEX funksiyasının ikinci arqumentində istofadə olunur. Tam funksiya bu şəkildədir.

=INDEX(D2:D11;MATCH(1;(B2:B11=H1)*(C2:C11=H2);0))

Funksiyanı daxil etdikdən sonra Ctrl+Shift+Enter düymələrini bərabər klikləyirik.

Eyni məntiqi 3-4-5 sütunlu axtarışlarda və sütunlarda istifadə edə bilərik. İndi isə məsələni biraz da çətinləşdirib həm sütun həm də sətrlər üzrə axtarış verək

Çoxlu Sütun və Sətrə Əsasən Məlumatın Gətirilməsi

Bu nümunədə isə, iki sütun və iki başlıq adına əsasən axtarış verilib

Üst tərəfdə qeyd olunan məntiq burda da iki təırəfli olaraq tətbiq olunub. INDEX funksiyasının ikinci arqumentində sətr nömrəsi, üçüncü arqumentində isə sütun nömrəsi tapılıb. Sətr nömrəsini tapmaq üçün

MATCH(1;(K2=A3:A11)*(K3=B3:B11);0)
"və ya"
MATCH(1;{0;0;0;0;1;0;0;0;0};0)

Üçüncü arqumentdə sütun nömrəsi tapmaq üçün yenə də MATCH funksiyasından eyni şəkildə istifadə edirik

MATCH(1;(K4=C1:H1)*(K5=C2:H2);0)
"və ya"
MATCH(1;{0\0\0\0\1\0};0)

Sətr və sütun sıra saylarını iki ədəd MATCH funksiyası ilə tapdıqdan sonra, həmin nəticələri INDEX içərisində istifadə edirik

=INDEX(C3:H11;MATCH(1;(K2=A3:A11)*(K3=B3:B11);0);MATCH(1;(K4=C1:H1)*(K5=C2:H2);0))

Funksiya yekunlaşdıqdan sonra Ctrl+Shift+Enter klikləyərik.

Bu həll yolunun digərlərinə görə mənfi cəhəti: Üstün cəhəti:
Bütün sütunu seçmək olmur,

Hesablama sürəti nisbətən yavaşdır.

Köməkçi sütun istifadə olunmur,

Cədvəlin istənilən sütunundan axtarış vermək olmur,

Daha güvənlidir.

Məqalədə istifadə olunan funksiyalar haqqında daha ətraflı oxumaq üçün

Array Formulalar – Giriş

Sətr və Sütunlara Əsasən Məlumatların Gətirilməsi – VLOOKUP, HLOOKUP, INDEX-MATCH

 

 

 

Məqalənin görüntülü şərhini Youtube kanalımdan izləyə bilərsiniz

Array Formulalar
Hesablanmış dəyərə əsasən LOOKUP verilməsi – Array (+Video)

Biz normal şərtlərdə LOOKUP verərkən sadə məntiqlə axtarılan dəyərin qarşısındakı (və ya hərhansı tərəfindəki) məlumatları əldə etmək istəyirik. Bəs müəyyən şərtlərə əsasən hesablanmış rəqəmlərin qarşısındakı məlumatları necə gətirmək olar? Bugünkü məqalədə bucür hesablamaların əsasında əldə edilən dəyərlərə görə necə LOOKUP veriləbiləcəyinə baxacayıq. Nümunə olaraq aşağıdakı cədvələ nəzər yetirək: Nümunədə hər hansı …

Array Formulalar
Şərtə görə MAX və MIN dəyərlərin tapılması – Array ilə (+Video)

Bir əvvəlki məqaləmizdə OFFSET ilə şərtə əsasən MAX və MIN rəqəmlərin tapılmasını gördük. İndi isə eyni nəticəyə Array metodu ilə gələcəyik. Array istifadəsinin OFFSET-ə nəzərən üstünlükləri: OFFSET funksiyasında şərtlərin olduğu sütun ardıcıl olmalıydı. Ancaq array istifadəsində buna ehtiyac yoxdur Şərtlərimizin sayı 2 və daha çox olarsa OFFSET ilə bunu həll …

COUNTIF
Şərtə görə MAX və MIN dəyərlərin tapılması – OFFSET ilə (+Video)

Düşünün ki, şəkildəki kimi “Bolgələr və Şəhərlər” üzrə satış rəqəmləriniz var və siz hər bir regionda ən az (MIN) və ən çox (MAX) satış rəqəmlərini əldə etmək istəyirsiniz. Biz istəyirik ki, şəkildəki cədvələ əsasən əgər “Bakı Abşeron Bölgəsi” seçərsəm bizə ən az satış olan 600 (1-ci ay üçün) və ən …