Sintaks FILTER (kondisi ATAU kondisi)?


32

Saya menggunakan FILTER()untuk menampilkan nilai dari Sheet 2 di mana Namekolom cocok.

Masalah saya adalah di mana saya inginkan:

=FILTER(Sheet2!A:F, Sheet2!A:A="Combat Medic" OR Sheet2!A:A="Universal")

karena ORmenghasilkan kesalahan.

Apa sintaks yang benar?
Haruskah saya menggunakan yang QUERY()bukan?


1
Anda mungkin juga menemukan ini berguna: Google Spreadsheets: Filter rentang dengan array
Vidar S. Ramdal

Jawaban:


43

Gunakan rumus berikut untuk mendapatkan kueri yang Anda inginkan.

Rumus

=FILTER(A:A;(A:A="Combat Medic")+(A:A="Universal"))

Dijelaskan

Dalam referensi dijelaskan oleh Ahab bahwa +dan *dapat digunakan sebagai ekspresi boolean, seperti ORdan AND.

Solusi dengan IFERROR(lihat riwayat revisi) tidak ada gunanya dalam kasus ini, kecuali jika Anda ingin menemukan string tertentu:

=FILTER(Sheet2!A:F;IFERROR(FIND("Combat";A:A);0) + IFERROR(FIND("Uni";A:A);0))

Di sini IFERRORmengembalikan 0ketika tidak ada yang ditemukan, menyebabkan rumus masih berfungsi.

Tangkapan layar

masukkan deskripsi gambar di sini

Contoh

Saya telah memodifikasi file contoh untuk berisi kedua solusi: Filter dengan Boolean

Referensi

Forum Produk Google, Ekspresi Boolean


Menarik! Bisakah Anda menguraikan cara IFERROR(...) + IFERROR(...) kerjanya?
Vidar S. Ramdal

dimanakah dokumentasi yang '+' dapat digunakan sebagai boolean OR?
Chris Morris


@JacobJanTuinstra Terima kasih Jacob. Apakah ada dokumentasi resmi?
Chris Morris

-1

=FILTER(A:F, REGEXMATCH(A:A, "Combat Medic|Universal"))

0


=QUERY(A:F, " where A matches 'Combat Medic|Universal'", 0)

0

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.