Formula Excel: mai multe potriviri în listă separată prin virgule -

Cuprins

Formula generică

(=TEXTJOIN(", ",TRUE,IF(rng1=E5,rng2,"")))

rezumat

Pentru a căuta și a prelua mai multe potriviri într-o listă separată prin virgule (într-o singură celulă) puteți utiliza funcția IF cu funcția TEXTJOIN. În exemplul prezentat, formula din F5 este:

(=TEXTJOIN(", ",TRUE,IF(group=E5,name,"")))

Aceasta este o formulă matrice și trebuie introdusă cu control + shift + enter.

Această formulă utilizează intervalele denumite „nume” (B5: B11) și „grup” (C5: C11).

Explicaţie

Nucleul acestei formule este funcția IF, care „filtrează” numele din tabel după culoare astfel:

IF(group=E5,name,""))

Testul logic verifică fiecare celulă din intervalul numit „grup” pentru valoarea culorii în E5 (roșu în acest caz). Rezultatul este o matrice ca aceasta:

(FALSE;FALSE;TRUE;TRUE;FALSE;FALSE;TRUE)

Acest rezultat este folosit la rândul său pentru a filtra numele din intervalul denumit „nume”:

("Matt";"Sally";"Jude";"Aya";"Elle";"Linda";"George")

Pentru fiecare ADEVĂRAT, numele supraviețuiește, pentru fiecare FALS, IF returnează un șir gol ("").

Rezultatul aspectului IF este această matrice:

("";"";"Jude";"Aya";"";"";"George")

care intră în funcția TEXTJOIN ca text1.

TEXTJOIN este configurat pentru a utiliza o virgulă ca delimitator și pentru a ignora valorile goale. Rezultatul final este acest șir de text:

"Jude, Aya, George"

Condiții multiple

Nu puteți utiliza funcțiile ȘI ȘI SAU într-o formulă de matrice ca aceasta, deoarece acestea returnează doar un singur rezultat. Puteți utiliza logica booleană astfel pentru ȘI:

=TEXTJOIN(", ",TRUE,IF((condition1)*(condition2),name,""))

Explicat mai detaliat aici.

Articole interesante...