ฟังก์ชัน IF

สิ่งสำคัญ:  บทความนี้เป็นการแปลด้วยเครื่อง โปรดดู ข้อจำกัดความรับผิดชอบ โปรดดูบทความฉบับภาษาอังกฤษ ที่นี่ เพื่อใช้อ้างอิง

ส่งกลับค่าหนึ่งค่าถ้าเงื่อนไขที่คุณระบุเป็น TRUE และส่งกลับค่าอีกค่าหนึ่งถ้าเงื่อนไขที่คุณระบุเป็น FALSE ใช้ IF เพื่อทำการทดสอบเงื่อนไขของค่าและสูตร

ไวยากรณ์

IF(logical_test,value_if_true,value_if_false)

Logical_test     เป็นค่าหรือนิพจน์ที่สามารถประเมินออกมาเป็น TRUE หรือ FALSE ได้ ตัวอย่างเช่น [Quarter1]=100 เป็นนิพจน์ตรรกศาสตร์ ถ้าค่าในแถวหนึ่งของคอลัมน์ ซึ่งก็คือ [Quarter1] เท่ากับ 100 นิพจน์จะให้ค่าเป็น TRUE มิฉะนั้นจะให้ค่าเป็น FALSE อาร์กิวเมนต์นี้สามารถใช้ตัวดำเนินการคำนวณเชิงเปรียบเทียบได้

Value_if_true     คือค่าที่ถูกส่งกลับถ้า logical_test เป็น TRUE ตัวอย่างเช่น ถ้าอาร์กิวเมนต์นี้เป็นสตริงข้อความ "Within budget" และอาร์กิวเมนต์ logical_test ประเมินค่าเป็น TRUE จากนั้นฟังก์ชัน IF จะแสดงข้อความ "Within budget" แต่ถ้า logical_test เป็น TRUE และ value_if_true ว่างเปล่า อาร์กิวเมนต์นี้จะส่งกลับ 0 (ศูนย์) เมื่อต้องการแสดงคำว่า TRUE ให้ใช้ค่าตรรกะ TRUE สำหรับอาร์กิวเมนต์นี้ ทั้งนี้ Value_if_true สามารถเป็นสูตรอื่นได้

value_if_false     คือค่าที่ถูกส่งกลับถ้า logical_test เป็น FALSE ตัวอย่างเช่น ถ้าอาร์กิวเมนต์เป็นสตริงข้อความ "Over budget" และอาร์กิวเมนต์ logical_test ให้ค่าเป็น FALSE แล้ว ฟังก์ชัน IF จะแสดงข้อความ "Over budget" ถ้า logical_test เป็น FALSE และไม่ได้ใส่ค่าอะไรไว้ใน value_if_false (นั่นคือ หลัง value_if_true ไม่มีเครื่องหมายจุลภาค) ค่าตรรกะ FALSE จะถูกส่งกลับ ถ้า logical_test เป็น FALSE และ value_if_false ไม่ใส่ค่าอะไรไว้ (นั่นคือ หลัง value_if_true มีเครื่องหมายจุลภาคตามด้วยวงเล็บปิด) ค่าที่ส่งกลับมาจะเป็น 0 (ศูนย์) อย่างไรก็ตาม value_if_false สามารถเป็นสูตรอื่นได้

ข้อสังเกต

  • คุณสามารถใช้ฟังก์ชัน IF ซ้อนๆ กันเป็นอาร์กิวเมนต์ของ value_if_true และ value_if_false ได้สูงสุด 7 ชั้นเพื่อทำให้การทดสอบมีความละเอียดยิ่งขึ้น ให้ดูฟังก์ชันชั้นสุดท้ายในตัวอย่างต่อไปนี้

  • เมื่อมีการประมวลผลอาร์กิวเมนต์ value_if_true และ value_if_false ฟังก์ชัน IF จะส่งกลับค่าตามคำสั่งเหล่านั้น

  • ถ้าอาร์กิวเมนต์ตัวใดตัวหนึ่งในฟังก์ชัน IF เป็นอาร์เรย์ ทุกองค์ประกอบของอาร์เรย์จะถูกหาค่าเมื่อมีการประมวลผลคำสั่ง IF

ตัวอย่างชุดที่ 1

C ol1

Col2

Col3

Expense

สูตร

คำอธิบาย (ผลลัพธ์)

50

=IF([Expense]<=100,"อยู่ในงบ","เกินงบ")

