ฟังก์ชัน 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

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

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

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

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

×