
บทความนี้คือส่วนหนึ่งของโครงการ ร่วมสร้าง “หนังสือคู่มือ Excel ที่เจ๋งที่สุด” ใครที่มี comment เพื่อแนะนำ ปรับปรุงหนังสือได้ คุณจะได้เครดิตในฐานะผู้ร่วมเขี
ในส่วนนี้จะปูพื้นฐานฟังก์ชั่นที่จำเป็นมากๆ ต่อการใช้งานส่วนใหญ่ในชีวิตจริง ทั้งใช้ในการเขียนสูตรปกติ และใช้ในเครื่องมืออื่นๆ ของ Excel เช่น Conditional Formatting, Advanced Filter เป็นต้น
ฟังก์ชั่นที่ใช้ในการคำนวณสรุปผล
การ “สรุปผล” จากข้อมูลจำนวนมาก สามารถทำได้หลากหลายวิธี เช่น หาผลรวม (SUM) , หาค่ามากที่สุด (MAX), ค่าน้อยที่สุด (MIN), หาค่ากลางของข้อมูล ซึ่งมีหลายประเภท เช่น ค่าเฉลี่ย(AVERAGE) ฐานนิยม (MODE) มัธยฐาน(MEDIAN), หาค่าการกระจายตัวของข้อมูล ซึ่งก็มีหลายประเภทอีกเช่นกัน เช่น ค่าพิสัย, ค่าเบี่ยงเบนมาตรฐาน
การสรุปผลแบบ Basic
การหาค่ากลางของข้อมูล คุณเองจะต้องเข้าใจความหมายของตัวสรุปผลแต่ละตัว และใช้ให้เหมาะกับแต่ละสถานการณ์ เพื่อตีความข้อมูลที่มีอยู่อย่างถูกต้อง โดยเฉพาะการสรุปผลข้อมูลโดยใช้การวัดค่ากลางหรือการกระจายของข้อมูล ซึ่งมีให้เลือกอยู่หลายตัว และไม่ตรงไปตรงมาเหมือนการหาผลรวมธรรมดา ซึ่งจริงๆ แล้วเป็นสิ่งที่คุณน่าจะเคยเรียนมาในวิชาคณิตศาสตร์ หรือวิชาสถิติเบื้องต้นกันบ้างแล้ว แต่ใครไม่เคยเรียนหรือลืมไปแล้วก็ไม่เป็นไร เดี๋ยวผมจะทวนให้แบบเร็วๆ ครับ
เราวัดค่ากลางของข้อมูล เพื่อใช้เป็น “ตัวแทน” กลุ่มของข้อมูลนั้นๆ เพื่อความสะดวกในการตีความและทำความเข้าใจ ซึ่งค่ากลางนั้นมีอยู่หลายแบบ แต่ตัวที่เป็นที่นิยม มีดังนี้
- Mean (ค่าเฉลี่ยเลขคณิต)=AVERAGE
- เป็นค่ากลางที่นิยมที่สุด คำนวณโดยเอาข้อมูลทุกค่าบวกกันแล้วหารด้วยจำนวนข้อมูล
เช่น = AVERAGE(A1:A5) มันจะเอา (A1+A2+A3+A4+A5)/5 - ถ้ามีค่ามากหรือน้อยผิดปกติอาจจะดึงค่า MEAN ไปในทิศทางนั้นๆ อาจให้ผลไม่ดีได้
- เป็นค่ากลางที่นิยมที่สุด คำนวณโดยเอาข้อมูลทุกค่าบวกกันแล้วหารด้วยจำนวนข้อมูล
- Mode (ฐานนิยม) = MODE
- เป็นการวัดค่ากลาง โดยจะแสดงข้อมูลที่เกิดขึ้นบ่อยที่สุด (มีความถี่สูงสุด)
- Median (มัธยฐาน)= MEDIAN
- เป็นการวัดค่ากลาง โดยจะนำค่ามากเรียงกันจากน้อยไปมาก แล้วดูตำแหน่งตรงกลาง
- สามารถใช้ได้แม้กับข้อมูลที่มีค่าที่มากหรือน้อยผิดปกติ เพราะค่าเหล่านั้นจะไม่ส่งผลใดๆ ต่อการคำนวณเนื่องจากจะถูกเรียงลำดับอยู่ที่หัวและท้าย
- มีฟังก์ชั่นคล้ายๆ กัน คือ QUARTILE (ควอไทล์) และ PERCENTILE (เปอร์เซ็นต์ไทล์) ซึ่ง Concept คล้ายกัน แต่จะแบ่งช่วงข้อมูลต่างกัน
การหาค่าการกระจายของข้อมูล
เราวัดการกระจายของข้อมูล เพื่อดูว่าข้อมูลแต่ละตัวกระจายกันหรือห่างกันมากแค่ไหน กลุ่มข้อมูลที่กระจายกันมากๆ ค่ากลางหรือตัวแทนของข้อมูลอาจจะไม่ได้ใกล้เคียงกับข้อมูลบางตัวก็ได้
เช่น เรามีกลุ่มข้อมูล 2 กลุ่ม มีค่าเฉลี่ยเท่ากัน คือ 70 แต่กลุ่มแรกมีการกระจายตัวน้อย (ข้อมูลมีการเกาะกลุ่มอยู่ที่ใกล้ๆ 70) อีกกลุ่มมีการกระจายตัวมาก เช่น อาจกระจาย 40-100 เลยก็ได้
การวัดการกระจายตัวที่นิยม มีอยู่ 3 แบบ คือ
- Range (พิสัย) คือการหาผลต่างของค่าสูงสุดและค่าต่ำสุดของข้อมูลนั้น
- ดังนั้นสามารถใช้สูตร MAX มาลบด้วย MIN ได้ เช่น =MAX(A1:A10)-MIN(A1:A10)
- ข้อมูลที่ได้จะค่อนข้างหยาบ เพราะใช้ข้อมูลแค่ 2 ตัวคือ ค่าสูงสุดและต่ำสุดเท่านั้น
- Standard Deviation (ส่วนเบี่ยงเบนมาตรฐาน) เป็นการวัดการกระจายที่มีความนิยมมากที่สุด หลักการคล้ายๆ การหาค่าเฉลี่ยของระยะห่างระหว่างข้อมูลแต่ละตัวกับค่าเฉลี่ยเลขคณิต
- STDEV หรือ S ใช้กับข้อมูลที่เป็นกลุ่มตัวอย่าง (S=Sample) และ
- STDEVP หรือ P เอาไว้ใช้กับข้อมูลทั้งหมด (P=Populations)
ฟังก์ชั่นกลุ่มตรรกศาสตร์ TRUE/FALSE (จริง/เท็จ)
เรื่องของตรรกะ (การใช้เหตุผล) เป็นสิ่งที่หลายๆ คนคิดว่าคงได้เจอแค่ในวิชาคณิตศาสตร์ แต่ความจริงแล้วใน Excel ก็มีหลายครั้งที่เราจะต้องใช้ฟังก์ชั่นตรรกศาสตร์มาช่วย โดยเฉพาะในเครื่องมือต่างๆ มักจะต้องใส่สูตรที่เป็นตรรกะเข้าไปทั้งสิ้น ดังนั้นเรามาทวนความรู้ตรรกศาสตร์พื้นฐานกันดีกว่าครับ
ก่อนอื่นต้องบอกว่า ในฟังก์ชั่นทางตรรกศาสตร์ของ Excel นั้น จะใช้กับเนื้อหาหรือ Input ที่ให้ผลเป็น TRUE/FALSE (จริง/เท็จ) ได้อย่างใดอย่างหนึ่งเท่านั้น (วิชาตรรกศาสตร์เรียกสิ่งนี้ว่า Propositions หรือ ประพจน์ แต่ช่างมันเหอะ ไม่ต้องไปสนใจศัพท์ยากๆ นั่นหรอกครับ)
ดังนั้นเราต้องแยกให้ออกก่อน ระหว่างสิ่งที่ให้ผลเป็น TRUE/FALSE ได้ กับอะไรที่ไม่สามารถให้คำตอบแบบนั้นได้ ดังตัวอย่างต่อไปนี้
ตัวอย่าง : ให้ผลเป็น TRUE/FALSE อย่างใดอย่างหนึ่งเท่านั้น
สังเกตว่าจะต้องมีเครื่องหมายเปรียบเทียบ (COMPARISON OPERATOR) อยู่ด้วย เพื่อทำให้ค่าออกมาเป็น TRUE หรือ FALSE เช่น = เท่ากับ, < น้อยกว่า, > มากกว่า, <> ไม่เท่ากับ, >= มากกว่าหรือเท่ากับ, <= น้อยกว่าหรือเท่ากับ

