Menu

Rumus AND, OR dan NOT di Excel dengan IF: Contoh

=AND(B2>=10,B2<=20) menghasilkan TRUE hanya jika semua kondisi benar, dan =OR(B2="North",B2="South") menghasilkan TRUE jika minimal satu kondisi benar. Pelajari AND, OR, NOT dan XOR, baik sendiri maupun di dalam IF, cara mengecek apakah angka ada di antara dua nilai, dan cara menulis AND dan OR di rumus array.

Setiap lembar kerja di halaman ini interaktif: ubah angka atau rumus, dan hasilnya langsung dihitung ulang.

=AND(B2>=50,C2>=50) menghasilkan TRUE hanya jika kedua kondisi benar. =OR(B2>=50,C2>=50) menghasilkan TRUE jika minimal salah satunya benar. Di dalam IF, keduanya mengubah dua kondisi menjadi satu uji: =IF(AND(B2>=50,C2>=50),"Pass","Fail").

Lulus kedua bagian, atau salah satunya
D2
ABCDE
1StudentExamProjectBoth 50+Either 50+
2Ana7264PassPass
3Ben4580FailPass
4Chloe5851PassPass
5Dan3842FailFail
6Eve9147FailPass
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Ben dan Eve lulus di satu bagian dan gagal di bagian lainnya, jadi mereka gagal di kolom D (AND) dan lulus di kolom E (OR). Dan gagal di keduanya, jadi ia gagal di kedua kolom. Ubah nilai ujian Ben di B3 menjadi 55 dan ia juga lulus di kolom D.

Fungsi AND

=AND(logical1, [logical2], ...)

AND menerima sampai 255 kondisi dan menghasilkan TRUE hanya jika semuanya bernilai TRUE. Satu FALSE saja sudah cukup untuk membuat hasilnya FALSE. Kalau dipakai sendiri, AND menampilkan TRUE atau FALSE di sel; di dalam IF, AND menentukan hasil mana yang dikembalikan IF.

Mengecek apakah angka ada di antara dua nilai

Excel tidak punya fungsi BETWEEN. Pakai AND dengan batas bawah dan batas atas:

Apakah suhunya masih dalam batas?
C2
ABCD
1SampleTempBetween 10 and 20Status
2S114TRUEOK
3S222FALSECheck
4S310TRUEOK
5S47FALSECheck
6S520TRUEOK
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

S3 dan S5 tepat berada di batas dan tetap dihitung masuk rentang, karena ujinya memakai >= dan <=. Untuk mengecualikan batasnya, pakai > dan <. Kalau batasnya disimpan di sel, =AND(B2>=$F$1,B2<=$F$2), kamu bisa mengubah rentangnya tanpa mengedit rumus. Uji seperti 10<=B2<=20 tidak berfungsi di Excel: Excel membandingkan 10<=B2 (TRUE atau FALSE) dengan 20, dan Excel menempatkan TRUE dan FALSE di atas semua angka, jadi hasilnya selalu FALSE.

Fungsi OR

=OR(logical1, [logical2], ...)

OR menghasilkan TRUE jika minimal satu kondisi bernilai TRUE, dan FALSE hanya jika semuanya bernilai FALSE. Ini cara yang umum untuk menerima beberapa nilai teks:

Zona berdasarkan wilayah
C2
ABC
1OrderRegionZone
21001NorthZone 1
31002EastZone 2
41003SouthZone 1
51004WestZone 2
61005southZone 1
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Perbandingan teks tidak membedakan huruf besar dan kecil, jadi south dengan huruf kecil juga masuk Zone 1. Untuk daftar panjang nilai yang diterima, =OR(B2={"North","South","Central"}) membandingkan B2 dengan setiap item konstanta array sekaligus.

NOT dan XOR

NOT membalik nilai logika: =NOT(TRUE) hasilnya FALSE. Fungsi ini enak dibaca kalau kondisi yang kamu punya adalah kebalikan dari yang kamu mau: =IF(NOT(C2="Done"),"Follow up","") sama dengan =IF(C2<>"Done","Follow up","").

XOR, yang tersedia sejak Excel 2013, adalah eksklusif atau: dengan dua kondisi, hasilnya TRUE jika tepat satu kondisi bernilai TRUE, dan FALSE jika keduanya TRUE atau keduanya FALSE. Dengan lebih banyak kondisi, hasilnya TRUE jika jumlah kondisi yang bernilai TRUE ganjil.

