ikuti Saluran WhatsApp Rumahdisolo.com. Klik WhatsApp

Gabungkan Rumus AND, OR, NOT Dengan Mudah

Pelajari cara menggabungkan rumus AND, OR, NOT di Excel dengan mudah. Tingkatkan produktivitas Anda sekarang, klik untuk baca panduan lengkap!

Kalau kamu mau bikin spreadsheet yang pintar, nggak cukup cuma tahu `SUM` atau `AVERAGE`.

Kamu juga harus bisa bikin aturan: kalau A dan B terpenuhi, lakukan X; kalau C atau D terpenuhi, lakukan Y; kalau bukan itu, lakukan Z.

Di Excel dan Google Sheets, aturan-aturan itu dibuat pakai fungsi logika: AND, OR, dan NOT — biasanya digabungin sama IF, IFS, SWITCH, atau fungsi bantu lain.

Artikel ini bakal jelasin cara gabungin `AND`, `OR`, dan `NOT` secara lengkap, praktis, dan mudah dipahami.

Gaya santai, paragraf pendek, banyak contoh nyata, tabel, rumus siap-copas, dan latihan supaya kamu langsung paham.

Cocok buat pelajar, mahasiswa, atau siapa saja yang pengin kerjaan spreadsheetnya lebih cerdas.


Ringkasan singkat (apa yang bakal kamu dapat)

  • Penjelasan fungsi `AND`, `OR`, `NOT` dan tabel kebenaran.
  • Cara pakai bersama `IF` — pola-pola umum.
  • Contoh lengkap: penilaian sekolah, diskon toko online, penentuan bonus HR, validasi data, scoring kredit.
  • Trik lanjutan: `IFS`, `SWITCH(TRUE,...)`, `LET`, `ARRAYFORMULA`, `REGEX`.
  • Best practice: helper columns, sanitasi data, debugging.
  • Latihan + jawaban untuk cek kemampuanmu.

1. Apa itu AND, OR, NOT? (konsep dasar)

  • AND: `=AND(kondisi1, kondisi2, ...)``TRUE` hanya jika semua kondisi bernilai `TRUE`.
  • OR: `=OR(kondisi1, kondisi2, ...)``TRUE` jika salah satu (atau lebih) kondisi bernilai `TRUE`.
  • NOT: `=NOT(kondisi)` → Mengembalikan kebalikan kondisi (`TRUE``FALSE`, `FALSE``TRUE`).

Ketiga fungsi ini mengembalikan nilai boolean (`TRUE`/`FALSE`) dan umumnya dipakai di dalam `IF` untuk membuat keputusan yang lebih kompleks.


2. Tabel kebenaran (truth table) — gampang dipahami

A B AND(A,B) OR(A,B) NOT(A)
TRUE TRUE TRUE TRUE FALSE
TRUE FALSE FALSE TRUE FALSE
FALSE TRUE FALSE TRUE TRUE
FALSE FALSE FALSE FALSE TRUE

Analogi cepat:

  • `AND` = semua harus ikut pesta supaya pesta jalan.
  • `OR` = asal satu teman datang, pesta tetap jalan.
  • `NOT` = kebalikan.

3. Pola dasar gabungan dengan IF (paling sering dipakai)

Berikut pola-pola praktis yang sering muncul:

3.1 IF + AND (semua syarat harus terpenuhi)

Contoh: "Lulus kalau nilai ≥ 75 dan kehadiran ≥ 80%"

=IF(AND(B2>=75, C2>=0.8), "Lulus", "Tidak Lulus")

3.2 IF + OR (cukup salah satu syarat)

Contoh: "Dapat diskon kalau VIP atau total > 1.000.000"
=IF(OR(B2="VIP", C2>1000000), "Diskon", "No Diskon")

3.3 IF + NOT (pengecualian)

Contoh: "Proses kalau status bukan 'Cancel'"
=IF(NOT(A2="Cancel"), "Proses", "Batal")

3.4 Gabungan AND dan OR

Contoh: "Bonus kalau (VIP dan total ≥ 5 juta) atau (non-VIP tapi total ≥ 10 juta)"

=IF(OR(AND(B2="VIP", C2>=5000000), AND(B2<>"VIP", C2>=10000000)), "Bonus", "No Bonus")

Kunci: pikirkan dulu aturan dalam kata, lalu ubah jadi logika.


4. Contoh nyata lengkap — tabel + rumus (siap pakai)

4.1 Studi kasus — Kelulusan Sekolah (lengkap)

Aturan:
  • Lulus Istimewa: nilai ≥ 90 dan kehadiran = 100%
  • Lulus: nilai ≥ 75 dan kehadiran ≥ 80%
  • Remedial: nilai ≥ 60 dan kehadiran ≥ 70%
  • Tidak Lulus: lainnya
