IF
Fungsi IF mengembalikan salah satu daripada dua nilai, bergantung pada sama ada ungkapan yang ditentukan dinilai kepada nilai boolean TRUE atau FALSE.
IF(if-expression, if-true, if-false)
if-expression: Ungkapan logik. if-expression boleh mengandungi apa-apa sahaja asalkan ungkapan boleh dinilaikan sebagai nilai boolean. Jika ungkapan menilai kepada nombor, 0 dipertimbangkan sebagai FALSE dan sebarang nombor lain dianggap sebagai TRUE.
if-true: Nilai yang dikembalikan jika if-expression ialah TRUE. if-true boleh mengandungi sebarang nilai. Jika if-true dikecualikan (terdapat koma, tetapi bukan nilai) dan if-expression menilai kepada TRUE, IF mengembalikan 0.
if-false: Argumen pilihan yang menentukan nilai yang dikembalikan jika if-expression ialah FALSE. if-false boleh mengandungi sebarang nilai. Jika if-false dikecualikan (terdapat koma, tetapi bukan nilai) dan if-expression menilai kepada FALSE, IF mengembalikan 0. Jika if-false dikecualikan sepenuhnya (tiada koma selepas if-true) dan if-expression menilai kepada FALSE, IF mengembalikan FALSE.
Nota
Salah satu atau kedua-dua if-true dan if-false boleh mengandungi fungsi IF tambahan (seringkali dipanggil fungsi IF tersarang).
Gunakan IF untuk membuat perbandingan ringkas |
---|
Jadual di bawah menunjukkan cara yang mudah untuk menjejak gred pelajar. |
A | B | C | D | E | F | |
---|---|---|---|---|---|---|
1 | Pelajar | Markah Ujian 1 | Markah Ujian 2 | Markah Akhir | Gred Huruf | Keputusan Akhir |
2 | 1 | 56 | 59 | 59 | F | Gagal |
3 | 2 | 75 | 84 | 84 | B | Lulus |
4 | 3 | 100 | 93 | 100 | A | Lulus |
Anda boleh melakukan perbandingan IF ringkas menggunakan data ini. Yang berikut adalah beberapa cara untuk menggunakan fungsi IF: |
Mengembalikan nilai teks berdasarkan kriteria: Dalam formula ini, argumen berikut digunakan:
Formula ini menetapkan keputusan "Lulus" jika markah ujian Pelajar 1 adalah 60 atau lebih tinggi; jika tidak "Gagal" dikembalikan. |
Mengembalikan nilai numerik berdasarkan kriteria: Dalam formula ini, argumen berikut digunakan:
Formula ini mengira markah akhir sebagai lebih tinggi daripada dua markah ujian dan boleh diubah suai dengan mudah untuk mana-mana pelajar lain dalam jadual di atas dengan menukar rujukan sel supaya sepadan dengan markah pelajar yang betul. |
Gunakan fungsi IF tersarang untuk menguji lebih syarat: Formula di atas menetapkan keputusan "Lulus" jika sekurang-kurangnya satu markah ujian pelajar ialah 60 atau lebih tinggi. Formula di atas menetapkan gred huruf berdasarkan markah akhir pelajar. Nota: Dengan fungsi IF tersarang, tertib perbandingan adalah penting kerana formula berhenti selepas kenyataan benar yang pertama. Contohnya, jika anda mahu menambah syarat baharu ke formula gred huruf "tidak diambil" jika pelajar mempunyai markah 0, anda perlu menambahnya sebagai syarat pertama. Menambahnya di hujung akan mengembalikan "F" walaupun jika markah ialah 0, kerana markah tersebut telah dinilaikan sebagai kurang daripada 60. Ini juga adalah sebab if-expression berasingan tidak diperlukan untuk gred huruf "A", jika markah pelajar bukan "B", jadi markah bukan gred huruf lain dan mestilah "A". |
Cubalah |
---|
Untuk melihat fungsi IF digunakan dalam hamparan Numbers, cipta hamparan baharu dengan templat "Buku Gred". Keluarkan nama dalam jadual Gambaran Keseluruhan Kelas dan lihat cara tindakan ini mengubah nilai dalam lajur "Gred Akhir". Terokai fungsi yang digunakan dalam lajur "Gred Akhir". |
Gunakan IF dengan fungsi lain |
---|
Formula berikut berfungsi dengan ISBLANK untuk menentukan jika sel adalah kosong. Dalam formula ini, argumen berikut digunakan:
Untuk ujian yang lebih rumit, anda juga boleh menggabungkan IF dengan AND, OR dan NOT. |
Lakukan lebih lagi dengan IFS |
---|
Fungsi IFS boleh digunakan untuk menilai siri ungkapan dan mengembalikan nilai berdasarkan syarat pertama yang benar, menggantikan berbilang kenyataan IF tersarang. |
Contoh tambahan |
---|
=IF(A5>=0, "Nonnegative", "Negative") mengembalikan teks "Nonnegative" jika sel A5 mengandungi nilai lebih besar daripada atau sama dengan 0 atau nilai bukan numerik. Jika sel A5 mengandungi nilai yang kurang daripada 0, fungsi mengembalikan "Negative". =IF(A5<>0, "Nonzero", "Zero") mengembalikan teks "Nonzero" jika sel A5 mengandungi nombor bukan 0. Jika sel A5 mengandungi 0, fungsi mengembalikan "Zero". =IF(IFERROR(OR(ISEVEN(B4+B5), ISODD(B4+B5)), FALSE), "Semua nombor", "Bukan semua nombor") mengembalikan teks "Semua nombor", jika kedua-dua sel B4 dan B5 mengandungi nombor; jika tidak teks "Bukan semua nombor." Ini dicapai dengan menguji bagi melihat sama ada jumlah dua sel ialah sama ada genap atau ganjil. Jika sel bukan nombor, fungsi EVEN dan ODD mengembalikan ralat dan fungsi IFERROR mengembalikan FALSE; sebaliknya ia mengembalikan TRUE kerana sama ada EVEN atau ODD ialah TRUE. Jadi jika sama ada B4 atau B5 bukan nombor atau boolean, kenyataan IF mengembalikan ungkapan if-false, "Bukan semua nombor"; sebaliknya ia mengembalikan ungkapan if-true "Semua nombor". |
Contoh—Mengelakkan ralat daripada pembahagian dengan 0 |
---|
Kadangkala adalah tidak mungkin untuk membina jadual dalam cara yang boleh mengelakkan pembahagian dengan 0. Walau bagaimanapun, jika pembahagian dengan 0 berlaku, hasil ialah nilai ralat dalam sel, yang biasanya bukan keputusan yang diinginkan. Contoh ini menunjukkan tiga kaedah untuk mengelakkan ralat ini. Anggaplah bahawa sel D2 dan E2 mengandungi nombor. Ada kemungkinan bahawa E2 mengandungi 0. Anda mahu membahagikan D2 dengan E2 tetapi mengelakkan pembahagian dengan ralat 0. Setiap daripada tiga kaedah berikut mengembalikan 0 jika sel E2 adalah bersamaan dengan 0: jika tidak setiap satu mengembalikan keputusan D2/E2. =IF(E2=0, 0, D2/E2) beroperasi dengan menguji sel E2 secara langsung untuk melihat sama ada ia 0. =IFERROR(D2/E2, 0) beroperasi dengan mengembalikan 0 jika ralat berlaku. Pembahagian dengan 0 ialah ralat. =IF(ISERROR(D2/E2), 0, D2/E2) beroperasi dengan melakukan ujian logik bagi melihat sama ada D2/E2 ialah TRUE. |
Contoh menggunakan REGEX |
---|
Biarkan A1 mengandungi "marina@example.com" =IF(A1 = REGEX("([A-Z0-9a-z._%+-]+)@([A-Za-z0-9.-]+\.[A-Za-z]{2,4})"), "Mengandungi e-mel", "Tiada e-mel") mengembalikan "Mengandungi e-mel". |