Fungsi Excel IF dengan pelbagai syarat

  • Berkongsi Ini
Michael Brown

Tutorial menunjukkan cara mencipta berbilang penyataan IF dalam Excel dengan DAN serta logik ATAU. Selain itu, anda akan belajar cara menggunakan IF bersama-sama dengan fungsi Excel yang lain.

Dalam bahagian pertama tutorial Excel IF kami, kami melihat cara membina pernyataan IF mudah dengan satu syarat untuk teks, nombor, tarikh, kosong dan bukan kosong. Walau bagaimanapun, untuk analisis data yang berkuasa, anda mungkin perlu menilai berbilang keadaan pada satu masa. Contoh formula di bawah akan menunjukkan kepada anda cara paling berkesan untuk melakukan ini.

    Cara menggunakan fungsi IF dengan berbilang syarat

    Pada dasarnya, terdapat dua jenis Formula JIKA dengan berbilang kriteria berdasarkan logik DAN / ATAU . Akibatnya, dalam ujian logik formula IF anda, anda harus menggunakan salah satu fungsi ini:

    • Fungsi DAN - mengembalikan BENAR jika semua syarat dipenuhi; FALSE sebaliknya.
    • OR fungsi - mengembalikan TRUE jika mana-mana syarat tunggal dipenuhi; FALSE sebaliknya.

    Untuk menggambarkan perkara ini dengan lebih baik, mari kita siasat beberapa contoh formula kehidupan sebenar.

    Pernyataan Excel IF dengan berbilang syarat (DAN logik)

    formula generik Excel IF dengan dua atau lebih syarat ialah ini:

    IF(AND( condition1, condition2, …), value_if_true, value_if_false)

    Diterjemahkan kepada manusia bahasa, formula mengatakan: Jika keadaan 1 adalah benar DAN keadaan 2 adalah benar, kembali nilai_jika_benar ; else return value_if_false .

    Andaikan anda mempunyai jadual yang menyenaraikan markah dua ujian dalam lajur B dan C. Untuk lulus peperiksaan akhir, pelajar mesti mempunyai kedua-dua markah lebih daripada 50.

    Untuk ujian logik, anda menggunakan pernyataan AND berikut: AND(B2>50, C2>50)

    Jika kedua-dua syarat adalah benar, formula akan mengembalikan "Lulus"; jika mana-mana syarat adalah palsu - "Gagal".

    =IF(AND(B2>50, B2>50), "Pass", "Fail")

    Mudah, bukan? Tangkapan skrin di bawah membuktikan bahawa formula Excel IF /AND kami berfungsi dengan betul:

    Dengan cara yang sama, anda boleh menggunakan fungsi Excel IF dengan berbilang keadaan teks .

    Untuk contoh, untuk mengeluarkan "Baik" jika kedua-dua B2 dan C2 lebih besar daripada 50, "Buruk" jika tidak, formulanya ialah:

    =IF(AND(B2="pass", C2="pass"), "Good!", "Bad")

    Nota penting! Fungsi AND menyemak semua syarat , walaupun yang telah diuji dinilai sebagai FALSE. Tingkah laku sedemikian agak luar biasa kerana dalam kebanyakan bahasa pengaturcaraan, keadaan berikutnya tidak diuji jika mana-mana ujian sebelumnya telah mengembalikan SALAH.

    Dalam amalan, pernyataan IF yang kelihatan betul mungkin mengakibatkan ralat kerana ini kekhususan. Sebagai contoh, formula di bawah akan mengembalikan #DIV/0! (ralat "bahagi dengan sifar") jika sel A2 sama dengan 0:

    =IF(AND(A20, (1/A2)>0.5),"Good", "Bad")

    Untuk mengelakkan ini, anda harus menggunakan fungsi IF bersarang:

    =IF(A20, IF((1/A2)>0.5, "Good", "Bad"), "Bad")

    Untuk maklumat lanjut, sila lihat formula IF DAN dalam Excel.

    Fungsi Excel IF dengan berbilangsyarat (OR logik)

    Untuk melakukan satu perkara jika sebarang syarat dipenuhi, jika tidak lakukan sesuatu yang lain, gunakan gabungan fungsi IF dan OR ini:

    IF(OR( condition1 , condition2 , …), value_if_true, value_if_false)

    Perbezaan daripada formula IF / AND yang dibincangkan di atas ialah Excel mengembalikan TRUE jika mana-mana syarat yang dinyatakan adalah benar.

    Jadi, jika dalam formula sebelumnya, kami menggunakan OR bukannya DAN:

    =IF(OR(B2>50, B2>50), "Pass", "Fail")

    Maka sesiapa yang mempunyai lebih daripada 50 mata dalam mana-mana peperiksaan akan mendapat "Lulus" dalam lajur D. Dengan syarat sedemikian, pelajar kami mempunyai peluang yang lebih baik untuk lulus peperiksaan akhir (Yvette bernasib malang gagal dengan hanya 1 mata :)

    Petua. Sekiranya anda mencipta penyataan IF berbilang dengan teks dan menguji nilai dalam satu sel dengan logik OR (iaitu sel boleh menjadi "ini" atau "itu"), maka anda boleh membina yang lebih padat formula menggunakan pemalar tatasusunan.

    Contohnya, untuk menandakan jualan sebagai "ditutup" jika sel B2 sama ada "dihantar" atau "dibayar", formulanya ialah:

    =IF(OR(B2={"delivered", "paid"}), "Closed", "")

    Lebih banyak contoh formula boleh didapati dalam fungsi Excel IF OR.

    IF dengan berbilang AND & OR pernyataan

    Jika tugas anda memerlukan penilaian beberapa set berbilang syarat, anda perlu menggunakan kedua-dua DAN & ATAU berfungsi pada satu masa.

    Dalam jadual sampel kami, katakan anda mempunyai kriteria berikut untuk menyemak keputusan peperiksaan:

    • Syarat 1:peperiksaan1>50 dan peperiksaan2>50
    • Syarat 2: peperiksaan1>40 dan peperiksaan2>60

    Jika salah satu syarat dipenuhi, peperiksaan akhir dianggap lulus.

    Pada pandangan pertama, formula itu kelihatan agak rumit, tetapi sebenarnya tidak! Anda hanya nyatakan setiap syarat di atas sebagai pernyataan AND dan sarangkannya dalam fungsi OR (kerana ia tidak perlu untuk memenuhi kedua-dua syarat, sama ada sudah memadai):

    OR(AND(B2>50, C2>50), AND(B2>40, C2>60)

    Kemudian, gunakan fungsi OR untuk ujian logik IF dan membekalkan nilai value_if_true dan value_if_false yang dikehendaki. Hasilnya, anda mendapat formula IF berikut dengan berbilang syarat DAN / ATAU:

    =IF(OR(AND(B2>50, C2>50), AND(B2>40, C2>60), "Pass", "Fail")

    Tangkapan skrin di bawah menunjukkan bahawa kami telah melakukan formula dengan betul:

    Secara semula jadi , anda tidak terhad kepada menggunakan hanya dua fungsi DAN/ATAU dalam formula IF anda. Anda boleh menggunakan seberapa banyak daripada mereka mengikut logik perniagaan anda, dengan syarat:

    • Dalam Excel 2007 dan lebih tinggi, anda mempunyai tidak lebih daripada 255 argumen dan jumlah panjang formula IF tidak melebihi 8,192 aksara.
    • Dalam Excel 2003 dan lebih rendah, tidak ada lebih daripada 30 argumen dan jumlah panjang formula IF anda tidak melebihi 1,024 aksara.

    Pernyataan IF bersarang ke semak berbilang ujian logik

    Jika anda ingin menilai berbilang ujian logik dalam satu formula, maka anda boleh menyusun beberapa fungsi satu sama lain. Fungsi sedemikian dipanggil bersarangIF berfungsi . Ia terbukti amat berguna apabila anda ingin mengembalikan nilai yang berbeza bergantung pada keputusan ujian logik.

    Berikut ialah contoh biasa: katakan anda ingin melayakkan pencapaian pelajar sebagai " Baik ", " Memuaskan " dan " Lemah " berdasarkan markah berikut:

    • Baik: 60 atau lebih (>=60)
    • Memuaskan: antara 40 dan 60 (>40 dan <60)
    • Lemah: 40 atau kurang (<=40)

    Sebelum menulis formula, pertimbangkan susunan fungsi yang akan anda sarangkan. Excel akan menilai ujian logik mengikut susunan ia muncul dalam formula. Sebaik sahaja keadaan dinilai kepada TRUE, syarat berikutnya tidak diuji, bermakna formula berhenti selepas keputusan TRUE pertama.

    Dalam kes kami, fungsi disusun daripada terbesar kepada terkecil:

    =IF(B2>=60, "Good", IF(B2>40, "Satisfactory", "Poor"))

    Sememangnya, anda boleh menyusun lebih banyak fungsi jika diperlukan (sehingga 64 dalam versi moden).

    Untuk mendapatkan maklumat lanjut, sila lihat Cara menggunakan berbilang penyataan IF bersarang dalam Excel.

    Formula tatasusunan Excel IF dengan berbilang syarat

    Cara lain untuk mendapatkan Excel IF untuk diuji berbilang syarat adalah dengan menggunakan formula tatasusunan.

    Untuk menilai keadaan dengan logik AND, gunakan asterisk:

    IF( condition1 ) * ( condition2 ) * …, value_if_true, value_if_false)

    Untuk menguji keadaan dengan logik OR, gunakan tanda tambah:

    IF( condition1 ) + ( condition2 ) + …,value_if_true, value_if_false)

    Untuk melengkapkan formula tatasusunan dengan betul, tekan kekunci Ctrl + Shift + Enter bersama-sama. Dalam Excel 365 dan Excel 2021, ini juga berfungsi sebagai formula biasa kerana sokongan untuk tatasusunan dinamik.

    Sebagai contoh, untuk mendapatkan "Pass" jika kedua-dua B2 dan C2 lebih besar daripada 50, formulanya ialah:

    =IF((B2>50) * (C2>50), "Pass", "Fail")

    Dalam Excel 365 saya, formula biasa berfungsi dengan baik (seperti yang anda boleh lihat dalam tangkapan skrin di atas). Dalam Excel 2019 dan lebih rendah, ingat untuk menjadikannya formula tatasusunan dengan menggunakan pintasan Ctrl + Shift + Enter.

    Untuk menilai berbilang keadaan dengan logik OR, formulanya ialah:

    =IF((B2>50) + (C2>50), "Pass", "Fail")

    Menggunakan IF bersama-sama dengan fungsi lain

    Bahagian ini menerangkan cara menggunakan IF dalam kombinasi dengan fungsi Excel lain dan apakah faedah yang diberikan oleh ini kepada anda.

    Contoh 1. Jika #N /Ralat dalam VLOOKUP

    Apabila VLOOKUP atau fungsi carian lain tidak dapat mencari sesuatu, ia mengembalikan ralat #N/A. Untuk menjadikan jadual anda kelihatan lebih bagus, anda boleh mengembalikan sifar, kosong atau teks tertentu jika #N/A. Untuk ini, gunakan formula generik ini:

    IF(ISNA(VLOOKUP(…)), value_if_na , VLOOKUP(…))

    Contohnya:

    If #N/ Pulangan 0:

    Jika nilai carian dalam E1 tidak ditemui, formula mengembalikan sifar.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), 0, VLOOKUP(E1, A2:B10, 2, FALSE))

    Jika #N/A kembalikan kosong:

    Jika nilai carian tidak ditemui, formula tidak mengembalikan apa-apa (rentetan kosong).

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "", VLOOKUP(E1, A2:B10, 2, FALSE))

    Jika #N/A mengembalikan teks tertentu:

    Jika nilai carian tidak dijumpai, theformula mengembalikan teks tertentu.

    =IF(ISNA(VLOOKUP(E1, A2:B10, 2,FALSE )), "Not found", VLOOKUP(E1, A2:B10, 2, FALSE))

    Untuk lebih banyak contoh formula, sila lihat VLOOKUP dengan pernyataan IF dalam Excel.

    Contoh 2. IF dengan SUM, AVERAGE, MIN dan MAX functions

    Untuk menjumlahkan nilai sel berdasarkan kriteria tertentu, Excel menyediakan fungsi SUMIF dan SUMIFS.

    Dalam sesetengah situasi, logik perniagaan anda mungkin memerlukan memasukkan fungsi SUM dalam ujian logik IF. Contohnya, untuk mengembalikan label teks yang berbeza bergantung pada jumlah nilai dalam B2 dan C2, formulanya ialah:

    =IF(SUM(B2:C2)>130, "Good", IF(SUM(B2:C2)>110, "Satisfactory", "Poor"))

    Jika jumlahnya lebih besar daripada 130, hasilnya adalah "baik "; jika lebih daripada 110 – "memuaskan', jika 110 atau lebih rendah – "lemah".

    Dengan cara yang sama, anda boleh membenamkan fungsi AVERAGE dalam ujian logik IF dan mengembalikan label yang berbeza berdasarkan skor purata :

    =IF(AVERAGE(B2:C2)>65, "Good", IF(AVERAGE(B2:C2)>55, "Satisfactory", "Poor"))

    Dengan mengandaikan jumlah skor dalam lajur D, anda boleh mengenal pasti nilai tertinggi dan terendah dengan bantuan fungsi MAX dan MIN:

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    =IF(D2=MAX($D$2:$D$10), "Best result", "")

    Untuk mempunyai kedua-dua label dalam satu lajur, sarangkan fungsi di atas antara satu sama lain:

    =IF(D2=MAX($D$2:$D$10), "Best result", IF(D2=MIN($D$2:$D$10), "Worst result", ""))

    Begitu juga, anda boleh menggunakan IF bersama dengan tersuai anda fungsi. Contohnya, anda boleh menggabungkannya dengan GetCellColor atau GetCellFontColor untuk mengembalikan hasil yang berbeza berdasarkan warna sel.

    Selain itu, Excel menyediakan beberapa fungsi untuk mengira data berdasarkan syarat. Untuk contoh formula terperinci, sila semak perkara berikuttutorial:

    • COUNTIF - mengira sel yang memenuhi syarat
    • COUNTIFS - mengira sel dengan berbilang kriteria
    • SUMIF - menjumlahkan sel secara bersyarat
    • SUMIFS - jumlah sel dengan berbilang kriteria

    Contoh 3. JIKA dengan ISNUMBER, ISTEXT dan ISBLANK

    Untuk mengenal pasti teks, nombor dan sel kosong, Microsoft Excel menyediakan fungsi khas seperti ISTEXT, ISNUMBER dan ISBLANK. Dengan meletakkannya dalam ujian logik bagi tiga pernyataan IF bersarang, anda boleh mengenal pasti semua jenis data yang berbeza sekali gus:

    =IF(ISTEXT(A2), "Text", IF(ISNUMBER(A2), "Number", IF(ISBLANK(A2), "Blank", "")))

    Contoh 4. IF dan CONCATENATE

    Kepada keluarkan hasil IF dan beberapa teks ke dalam satu sel, gunakan CONCATENATE atau CONCAT (dalam Excel 2016 - 365) dan fungsi IF bersama-sama. Contohnya:

    =CONCATENATE("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))

    =CONCAT("You performed ", IF(B1>100,"fantastic!", IF(B1>50, "well", "poor")))

    Melihat tangkapan skrin di bawah, anda hampir tidak memerlukan sebarang penjelasan tentang perkara yang dilakukan oleh formula:

    JIKA ISERROR / Formula ISNA dalam Excel

    Versi moden Excel mempunyai fungsi khas untuk memerangkap ralat dan menggantikannya dengan pengiraan lain atau nilai pratakrif - IFERROR (dalam Excel 2007 dan lebih baharu) dan IFNA (dalam Excel 2013 dan lebih baharu). Dalam versi Excel terdahulu, anda boleh menggunakan gabungan IF ISERROR dan IF ISNA.

    Perbezaannya ialah IFERROR dan ISERROR mengendalikan semua kemungkinan ralat Excel, termasuk #VALUE!, #N/A, #NAME?, #REF!, #NUM!, #DIV/0!, dan #NULL!. Walaupun IFNA dan ISNA pakar semata-mata dalam ralat #N/A.

    Sebagai contoh, untukgantikan ralat "bahagi dengan sifar" (#DIV/0!) dengan teks tersuai anda, anda boleh menggunakan formula berikut:

    =IF(ISERROR(A2/B2), "N/A", A2/B2)

    Dan itu sahaja yang saya perlu katakan tentang menggunakan fungsi IF dalam Excel. Saya mengucapkan terima kasih kerana membaca dan berharap dapat berjumpa anda di blog kami minggu hadapan!

    Berlatih buku kerja untuk muat turun

    Excel JIKA berbilang kriteria - contoh (fail.xlsx)

    Michael Brown ialah peminat teknologi yang berdedikasi dengan semangat untuk memudahkan proses kompleks menggunakan alat perisian. Dengan lebih sedekad pengalaman dalam industri teknologi, beliau telah mengasah kemahirannya dalam Microsoft Excel dan Outlook, serta Helaian Google dan Dokumen. Blog Michael berdedikasi untuk berkongsi pengetahuan dan kepakarannya dengan orang lain, menyediakan petua dan tutorial yang mudah diikuti untuk meningkatkan produktiviti dan kecekapan. Sama ada anda seorang profesional berpengalaman atau pemula, blog Michael menawarkan pandangan berharga dan nasihat praktikal untuk memanfaatkan sepenuhnya alatan perisian penting ini.