Data contoh:
Nama Nilai Kehadiran
Andi 92 100%
Budi 78 85%
Citra 65 70%
Dedi 58 75%
Evi 70 65%
Rumus (pakai IFS biar rapi):
=IFS(
  AND(B2>=90, C2=1), "Lulus Istimewa",
  AND(B2>=75, C2>=0.8), "Lulus",
  AND(B2>=60, C2>=0.7), "Remedial",
  TRUE, "Tidak Lulus"
)
Catatan: Jika `C2` berformat persen tampilan, `C2=1` berarti 100%. Kalau kolom kehadiran berupa teks seperti "100%", gunakan `VALUE(SUBSTITUTE(C2,"%",""))/100`.

4.2 Studi kasus — Diskon di Toko Online

Aturan:
  • VIP + belanja ≥ 5.000.000 → diskon 20%
  • Non-VIP + belanja ≥ 10.000.000 → diskon 15%
  • Member loyalty (points ≥ 1000) → diskon 10%
  • Promo item → tambahan 5% (stackable)
  • Maks diskon cap = 30%
Data contoh:
Nama Total Status Points PromoItem
Ani 6,000,000 VIP 200 No
Bayu 12,000,000 NonVIP 4,000 Yes
Cinta 1,500,000 Member 1,200 No
Langkah rumus:
  1. Diskon dasar:
  2. F2 = IF(AND(C2="VIP", B2>=5000000), 0.20,
          IF(AND(C2<>"VIP", B2>=10000000), 0.15,
          IF(D2>=1000, 0.10, 0)))
  3. Tambahan promo:
  4. G2 = IF(E2="Yes", 0.05, 0)
  5. Total diskon dengan cap:
  6. H2 = MIN(F2 + G2, 0.30)i
  7. Harga akhir:
  8. I2 = B2 * (1 - H2)

4.3 Studi kasus — Bonus Karyawan (HR)

Aturan:
  • Bonus 10 juta jika penjualan > 100 juta dan masa kerja ≥ 3 tahun dan rating ≥ 4.5
  • Bonus 5 juta jika penjualan > 50 juta atau masa kerja ≥ 5 tahun
  • Tambahan 1 juta jika tidak pernah cuti (cuti=0)
Data contoh:
Nama Sales Years Rating Cuti
Andy 120,000,000 4 4.7 0
Bella 60,000,000 6 4.2 1
Caca 30,000,000 2 4.8 0
Rumus:
=IF(AND(B2>100000000, C2>=3, D2>=4.5), 10000000,
 IF(OR(B2>50000000, C2>=5), 5000000, 0)) + IF(E2=0, 1000000, 0)

4.4 Studi kasus — Kelayakan Kredit (scoring berdasarkan poin)

Aturan:
  • Income ≥ 10 juta → +30 poin
  • Age 21–60 → +20 poin
  • Good history → +30 poin
  • Dependents < 3 → +20 poin
  • Total ≥ 70 → Layak

