Excel formula: horizontālo datu filtrēšana -

Satura rādītājs

Vispārēja formula

=FILTER(data,logic)

Kopsavilkums

Lai filtrētu horizontāli kolonnās sakārtotus datus, varat izmantot funkciju FILTER. Parādītajā piemērā formula C9 ir:

=TRANSPOSE(FILTER(data,group="fox"))

kur dati (C4: L6) un grupa (C5: L5) ir nosaukti diapazoni.

Paskaidrojums

Piezīme: FILTER ir jauna dinamiskā masīva funkcija programmā Excel 365. Citās Excel versijās ir alternatīvas, taču tās ir sarežģītākas.

Diapazonā C4: L6 ir desmit datu kolonnas. Mērķis ir filtrēt šos horizontālos datus un iegūt tikai kolonnas (ierakstus), kur grupa ir "lapsa". Ērtības un lasāmības labad darblapā ir trīs nosauktie diapazoni: dati (C4: L6) un grupa (C5: L5) un vecums (C6: L6).

Funkciju FILTER var izmantot, lai iegūtu datus, kas sakārtoti vertikāli (rindās) vai horizontāli (kolonnās). FILTER atgriezīs atbilstošos datus tajā pašā orientācijā. Īpaša iestatīšana nav nepieciešama. Parādītajā piemērā formula C9 ir:

=FILTER(data,group="fox")

Strādājot no iekšpuses, FILTER iekļaut arguments ir loģisks izteiciens:

group="fox" // test for "fox"

Novērtējot loģisko izteiksmi, tā atgriež 10 TRUE un FALSE vērtību masīvu:

(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE)

Piezīme: komati (,) šajā masīvā norāda kolonnas. Semikoli (;) norādītu rindas.

Masīvā ir viena vērtība katrā kolonnā, un katra TRUE atbilst kolonnai, kurā grupa ir "lapsa". Šis masīvs tiek tieši atgriezts FILTER kā arguments arguments, un tas veic faktisko filtrēšanu:

FILTER(data,(TRUE,FALSE,TRUE,FALSE,FALSE,TRUE,TRUE,TRUE,TRUE,FALSE))

Tikai dati, kas atbilst TRUE vērtībām, iziet filtru, tāpēc FILTER atgriež 6 kolonnas, kurās grupa ir "lapsa". FILTER atgriež šos datus sākotnējā horizontālajā struktūrā. Tā kā FILTER ir dinamiska masīva funkcija, rezultāti izplūst diapazonā C9: H11.

Tas ir dinamisks risinājums - ja mainās kādi avota dati C4: L6, FILTER rezultāti tiek automātiski atjaunināti.

Transponēt vertikālā formātā

Lai rezultātus no filtra transponētu vertikālā (rindu) formātā, funkciju TRANSPOSE varat aptīt FILTER funkciju šādi:

=TRANSPOSE(FILTER(data,group="fox"))

Rezultāts izskatās šādi:

Šī formula ir sīkāk paskaidrota šeit.

Filtrējiet pēc vecuma

Datu filtrēšanai dažādos veidos var izmantot to pašu pamatformulu. Piemēram, lai filtrētu datus, lai rādītu tikai kolonnas, kuru vecums ir mazāks par 22 gadiem, varat izmantot šādu formulu:

=FILTER(data,age<22)

FILTER atgriež četras atbilstošās datu kolonnas:

Interesanti raksti...