Екцел формула: Вредности ранга по месецима -

Преглед садржаја

Резиме

Да бисте приказали листу имена рангираних нумеричком вредношћу, можете да користите скуп формула на основу ЛАРГЕ, ИНДЕКС, МАТЦХ, уз помоћ функције ТЕКСТ. У приказаном примеру, формула у Г5 је:

=LARGE(IF(TEXT(date,"mmmm")=G$4,amount),$F5)

А формула у Г10 је:

=INDEX(client,MATCH(1,(amount=G5)*(TEXT(date,"mmmm")=G$9),0))

где клијент (Б5: Да Б17) датум (Ц5: Ц17) и износ (Ц5: Ц17) се зове опсега.

Напомена: ово су формуле низа и морају се унети са цонтрол + схифт + ентер, осим у програму Екцел 365.

Објашњење

Овај пример је постављен из два дела ради прегледности: (1) формула за одређивање 3 главна износа за сваки месец и (2) формула за преузимање имена клијента за сваки од 3 најбоља месечна износа.

Имајте на уму да у изворним подацима нема стварног ранга. Уместо тога, користимо функцију ЛАРГЕ да бисмо директно радили са износима. Други приступ би био додавање ранга изворним подацима помоћу функције РАНК и употреба вредности ранга за дохватање имена клијената.

1. део: дохватите највише 3 износа сваког месеца

Да бисте преузели прва 3 износа за сваку недељу, формула у Г5 је:

=LARGE(IF(TEXT(date,"mmmm")=G$4,amount),$F5)

Напомена: ово је формула низа и мора се унети са цонтрол + схифт + ентер, осим у програму Екцел 365.

Радећи изнутра, прво користимо функцију ТЕКСТ да бисмо добили називе месеци за сваки датум у именованом датуму опсега :

TEXT(date,"mmmm") // get month names

Прилагођени формат броја "мммм" вратиће низ као што су "Април", "Маи", "Јуне" за свако име у именованом датуму опсега . Резултат је низ имена месеца попут овог:

("April";"April";"April";"April";"May";"May";"May";"May";"May";"June";"June";"June";"June")

Функција ТЕКСТ испоручује овај низ функцији ИФ која је конфигурисана за филтрирање датума у ​​датом месецу тестирањем имена месеца према вредности у Г4 (мешовита референца, тако да се формула може копирати надоле и уназад):

IF(TEXT(date,"mmmm")=G$4,amount) // filter on month

Само износи у априлу опстају и пролазе кроз АКО; све остале вредности су ФАЛСЕ:

(10500;15200;18500;12500;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE)

Коначно, функција ЛАРГЕ користи вредност у Ф5 (такође мешовита референца) за враћање „н-те“ највеће вредности која остаје. У ћелији Г5, ЛАРГЕ враћа 18.500, „1.“ највећу вредност. Како се формула копира надоле и преко табеле, ЛАРГЕ функција враћа прва 3 износа у сваком од три месеца.

Сада када знамо највише 3 вредности сваког месеца, можемо да користимо ове информације као „кључ“ да бисмо дохватили име клијента за сваки.

2. део: преузимање имена клијената

Напомена: Ово је пример употребе ИНДЕКС-а и МАТЦХ-а са више критеријума. Ако вам је овај концепт нов, ево основног примера.

Да бисмо пронашли име повезано са три главне вредности у Г5: И7, користимо ИНДЕКС и МАТЦХ:

=INDEX(client,MATCH(1,(amount=G5)*(TEXT(date,"mmmm")=G$9),0))

Напомена: ово је формула низа и мора се унети са цонтрол + схифт + ентер, осим у програму Екцел 365.

Радећи изнутра, функција МАТЦХ је конфигурисана да користи логичку логику попут ове:

MATCH(1,(amount=G5)*(TEXT(date,"mmmm")=G$9),0)

Вредност претраживања је 1, а низ претраживања конструисан је са овим изразом:

(amount=G5)*(TEXT(date,"mmmm")=G$9)

Израз који ствара низ претраживања користи логичку логику за „филтрирање“ износа који (1) нису у априлу, а (2) нису вредности у Г5 (18.500). Резултат је низ од 1 и 0 као што је овај:

(0;0;1;0;0;0;0;0;0;0;0;0;0)

Са траженом вредношћу 1 и нулом за тип подударања (да би се форсирало тачно подударање), МАТЦХ враћа 3 директно у функцију ИНДЕКС:

=INDEX(client,3) // returns "Janus"

ИНДЕКС враћа трећу вредност у именованом клијенту опсега, "Јанус".

Како се формула копира надоле и преко табеле, враћа 3 најбоља клијента у сваком од три месеца.

Занимљиви Чланци...