Data contoh:
Nama Income Age History Dependents
Andi 12,000,000 32 Baik 1
Budi 6,000,000 45 Buruk 4
Citra 10,000,000 21 Baik 2
Helper columns (lebih aman & rapi):
  • `IncomeScore`: `=IF(B2>=10000000, 30, 0)`
  • `AgeScore`: `=IF(AND(C2>=21,C2<=60), 20, 0)`
  • `HistoryScore`: `=IF(D2="Baik", 30, 0)`
  • `DependScore`: `=IF(E2<3 0="" 20="" li="">

Total dan keputusan:

=IF(SUM(F2:I2)>=70, "Layak", "Tidak Layak")

5. Trik lanjutan dan pola yang sering dipakai

5.1 Pakai `IFS` atau `SWITCH(TRUE, ...)` untuk readability

Jika banyak kondisi bertingkat, `IFS` atau `SWITCH(TRUE, ...)` sering lebih bersih daripada nested `IF`.

IFS contoh:
=IFS(AND(B2>=90,C2=1),"Istimewa",
     AND(B2>=75,C2>=0.8),"Lulus",
     AND(B2>=60,C2>=0.7),"Remedial",
     TRUE,"Tidak Lulus")
SWITCH(TRUE, ...) contoh:
=SWITCH(TRUE, B2>=90,"A", B2>=80,"B", B2>=70,"C", TRUE,"D")

5.2 Sanitasi input dulu: TRIM, VALUE, UPPER

Selalu normalisasi input. Contoh:

=IF(AND(VALUE(TRIM(B2))>=75, VALUE(TRIM(C2))>=0.8),"Lulus","Periksa Input")

Untuk teks status:

=IF(UPPER(TRIM(A2))="VIP", "VIP", "LAIN")

5.3 Gunakan helper columns untuk kompleksitas

Buat kolom terpisah untuk: validasi, scoring, flags. Ini membantu debugging dan performa.

5.4 ARRAY/Vectorization (Google Sheets & Excel dynamic arrays)

Google Sheets `ARRAYFORMULA`:

=ARRAYFORMULA(IF((B2:B>=75)*(C2:C>=0.8), "Lulus","Tidak Lulus"))

Catatan: `(cond1)*(cond2)` mensimulasikan `AND` secara vektor.

Excel 365 dynamic array:

=IF((B2:B100>=75)*(C2:C100>=0.8), "Lulus", "Tidak Lulus")

5.5 Gabung dengan REGEX (Google Sheets) untuk validasi teks

Validasi email:

=REGEXMATCH(A2, "^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$")

6. Best practice — biar formula stabil & gampang dimodifikasi

  1. Tulis aturan dulu di kertas (flowchart atau if-then-else).
  2. Normalisasi data: TRIM, SUBSTITUTE(CHAR(160)," ") untuk spasi aneh.
  3. Gunakan helper columns untuk setiap langkah penting (score, valid, flag).
  4. Tambahkan default di `IFS`/`SWITCH` (`TRUE,"Default"`).
  5. Jangan buat 20 nested IF — kalau banyak rules, buat table lookup.
  6. Dokumentasikan logika di sheet README supaya tim ngerti.
  7. Uji dengan edge cases: kosong, tipe salah, batas nilai.

7. Debugging: masalah umum & solusi cepat

  • Rumus selalu FALSE → cek tipe data (text vs number). Pakai `ISNUMBER`, `VALUE`.
  • Spasi tersembunyi`TRIM(SUBSTITUTE(A2,CHAR(160)," "))`.
  • Case-sensitive mismatch`UPPER()`/`LOWER()` sebelum compare.
  • IFS tanpa default → tambahkan `TRUE,"..."`.
  • Performa lambat → pindah ke helper columns atau Power Query untuk data besar.

8. Latihan (soal + jawaban) — latihan supaya nempel

Soal 1

Buat rumus yang menampilkan “Eligible” jika `Role="Student"` dan (`Score>=80` atau `Attendance>=90%`).

Jawaban:
=IF(AND(A2="Student", OR(B2>=80, C2>=0.9)), "Eligible", "Not Eligible")

Soal 2

Badge program:

  • Gold: points ≥1000 dan purchases ≥20
  • Silver: points ≥500 atau purchases ≥10
  • Bronze: lainnya
Jawaban:
=IF(AND(B2>=1000, C2>=20), "Gold",
 IF(OR(B2>=500, C2>=10), "Silver", "Bronze"))

Soal 3

Validasi email (Google Sheets): tampilkan “Cek” kalau panjang <5 atau="" b="" else="" mengandung="" tidak=""> Jawaban:
=IF(OR(LEN(TRIM(A2))<5 ek="" not="" pre="">

9. Mini project: buat sistem penilaian otomatis (step-by-step)

Tujuan: Dari data mentah, bikin kolom: `score_total`, `grade`, `status`, `flag`. Data mentah:
NIS Nama Teori Praktik Tugas Kehadiran
Langkah:
  1. `score_total`:
  2. =0.5*C2 + 0.3*D2 + 0.2*E2
  3. `grade`:
  4. =IFS(G2>=90,"A", G2>=80,"B", G2>=70,"C", G2>=60,"D", TRUE,"E")
  5. `status` (lulus):
  6. =IF(AND(G2>=75, F2>=0.8), "Lulus", "Tidak Lulus")
  7. `flag` alasan tidak lulus:
  8. =IF(NOT(I2="Lulus"),
       IF(G2<75 bsensi="" eriksa="" if="" ilai="" kurang="" pre="">
    
  9. Conditional formatting: warna merah untuk `Tidak Lulus` atau `Nilai < 60`.

10. Ringkasan cepat & langkah mulai praktik

Langkah praktis:

  1. Tuliskan aturan dalam bahasa biasa.
  2. Normalisasi data (TRIM, VALUE, UPPER).
  3. Bikin helper columns.
  4. Tulis rumus utama gabungan `IF + AND/OR/NOT`.
  5. Uji edge-case.
  6. Dokumentasikan.

Praktekkan contoh-contoh di atas di file kamu. Mulai dari yang sederhana lalu naik ke kasus kompleks. Kalau sudah paham pola `AND` = semua, `OR` = salah satu, `NOT` = kebalikan, kamu bisa bikin logika apa pun di spreadsheet.

Selamat ngoprek — semoga semua rumus ini langsung ngebantu kerjaan sekolah atau proyekmu!

Siswi SMK Muhammadiyah 1 sukoharjo yang cerdas, Bersemangat, dan Berintegritas. Profil Lengkap saya