ตัวอย่าง : ไม่สามารถให้ผลเป็น TRUE/FALSE หรือเป็นเรื่องที่ขึ้นอยู่กับผู้มอง (Subjective)
การคำนวณเกี่ยวกับ ค่า TRUE/FALSE
เมื่อเรารู้ Input แต่ละตัวแล้วว่าสามารถออกผลเป็น TRUE หรือ FALSE ได้ เราก็สามารถเอา input แต่ละตัวมาเชื่อมกันได้ด้วยฟังก์ชั่นทางตรรกศาสตร์ เพื่อดูว่าเมื่อ Input รวมกันทุกอันแล้ว ผลลัพธ์สุดท้ายจะเป็นค่า TRUE หรือ FALSE เพื่อนำไปใช้กับฟังก์ชั่นอื่นๆ เช่น IF หรือใช้ในเครื่องมืออื่นๆ เช่น Conditional Formatting, Data Validation ต่อไป
แม้ว่าในวิชาตรรกศาสตร์จะมีตัวเชื่อมอยู่มากมาย เช่น ![]()
แต่ว่าใน Excel เราจะมีแค่ 3 แบบ ที่เป็นรูปแบบพื้นฐานที่สุดเท่านั้น คือ
~(นิเสธ) แทนด้วย ฟังก์ชั่น NOT :
กลับจริงเป็นเท็จ เท็จเป็นจริง
| เงื่อนไข | NOT(เงื่อนไข) |
| TRUE | FALSE |
| FALSE | TRUE |
การใช้งาน =NOT(logical)
=NOT(3>5)
=NOT(FALSE) จะได้ TRUE เพราะกลับทิศจากเท็จเป็นจริง
“และ” แทนด้วย ฟังก์ชั่น AND
ถ้าเงื่อนไข Input ทุกอันเป็นจริง จะได้ค่าออกมาเป็นจริง กรณีอื่นจะเป็นเท็จ ตรงกับภาษาพูดว่า “และ”
| เงื่อนไข1 | เงื่อนไข2 | AND(เงื่อนไข1,เงื่อนไข2) |
| TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE |
| FALSE | TRUE | FALSE |
| FALSE | FALSE | FALSE |
การใช้งาน =AND(logical1, [logical2], …)
=AND(3>5,10-3<8)
=AND(FALSE,TRUE) จะได้ FALSE เพราะมีตัวใดตัวหนึ่ง FALSE
“หรือ: แทนด้วย ฟังก์ชั่น OR
ถ้าอย่างน้อยเงื่อนไขใดเงื่อนไขหนึ่งจริง จะได้ค่าออกมาเป็นจริง (ต้องเท็จทุกอันจึงจะออกมาเป็นเท็จ) คล้ายกับภาษาพูดว่า “หรือ”
| เงื่อนไข1 | เงื่อนไข2 | AND(เงื่อนไข1,เงื่อนไข2) |
| TRUE | TRUE | TRUE |
| TRUE | FALSE | TRUE |
| FALSE | TRUE | TRUE |
| FALSE | FALSE | FALSE |
การใช้งาน =OR(logical1, [logical2], …)
=OR(3>5,10-3<8)
=OR(FALSE,TRUE) จะได้ TRUE เพราะมีตัวใดตัวหนึ่ง TRUE
จะเห็นว่า OR แบบนี้ไม่เหมือนกับ กรณีพนักงานเสิร์ฟมาถามคุณว่าจะเอา “ชา หรือ กาแฟ” ดีคะ? ซึ่งปกติจะหมายถึงให้เลือก Choice อันใดอันหนึ่งเท่านั้น (เรียกว่า Exclusive OR)
inwTips : ให้เลือกแค่อันใดอันหนึ่ง หรือ Exclusive OR
ถ้าเราจะให้เลือกได้แค่อย่างใดอย่างหนึ่ง ใน Excel ไม่มีฟังก์ชั่นนี้ตรงๆ เราจะต้องผสมฟังก์ชั่นเอง
ซึ่งเราจะต้องเข้าใจเงื่อนไข นั่นคือ การที่ให้เลือกอันไหนก็ได้ได้อันใดอันหนึ่ง แปลว่า “เลือกอันไหนก็ได้ และ ต้องห้ามเป็นจริงพร้อมกัน” ดังนั้น เราต้องเขียนดังนี้
Exclusive OR = เลือกอันไหนก็ได้ และ ไม่เป็นจริงพร้อมกัน (ห้ามเลือกพร้อมกัน)
=(OR(เงื่อนไข1,เงื่อนไข2) AND NOT(AND(เงื่อนไข1,เงื่อนไข2))
=AND(OR(เงื่อนไข1,เงื่อนไข2),NOT(AND(เงื่อนไข1,เงื่อนไข2)))
| เงื่อนไข1 | เงื่อนไข2 | Exclusive OR (เงื่อนไข1,เงื่อนไข2) |
| TRUE | TRUE | FALSE |
| TRUE | FALSE | TRUE |
| FALSE | TRUE | TRUE |
| FALSE | FALSE | FALSE |
การใส่เงื่อนไขด้วย IF
IF คือฟังก์ชั่น ที่ทำหน้าแสดงผลลัพธ์ 2 แบบ ขึ้นอยู่กับเงื่อนไขที่เราระบุลงไปว่าจริงหรือเท็จ? ถ้าเงื่อนไขมีผลลัพธ์เป็นจริง (TRUE) จะทำการคำนวณผลลัพธ์แบบหนึ่ง ถ้าเงื่อนไขเป็นเท็จ (FALSE) จะคำนวณผลลัพธ์อีกแบบหนึ่ง
ผมแนะนำให้มองว่า IF 1 ตัว สามารถแตกกิ่งก้านสาขาการตัดสินใจ (Decision Tree) ออกไปได้ 2 กิ่ง ดังนั้นการใช้ IF 1 ตัว จะมีผลลัพธ์ได้ 2 อย่าง คือ TRUE และ FALSE ดังนั้นถ้าหากเราต้องการให้มีผลลัพธ์การตัดสินใจที่มากกว่า 2 อย่าง เราก็จะต้องแตกกิ่งมากกว่านี้ โดยเอา IF หลายตัวมาซ้อนกันซึ่งจะอธิบายในช่วงหลังของฟังก์ชั่นนี้
Tips : การแตกผลลัพธ์ที่มีมากกว่า 2 ตัว เราสามารถใช้ฟังก์ชั่นอื่นนอกจาก IF มาช่วยได้ เช่น CHOOSE หรือ VLOOKUP ซึ่งจะขออธิบายภายหลังครับ
IF เป็นฟังก์ชั่นที่เรา “ต้องเขียนให้เป็น” เพราะมีประโยชน์ในการทำงานจริงมากและใช้บ่อยที่สุด อีกทั้งยังเป็นจุดเริ่มต้นที่ดีในการฝึกคิดอะไรที่เป็นเหตุเป็นผล โดยมันจะมีวิธีเขียนดังนี้
วิธีใช้งาน
=IF(logical_test, [value_if_true], [value_if_false])
หลักการเขียนสูตร IF
- เงื่อนไขที่เราโยนเข้าไปให้ทดสอบ ใน logical_test จะต้องออกมาเป็นจริง (TRUE) หรือเท็จ (FALSE) เหมือนตอนที่เราศึกษาเรื่องตรรกศาสตร์ก่อนหน้านี้เลยครับ
- นอกจากค่า TRUE/FALSE แล้ว IF จะตีความเลข 0 เป็น FALSE เลขอื่นๆ เป็น TRUE
- ค่าผลลัพธ์เมื่อเงื่อนไขจริง (Value if true) และ ผลลัพธ์เมื่อเงื่อนไขเท็จ (Value if false) สามารถใส่สูตรที่เราเรียนรู้มาลงไปได้เลย ตัวเลข ตัวหนังสือ ฟังก์ชั่น โดยสามารถเชื่อมด้วยตัวดำเนินการต่างๆ ได้ทุกอย่างตามปกติ
- ถ้าดูดีๆจะเห็นว่า [value_if_true], [value_if_false] เป็นค่า Optional ซึ่งแปลว่าหากเราไม่ระบุอะไรลงไป กรณีจริงมันจะออกมาเป็นคำว่า TRUE กรณีเท็จมันจะออกมาเป็นคำว่า FALSE ให้ครับ
ตัวอย่าง 1
ถ้าคุณไปท้าเพื่อนว่า “ถ้า ฉันสอบตก ฉันจะเลี้ยงข้าว ไม่งั้น เธอเป็นคนเลี้ยงข้าว” และเราตกลงกับเพื่อนไว้ว่า คำว่าสอบตก คือ ได้คะแนนน้อยกว่า 50 แล้วให้เราบันทึกคะแนนสอบลงในช่อง A1
เราก็จะเขียนสูตร IF เพื่อรองรับเงื่อนไขข้างบนได้ว่า
=IF(A1<50,“ฉันเลี้ยงข้าว”, “เธอเลี้ยงข้าว”)
แปลว่า มีกิ่งการตัดสินใจ 2 กิ่ง คือ
กิ่งเงื่อนไขเป็นเท็จ : หากค่าใน A1 มากกว่าหรือเท่ากับ 50 (สอบไม่ตก) จะแสดง คำว่า เธอเลี้ยงข้าว
กิ่งเงื่อนไขเป็นจริง : หากค่าใน A1 น้อยกว่า 50 (สอบตก) จะแสดงค่าออกมาเป็นคำว่า ฉันเลี้ยงข้าว
ซึ่งในตัวอย่างข้างบน ในช่อง A1 มีค่า 30 ซึ่งทำให้เงื่อนไขเป็นจริง ผลลัพธ์จึงเป็นคำว่า “ฉันเลี้ยงข้าว”
Tips: ที่ต้องเขียนว่า “ฉันเลี้ยงข้าว” หรือ “เธอเลี้ยงข้าว” ในเครื่องหมายคำพูด เพราะ หากไม่ใส่เครื่องหมายคำพูด Excel จะตีความคำว่า ฉันเลี้ยงข้าว หรือ เธอเลี้ยงข้าว เป็นชื่อ (Defined Name) ที่ตั้งไว้ ซึ่งถ้าเราไม่ได้มีการตั้งไว้จริง ก็จะได้ผลผิดๆ ดังนั้นต้องใส่เครื่องหมายคำพูด เพื่อให้ Excel จะตีความว่าเป็น Text ธรรมดาตัวหนึ่ง
ตัวอย่าง 2
สมมติว่าเรามีข้อมูลมาว่า น้ำหนักมาตรฐานของชายไทย หญิงไทย เป็นไปตามสูตรดังนี้
น้ำหนักมาตรฐาน = [ความสูง (cm.) -100] แล้วคูณด้วยตัวคูณพิเศษ ซึ่งแยกเป็น 2 กรณี คือ
ผู้ชาย : ? X 0.9 แต่ถ้าเป็น ผู้หญิง : ? X 0.8 เราสามารถเขียนสูตรใน Excel ได้ดังนี้
หรือจะเขียนแบบข้างล่างนี้ก็ได้ เขียนสูตรได้สั้นกว่าด้วย โดยดึงเอาสิ่งที่เหมือนกันไปไว้นอก IF
| วิธีแรก : เขียนทุกอย่างอยู่ใน IF | วิธี#2 : เขียน IF เฉพาะส่วนที่ต่างกัน |
![]() |
![]() |
สิ่งที่ Excel จะทำคือดูว่าค่าใน B7 เป็นคำว่า “ชาย” หรือไม่?
- หากค่าใน B2 เป็น “ชาย” –> เงื่อนไขเป็นจริง –> ใช้สูตร (B5-100)*0.9 –> คำนวณได้ 63 kg
- หากค่าใน B2 ไม่ใช่ “ชาย” –> เงื่อนไขเป็นเท็จ –>ใช้สูตร (B5-100)*0.8 –> คำนวณได้ 56 kg
การผสมฟังก์ชั่นเบื้องต้น
การเขียนสูตร Excel นั้น ความยากไม่ได้อยู่ที่ว่าแต่ละฟังก์ชั่นใช้งานอย่างไร แต่ยากตรงที่ว่าในสถานการณ์ปัญหาที่พบอยู่จะเลือกใช้สูตรไหนหรือฟังก์ชั่นไหนมาแก้ช่วยปัญหามากกว่า และในหลายๆ ครั้ง สูตรหรือฟังก์ชั่นเดียว เดี่ยวๆ ก็ไม่สามารถแก้ปัญหาได้ ดังนั้นการผสมฟังก์ชั่นเพื่อนำความสามารถของฟังก์ชั่นแต่ละตัวมารวมพลังกันจึงเป็นสิ่งจำเป็นที่ต้องเรียนรู้
โดยหลักการผสมฟังก์ชั่นอยู่ที่ว่า เราต้องรู้ว่า
- แต่ละ Argument ของฟังก์ชั่นต้องการ INPUT เป็นข้อมูลประเภทไหน และ
- แต่ละฟังก์ชั่นให้ OUTPUT ผลลัพธ์ออกไปเป็นข้อมูลประเภทไหน (อันนี้พอจะสังเกตได้)
เมื่อรู้ 2 ข้อข้างบน เราก็จะรู้ว่าจะสามารถเอาฟังก์ชั่นไหน มาใส่ใน Argument ของอีกฟังก์ชั่นหนึ่งได้
เช่น การใช้ IF ผสมกับ AND
ในส่วนของ Logical_test ของฟังก์ชั่น IF นั้นต้องการข้อมูลประเภท Logical (ตรรกะ) นั่นคือค่า TRUE/FALSE ซึ่งฟังก์ชั่นหมวดตรรกศาสตร์ อย่างพวก AND, OR, NOT นั้นจะให้ผลลัพธ์เป็น TRUE/FALSE เช่นกัน แบบนี้แปลว่าเราฟังก์ชั่น AND มาผสมไว้ในส่วนของ Argument นี้ได้
ตัวอย่าง : การเขียน IF แบบมีหลายเงื่อนไขด้วยการผสมกับฟังก์ชั่นทางตรรกศาสตร์
หากเราต้องการใช้สูตร IF แบบมีหลายเงื่อนไข เราสามารถเอาแต่ละเงื่อนไขมาเชื่อมกับฟังก์ชั่นทางตรรกศาสตร์ก่อนที่จะเอาไปใส่ใน IF ได้ ยกตัวอย่างเช่น
หากนักเรียนสอบ Final ได้คะแนนน้อยกว่า 50 คะแนน และ ทำกิจกรรมเพื่อสังคม ไม่ถึง 3 ครั้ง ครูจะให้นักเรียนสอบตก นอกนั้นถือว่าสอบผ่าน
สมมติให้คะแนนสอบ Final อยู่ในช่อง A1 และ จำนวนครั้งของการทำกิจกรรมเพื่อสังคมอยู่ช่อง B1
จะสามารถเขียน logic ได้ดังนี้
| เงื่อนไข1 (A1<50) | เงื่อนไข2 (B1<3) | AND(เงื่อนไข1,เงื่อนไข2) |
| TRUE | TRUE | TRUE |
| TRUE | FALSE | FALSE |
| FALSE | TRUE | FALSE |
| FALSE | FALSE | FALSE |
สมมติให้ผลลัพธ์แสดงในช่อง C1 ว่า =IF(AND(A1<50,B1<3), “สอบตก”, “สอบผ่าน”)
สิ่งที่ Excel จะทำคือดูว่าค่าใน A1 น้อยกว่า 50 และ B1 น้อยกว่า3 หรือไม่?
หากดูตารางการแปลความของฟังก์ชั่น AND จะได้ผลลัพธ์ดังนี้
- สมมติว่าค่าในA1เป็น15และB1เป็น4
- AND(TRUE,FALSE) –> FALSE เงื่อนไขเป็นเท็จ –> แสดงค่า “สอบผ่าน” ในช่อง C1
- สมมติว่าค่าในA1เป็น40และB1เป็น2
- AND(TRUE,TRUE) –> TRUE เงื่อนไขเป็นจริง –> แสดงค่า “สอบตก” ในช่อง C1
ซึ่งการทำการเชื่อมฟังก์ชั่น IF กับ AND, OR, NOT นั้น ถือว่าเป็นก้าวแรกของการพัฒนาทักษะการผสมฟังก์ชั่น ซึ่งเป็นทักษะสำคัญที่จะต้องเรียนรู้ต่อไปในอนาคต
ตัวอย่าง : การเขียน IF ซ้อน IF
ในเมื่อเราผสมฟังก์ชั่นได้แล้ว และทำไมเราจะใช้ IF ซ้อนกันเองไม่ได้ล่ะ!
เทคนิคการเขียน IF ซ้อนกันหลายตัว
- ให้มองว่า IF แต่ละตัว คือตัวเงื่อนไข ซึ่งสามารถแตกกิ่งการตัดสินใจ (Decision Tree) ได้ 2 กิ่ง คือ จริง และ เท็จ
- ในแต่ละกิ่ง ที่ จริง /เท็จ เราสามารถเลือกที่จะใส่ IF ซ้อนลงไปอีกหรือไม่ก็ได้
- จำนวนวงเล็บเปิดต้องเท่ากับวงเล็บปิด (ในตัวอย่างข้างล่างนี้มี 3 คู่ คือเปิด-ปิดอย่างละ 3 อัน)
ตัวอย่าง : การแยกกิ่งขั้นที่สองจากแค่เงื่อนไขที่เป็นเท็จใน Step แรก
=IF(เงื่อนไข1,TRUE1,IF(เงื่อนไข2,TRUE2,FALSE2))
สังเกตว่ามี IF 2 ตัว จึงต้องมีวงเล็บเปิด 2 รอบ และวงเล็บปิด 2 รอบ เท่ากัน
ตัวอย่าง : การแยกกิ่งขั้นที่สองจากทั้งเงื่อนไขที่เป็นจริงและเงื่อนไขที่เป็นเท็จใน Step แรก
=IF(เงื่อนไข1,IF(เงื่อนไข2,TRUE2,FALSE2),IF(เงื่อนไข3,TRUE3,FALSE3))
สังเกตว่ามี IF 3 ตัว จึงต้องมีวงเล็บเปิด 3 รอบ และวงเล็บปิด 3 รอบ เท่ากัน
ตัวอย่าง : การใช้งานจริง
หากคุณต้องการจะจัดเกรดจากคะแนนดิบของนักเรียน โดยมีเกณฑ์ดังนี้
- คะแนน <50 : F
- 50 <= คะแนน<60 : D
- 60 <= คะแนน<70 : C
- 70 <= คะแนน<80 : B
- คะแนน >= 80 : A
สมมติคะแนนดิบอยู่ในช่อง A2 และเราจะใส่เกรดในช่อง B2
ในช่อง B2 เราสามารถตีความเป็น Diagram ได้แบบนี้
=IF(A2<50,“F”,IF(A2<60,“D”,IF(A2<70,“C”,IF(A2<80,“B”,“A”))))
อธิบายแนวคิด
ให้ใส่เงื่อนไขทีละ Step อันแรกสูตร IF ก็จะเช็คว่าค่าใน A2 น้อยกว่า 50 หรือไม่? ถ้าน้อยกว่าให้แสดงเกรด F ถ้าไม่น้อยกว่า สูตร IF ก็จะเช็คต่อว่าค่าใน A2 < 60 หรือไม่?… ถ้าน้อยกว่าให้แสดงเกรด D
ที่ทำแบบนี้ได้โดยไม่ต้องเขียนว่าต้องน้อยกว่า 60 และมากกว่า 50 อีกทีหนึ่ง เพราะว่าถ้ามันน้อยกว่า 50 จะกลายเป็น F ไปแล้วใน Step แรก จึงถือว่าเป็นเหตุการณ์ที่จะไม่รอดมาถึง Step ที่สองนี้
Step ถัดไป ถ้าไม่น้อยกว่า 60 สูตร IF ก็จะเช็คต่อว่า < 70 หรือไม่? …ทำแบบนี้ไปเรื่อยๆ จนถึง Step สุดท้าย ซึ่งถ้าค่า A2 น้อยกว่า 80 ก็จะเป็นเกรด B และถ้าไม่น้อยกว่า (คือ มากกว่าหรือเท่ากับ 80) ก็จะแสดงเกรด A ได้เลย
การใช้ฟังก์ชั่นตรรกศาสตร์ซ้อนกัน
ผมขอลองยกตัวอย่างการเอา AND มาซ้อนกับ OR ดูบ้างนะครับ
เช่น =AND(เงื่อนไข1,OR(เงื่อนไข2,เงื่อนไข3))
อันนี้อาจจะดูงง แนะนำให้ ไล่ดูจากวงเล็บที่อยู่ในสุดก่อน จากนั้นค่อยไล่ออกไปชั้นนอก นะครับ
ผมทำตารางสรุปการคิดมาให้แล้ว วิธีอ่านไล่จากซ้ายไปขวานะครับ
(ผมเอาส่วนวงเล็บชั้นในไว้ทางซ้ายให้แล้ว)
| เงื่อนไข2 | เงื่อนไข3 | =OR(เงื่อนไข2,เงื่อนไข3) | เงื่อนไข1 | =AND(เงื่อนไข1,OR(เงื่อนไข2,เงื่อนไข3)) |
| TRUE | TRUE | TRUE | TRUE | TRUE |
| TRUE | FALSE | TRUE | TRUE | TRUE |
| TRUE | TRUE | TRUE | FALSE | FALSE |
| TRUE | FALSE | TRUE | FALSE | FALSE |
| FALSE | TRUE | TRUE | TRUE | TRUE |
| FALSE | FALSE | FALSE | TRUE | FALSE |
| FALSE | TRUE | TRUE | FALSE | FALSE |
| FALSE | FALSE | FALSE | FALSE | FALSE |
- แปลว่า หาก เงื่อนไข2หรือ3 อันใดอันหนึ่งเป็นจริง ผลจาก OR จะได้จริง
- และ เงื่อนไข1 ต้องเป็นจริง ด้วย เมื่อ AND กันสุดท้ายจึงจะออกมาจะเป็นจริง


















Leave a Reply