NOT dan XOR
D2
ABCDE
1TaskOwnerStatusOpenOne check only
2ReportAnaDoneFALSEFALSE
3BudgetBenOpenTRUEFALSE
4SlidesAnaOpenTRUETRUE
5SurveyBenDoneFALSETRUE
6PlanAnaDoneFALSEFALSE
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Kolom E bernilai TRUE untuk Slides (Ana tetapi belum Done) dan Survey (Done tetapi bukan Ana), dan FALSE jika kedua kondisi terpenuhi atau tidak ada yang terpenuhi.

AND dan OR bersama

Kondisi bisa disusun bertingkat: AND di dalam OR, atau OR di dalam AND. Seorang sales mendapat bonus jika ia berada di wilayah North dan entah menjual lebih dari 1.000 atau mendapat klien baru:

Aturan bonus
E2
ABCDE
1RepRegionSalesNew clientBonus
2AnaNorth1200NoBonus
3BenNorth700YesBonus
4ChloeSouth1500Yes
5DanNorth900No
6EveNorth1100YesBonus
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Ana (penjualan), Ben (klien baru), dan Eve (keduanya) mendapat bonus. Chloe memenuhi bagian OR tetapi berada di South, sedangkan Dan berada di North tetapi tidak memenuhi satu pun kondisi OR.

Latihan: gratis ongkir

Gratis ongkir
D2
ABCD
1OrderTotalMemberShipping
2100135Yes
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Giliranmu: Di D2, tampilkan "Free" jika total pesanan di B2 minimal 50 atau pelanggannya adalah member (C2 berisi "Yes"), selain itu tampilkan "Paid".

AND dan OR di rumus array: pakai * dan +

AND dan OR meringkas semua yang diberikan kepadanya menjadi satu TRUE atau FALSE. Itu yang kamu mau untuk satu baris, tetapi tidak saat rumus bekerja pada satu kolom penuh sekaligus: =AND(B2:B6="North",C2:C6>100) menghasilkan satu nilai untuk kelima baris sekaligus. Di rumus array (FILTER, SUMPRODUCT, SUM dengan kondisi), tulis kondisinya di dalam kurung lalu kalikan untuk AND dan jumlahkan untuk OR. TRUE dihitung sebagai 1 dan FALSE sebagai 0, jadi hasil perkalian bernilai 1 hanya jika keduanya benar, dan hasil penjumlahan minimal 1 jika salah satunya benar.

Menghitung dengan * dan +
F2
ABCDEF
1RepRegionSalesCount
2AnaNorth1200North and over 1,0002
3BenSouth700North or over 1,0004
4ChloeNorth900
5DanSouth1500
6EveNorth1100
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

F2 menghitung 2 baris (Ana dan Eve), F3 menghitung 4 (semua kecuali Ben). Di F3, >0 itu penting: baris yang memenuhi kedua kondisi menghasilkan jumlah 2, dan perbandingan tersebut mengubah setiap jumlah di atas 0 menjadi satu TRUE. Pola yang sama bisa menyaring baris, =FILTER(A2:C6,(B2:B6="North")*(C2:C6>1000)); untuk menghitung biasa dengan logika AND, COUNTIFS bisa melakukannya tanpa array: =COUNTIFS(B2:B6,"North",C2:C6,">1000"), lihat halaman COUNTIFS.

Pertanyaan yang sering diajukan

Bagaimana cara memakai IF dengan AND di Excel?

Taruh AND di bagian uji IF: =IF(AND(B2>=50,C2>=50),"Pass","Fail"). Hasilnya Pass hanya jika B2 dan C2 sama-sama 50 atau lebih.

Bagaimana cara mengecek apakah angka ada di antara dua nilai di Excel?

Pakai AND dengan dua perbandingan: =AND(B2>=10,B2<=20) menghasilkan TRUE untuk nilai berapa pun dari 10 sampai 20, termasuk keduanya. Di dalam IF: =IF(AND(B2>=10,B2<=20),"In range","Out of range").

Apa beda AND dan OR di Excel?

AND menghasilkan TRUE hanya jika semua kondisi bernilai TRUE. OR menghasilkan TRUE jika minimal satu kondisi bernilai TRUE. =AND(TRUE,FALSE) hasilnya FALSE, sedangkan =OR(TRUE,FALSE) hasilnya TRUE.

Kenapa AND tidak berfungsi di rumus FILTER atau SUMPRODUCT-ku?

AND dan OR meringkas seluruh rentang menjadi satu TRUE atau FALSE, bukan satu nilai per baris. Di rumus array, kalikan kondisinya untuk AND, (B2:B6="North")*(C2:C6>100), dan jumlahkan untuk OR.

Bisakah AND dan OR dipakai di rumus yang sama?

Bisa, taruh yang satu di dalam yang lain: =IF(AND(B2="North",OR(C2>1000,D2="Yes")),"Bonus","") mensyaratkan North ditambah salah satu dari penjualan di atas 1000 atau Yes di D2.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai