IF (ฟังก์ชัน IF)

นำไปใช้กับ
SharePoint Server 2019 SharePoint Server 2016 SharePoint Server 2013 SharePoint Server 2013 Enterprise SharePoint Foundation 2010 SharePoint Server 2010 Windows SharePoint Services 3.0

ส่งกลับค่าหนึ่งค่าถ้าเงื่อนไขที่คุณระบุประเมินเป็น 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 ตัวอย่างเช่น ถ้าอาร์กิวเมนต์นี้เป็นสตริงข้อความ "อยู่ภายในงบประมาณ" และอาร์กิวเมนต์ logical_test ประเมินเป็น TRUE ฟังก์ชัน IF จะแสดงข้อความ "อยู่ในงบ" ถ้า logical_test เป็น TRUE และ value_if_true ว่างเปล่า อาร์กิวเมนต์นี้จะส่งกลับค่า 0 (ศูนย์) เมื่อต้องการแสดงคําว่า TRUE ให้ใช้ค่าตรรกะ TRUE สําหรับอาร์กิวเมนต์นี้ Value_if_true อาจเป็นสูตรอื่นได้

Value_if_false คือค่าที่ส่งกลับถ้า logical_test เป็น FALSE ตัวอย่างเช่น ถ้าอาร์กิวเมนต์นี้เป็นสตริงข้อความ "เกินงบ" และอาร์กิวเมนต์ logical_test ประเมินเป็น FALSE ฟังก์ชัน IF จะแสดงข้อความ "เกินงบ" ถ้า 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 ได้ถึงเจ็ดฟังก์ชันเพื่อสร้างการทดสอบที่ซับซ้อนยิ่งขึ้น ดูตัวอย่างสุดท้ายต่อไปนี้
  • เมื่ออาร์กิวเมนต์ value_if_true และ value_if_false ถูกประเมินค่า IF จะส่งกลับค่าโดยคําสั่งเหล่านั้น
  • ถ้าอาร์กิวเมนต์ใดกับ IF เป็นอาร์เรย์ ทุกองค์ประกอบของอาร์เรย์จะถูกประเมินเมื่อมีการดําเนินการคําสั่ง IF

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

C ol1 คอล 2 คอล 3 จ่าย สูตร คำอธิบาย (ผลลัพธ์)
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],"Over Budget","OK") ตรวจสอบว่าแถวแรกเกินงบประมาณหรือไม่ (เกินงบ)
500 900 =IF([ActualExpenses]>[PredictedExpenses],"Over Budget","OK") ตรวจสอบว่าแถวที่สองเกินงบประมาณหรือไม่ (ตกลง)

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

คะแนน สูตร คำอธิบาย (ผลลัพธ์)
45 =IF([คะแนน]>89,"A",IF([คะแนน]>79,"B", IF([คะแนน]>69,"C",IF([คะแนน]>59,"D","F")))) กําหนดเกรดเป็นตัวอักษรให้กับคะแนนแรก (F)
90 =IF([คะแนน]>89,"A",IF([คะแนน]>79,"B", IF([คะแนน]>69,"C",IF([คะแนน]>59,"D","F")))) กําหนดเกรดเป็นตัวอักษรให้กับคะแนนที่สอง (A)
78 =IF([คะแนน]>89,"A",IF([คะแนน]>79,"B", IF([คะแนน]>69,"C",IF([คะแนน]>59,"D","F")))) กําหนดเกรดเป็นตัวอักษรให้กับคะแนนที่สาม (C)

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

เกรดตัวอักษรจะถูกกําหนดให้กับตัวเลขโดยใช้คีย์ต่อไปนี้ (โดยสมมติให้ใช้จํานวนเต็มเท่านั้น)

ถ้าคะแนนเท่ากับ จากนั้นส่งคืน
มากกว่า 89 A
ตั้งแต่ 80 ถึง 89 B
ตั้งแต่ 70 ถึง 79 C
ตั้งแต่ 60 ถึง 69 D
น้อยกว่า 60 ศ.