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 akan 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 akan mengembalikan 0. Jika if-false dikecualikan sepenuhnya (tiada koma selepas if-true) dan if-expression menilai kepada FALSE, IF akan mengembalikan FALSE.
Nota
Salah satu atau kedua-dua if-true dan if-false boleh mengandungi fungsi IF tambahan (seringkali dipanggil fungsi IF tersarang ).
Contoh |
---|
=IF(A5>=0, “Nonnegative”, “Negative”) mengembalikan teks "Nonnegative" jika sel A5 mengandungi nilai lebih besar daripada atau sama dengan sifar atau nilai bukan numerik. Jika sel A5 mengandungi nilai yang kurang daripada 0, fungsi mengembalikan "Negative". =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 akan mengembalikan ralat dan fungsi IFERROR akan mengembalikan FALSE; sebaliknya ia akan mengembalikan TRUE kerana sama ada EVEN atau ODD ialah TRUE. Jadi jika sama ada B4 atau B5 bukan nombor atau boolean, kenyataan IF akan mengembalikan ungkapan if-false, “Bukan semua nombor”; sebaliknya ia akan mengembalikan ungkapan if-true “Semua nombor.” |
Contoh—Mengelakkan ralat daripada pembahagian dengan sifar |
---|
Kadangkala adalah tidak mungkin untuk membina jadual dalam cara yang boleh mengelakkan pembahagian dengan sifar. Walau bagaimanapun, jika pembahagian dengan sifar 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 sifar. Setiap daripada tiga kaedah berikut akan mengembalikan 0 jika sel E2 adalah bersamaan dengan sifar: 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 sifar 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 "john@appleseed.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". |