Rumus Excel: FILTER dengan beberapa kriteria kompleks -

Daftar Isi

Ringkasan

Untuk memfilter dan mengekstrak data berdasarkan beberapa kriteria kompleks, Anda dapat menggunakan fungsi FILTER dengan rangkaian ekspresi yang menggunakan logika boolean. Pada contoh yang ditunjukkan, rumus di G5 adalah:

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4))

Rumus ini mengembalikan data di mana:

akun dimulai dengan "x" DAN wilayah adalah "timur", dan bulan BUKAN April.

Penjelasan

Dalam contoh ini, kita perlu membuat logika yang memfilter data untuk menyertakan:

akun dimulai dengan "x" DAN wilayah adalah "timur", dan bulan BUKAN April.

Logika pemfilteran rumus ini (argumen penyertaan) dibuat dengan merangkai tiga ekspresi yang menggunakan logika boolean pada array dalam data. Ekspresi pertama menggunakan fungsi LEFT untuk menguji apakah Akun dimulai dengan "x":

LEFT(B5:B16)="x" // account begins with "x"

Hasilnya adalah larik nilai TRUE FALSE seperti ini:

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

Ekspresi kedua menguji jika Region adalah "east" dengan operator sama dengan (=):

C5:C16="east" // region is east

Hasilnya adalah larik lain:

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

Ekspresi ketiga menggunakan fungsi MONTH dengan fungsi NOT untuk menguji apakah bulan tersebut bukan April:

NOT(MONTH(D5:D16)=4) // month is not april

yang menghasilkan:

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

Perhatikan bahwa fungsi NOT membalikkan hasil dari ekspresi MONTH.

Ketiga larik dikalikan bersama. Operasi matematika memaksa nilai TRUE dan FALSE menjadi 1 dan 0, jadi pada titik ini kita dapat memvisualisasikan argumen include seperti ini:

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

Perkalian Boolean sesuai dengan fungsi logika AND, jadi hasil akhirnya berupa larik tunggal seperti ini:

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

Fungsi FILTER menggunakan larik ini untuk memfilter data, dan mengembalikan empat baris yang sesuai dengan angka 1 dalam larik.

Memperluas kriteria

Ekspresi yang digunakan untuk membuat argumen penyertaan dalam filter dapat diperpanjang sesuai kebutuhan untuk menangani filter yang lebih kompleks. Misalnya, untuk memfilter lebih lanjut data agar hanya menyertakan baris dengan jumlah> 10000, Anda dapat menggunakan rumus seperti ini:

=FILTER(B5:E16,(LEFT(B5:B16)="x")*(C5:C16="east")*NOT(MONTH(D5:D16)=4)*(E5:E16>10000))

Artikel yang menarik...