ถ้าตัวเลขน้อยกว่าหรือเท่ากับ 100 สูตรจะแสดงคำว่า "อยู่ในงบ" มิฉะนั้นฟังก์ชันจะแสดงคำว่า "เกินงบ" (อยู่ในงบ)

23

45

89

50

=IF([Expense]=100,SUM([Col1],[Col2],[Col3]),"")

ถ้าตัวเลขเท่ากับ 100 ค่าทั้งสามจะถูกรวมเข้าด้วยกัน มิฉะนั้นจะแสดงเป็นข้อความว่าง ("") แทน ()

ตัวอย่างชุดที่ 2

ActualExpenses

PredictedExpenses

สูตร

คำอธิบาย (ผลลัพธ์)

1500

900

=IF([ActualExpenses]>[PredictedExpenses],"เกินงบ","ผ่าน")

ตรวจดูว่าแถวแรกเกินงบหรือไม่ (เกินงบ)

500

900

=IF([ActualExpenses]>[PredictedExpenses],"เกินงบ","ผ่าน")

ตรวจสอบว่าแถวที่สองมีค่าสูงเกินกว่างบประมาณหรือไม่ (OK)

ตัวอย่างชุดที่ 3

Score

สูตร

คำอธิบาย (ผลลัพธ์)

45

=IF([Score]>89,"A",IF([Score]>79,"B", IF([Score]>69,"C",IF([Score]>59,"D","F"))))

กำหนดเกรดเป็นตัวอักษรให้กับคะแนนแรก (F)

90

=IF([Score]>89,"A",IF([Score]>79,"B", IF([Score]>69,"C",IF([Score]>59,"D","F"))))

กำหนดเกรดเป็นตัวอักษรให้กับคะแนนที่สอง (A)

78

=IF([Score]>89,"A",IF([Score]>79,"B", IF([Score]>69,"C",IF([Score]>59,"D","F"))))

กำหนดเกรดเป็นตัวอักษรให้กับคะแนนที่สาม (C)

ในตัวอย่างข้างต้น คำสั่ง IF คำสั่งที่สองถือเป็นอาร์กิวเมนต์ value_if_false ของคำสั่ง IF คำสั่งแรกเช่นกัน ในทำนองเดียวกัน คำสั่ง IF คำสั่งที่สามก็เป็นอาร์กิวเมนต์ value_if_false ของคำสั่ง IF คำสั่งที่สองด้วย ตัวอย่างเช่น ถ้า logical_test ตัวแรก ([Score]>89) เป็น TRUE ฟังก์ชันจะส่งกลับค่า "A" แต่ถ้า logical_test ตัวแรกเป็น FALSE ฟังก์ชันก็จะไปประเมินคำสั่ง IF คำสั่งที่สองต่อไปอย่างนี้เรื่อยๆ

เกรดแบบตัวอักษรที่กำหนดให้กับคะแนน (Score) ต่างๆ ใช้เกณฑ์ดังต่อไปนี้ (ใช้การสมมุติค่าจำนวนเต็มเท่านั้น)

ถ้าคะแนนเท่ากับ

แล้วส่งกลับค่า

มากกว่า 89

A

80 ถึง 89

B

70 ถึง 79

C

60 ถึง 69

D

น้อยกว่า 60

F

หมายเหตุ: ข้อจำกัดความรับผิดชอบของการแปลด้วยเครื่อง: บทความนี้มีการแปลด้วยระบบคอมพิวเตอร์โดยไม่มีการดำเนินการโดยบุคคล Microsoft จัดให้มีการแปลด้วยเครื่องนี้เพื่อช่วยให้ผู้ใช้ที่ไม่ได้พูดภาษาอังกฤษสามารถใช้ประโยชน์จากเนื้อหาเกี่ยวกับผลิตภัณฑ์ บริการและเทคโนโลยีของ Microsoft เนื่องจากบทความมีการแปลด้วยเครื่อง อาจมีข้อผิดพลาดด้านคำศัพท์ ไวยากรณ์หรือรูปประโยค

ขยายทักษะของคุณ
สำรวจการฝึกอบรม
รับฟีเจอร์ใหม่ก่อนใคร
เข้าร่วม Office Insider

ข้อมูลนี้เป็นประโยชน์หรือไม่

ขอบคุณสำหรับคำติชมของคุณ!

ขอขอบคุณสำหรับคำติชมของคุณ! เราคิดว่าอาจเป็นประโยชน์ที่จะให้คุณได้ติดต่อกับหนึ่งในตัวแทนฝ่ายสนับสนุน Office ของเรา

×