Function คืออะไร?
ฟังก์ชั่น (Function) ถ้าจะพูดให้เข้าใจง่ายๆ ก็คล้ายๆ กับ สูตรสำเร็จรูป ที่มีหน้าที่ทำสิ่งต่างๆ ที่กำหนดไว้ตามแต่ฟังก์ชั่นนั้นๆ ซึ่งฟังก์ชั่นนั้นช่วยทำให้ชีวิตเราง่ายขึ้นมากมาย ยกตัวอย่างเช่น ถ้าเราอยากหาค่าเฉลี่ยของข้อมูลในช่อง A1 ถึง A5 หากไม่ใช้ Function มาช่วยเราก็ต้องเขียนสูตรแบบนี้ = (A1+A2+A3+A4+A5)/5 แต่ถ้ามีฟังก์ชั่น แล้ว เราก็สามารถเขียนแค่
=AVERAGE(A1:A5)
เท่านั้นเองก็จะได้คำตอบเดียวกัน แต่ง่ายกว่ามาก
แต่ถ้าเป็นการคำนวณที่ซับซ้อนกว่านี้ เช่น หาค่าผ่อนบ้านแบบตัวอย่างที่แล้ว หากคุณไปนั่งเขียนสูตรเองนี่เหนื่อยตาย แต่ถ้าเปลี่ยนมาใช้ฟังก์ชั่นแทน คุณแค่เขียนสูตร
=PMT(ดอกเบี้ยต่องวด,จำนวนงวด,ยอดเงินกู้)
ก็หาคำตอบได้อย่างง่ายดาย นี่แหละครับความสำเร็จรูปซึ่งเป็นข้อดีของฟังก์ชั่นล่ะ!

การทำงานของฟังก์ชั่น (Input –> Function –> Output)

ฟังก์ชั่น ทำงานคล้ายๆ โรงงานการผลิตสินค้า ที่ต้องการ Input เข้าไปเป็นวัตถุดิบ แล้วมันจะผลิตผลลัพธ์ที่เป็น Output ออกมาให้ตามหน้าที่ของมัน โดยที่ Function แต่ละตัว สามารถมี Input (เรียกอีกชื่อ ว่า Argument) ได้หลายตัว และอาจเป็นข้อมูลคนประเภทกันก็ได้
รูปแบบการสั่งงานฟังก์ชั่น
ฟังก์ชั่น จะมีรูปแบบการสั่งงาน โดยแต่ละ Argument จะถูกคั่นด้วยเครื่องหมาย comma (,) ดังนี้ครับ
= ชื่อฟังก์ชั่น ( Argument1, Argument2, Argument3,… )
บางฟังก์ชั่นก็มีจำนวน Argument น้อย บางฟังก์ชั่นก็อาจจะมีจำนวน Argument เยอะ ซึ่งยิ่งมี Argument มากก็ยิ่งมักจะมีลูกเล่นเยอะ และมีความซับซ้อนมากกว่าฟังก์ชั่นที่ Argument น้อยๆ ครับ
เดี๋ยวผมจะยกตัวอย่างให้ดู แต่ตอนนี้ยังไม่ต้องสนใจว่าแต่ละอันเขียนยังไงนะครับ ให้ดูเฉยๆ ว่าฟังก์ชั่นแต่ละตัวอาจมีจำนวน Argument ไม่เท่ากัน ยิ่งเยอะยิ่งซับซ้อนและใช้งานยากกว่า เช่น
- ไม่มี Argument เช่น =TODAY() เอาไว้หาวันที่ปัจจุบัน
- มี 1 Argument เช่น =NOT(logical) เอาไว้กลับค่า TRUE เป็น FALSE (หรือในทางกลับกัน)
- มี 2 Argument เช่น =LEFT(text,[num_chars]) เอาไว้ตัดคำจากทางซ้าย
- มี 3 Argument เช่น =MATCH(lookup_value,lookup_array,[match_type]) เอาไว้หาค่าที่ต้องการว่าอยู่ลำดับเท่าไหร่
- มี 4 Argument เช่น =SUBSTITUTE( text , old_text , new_text , [instance_num] ) เอาไว้แทนค่าหนึ่งด้วยอีกคำหนึ่ง
เมื่อคุณเขียนฟังก์ชั่นลงใน Cell ไหนก็ตาม ผลลัพธ์ก็จะถูกคำนวณออกมาใน Cell นั้นๆ เช่นเดียวกับการเขียนสูตรตามปกติครับ (แต่อาจดึงค่าจาก Cell อื่นมาคำนวณได้)
สำหรับคนที่เพิ่งใช้งานฟังก์ชั่นใน Excel ใหม่ๆ อาจจะยังไม่ถนัดการเขียนฟังก์ชั่นลงไปตรงๆ ใน Formula Bar ซึ่ง Excel ก็ไม่ได้ใจร้ายเกินไปครับ เค้าเลยมีวิธีการสั่งงานฟังก์ชั่นโดยที่เราไม่ต้องมานั่งเขียนเองด้วย
นั่นแปลว่าจริงๆ คุณสามารถสั่งงานฟังก์ชั่นได้ 2 แบบ คือ
- การใช้งานฟังก์ชั่นโดยใช้เครื่องมือบน Ribbon (เหมาะกับผู้เริ่มต้น เพราะมีตัวช่วยเยอะ)
- เขียนสูตรเอง (เหมาะกับผู้ที่ชำนาญแล้ว เพราะวิธีนี้เร็วกว่าเยอะครับ)
การใช้งานฟังก์ชั่นโดยใช้เครื่องมือบน Ribbon
เราสามารถเลือกฟังก์ชั่นที่ต้องการได้จากเมนูที่อยู่บน Ribbon ใน [Formulas] –> Function Library
ซึ่งเราเลือกได้ 2 วิธี คือ 1.กดปุ่ม Insert Function 2.เลือกฟังก์ชั่นจาก Function Library
กดปุ่ม Insert Function
เพื่อค้นหาฟังก์ชั่นที่ต้องการ (หรือจะกดปุ่ม fx ที่อยู่ข้างซ้ายของ Formula Bar ก็ได้)

ในเมื่อ Excel นั้นมีฟังก์ชั่นให้เลือกอยู่มากมาย การค้นหาฟังก์ชั่นจะช่วยได้พอสมควรเลยล่ะ วิธีการคือให้พิมพ์ลักษณะของฟังก์ชั่นที่ต้องการในช่องค้นหา (Search for a function: )
พอกด Enter มันจะ List ฟังก์ชั่นทั้งหมดที่เกี่ยวกับคำนั้นมาให้ จากนั้นค่อยอ่านคำบรรยายด้านล่างเอาว่าใช้สิ่งทีต้องการหรือไม่

เลือกฟังก์ชั่นจาก Function Library
จะเห็นว่ามีการแบ่งประเภทฟังก์ชั่นเอาไว้แยกตามหมวดการใช้งาน

เมื่อเลือกฟังก์ชั่นที่ต้องการแล้ว มันจะขึ้นตัวช่วยในการใช้ Function นั้นๆ ขึ้นมา (หน้าต่าง Function Argument) โดยที่มันจะบอกว่า Argument ที่ต้องใส่มีกี่ตัว แต่ละตัวต้องการข้อมูลประเภทอะไร
สมมติว่าผมเลือกฟังก์ชั่น LEFT ที่อยู่ใน [Formulas] –> Function Library –>Text

อธิบายความสามารถของฟังก์ชั่นโดยรวม
Excel จะอธิบายว่า ฟังก์ชั่น LEFT เอาไว้แสดงบางส่วนของคำที่เราต้องการ โดยนับจากทางซ้ายมือด้วยจำนวนอักขระที่กำหนด เช่น อยากให้แสดงค่า 4 ตัวจากทางซ้าย ของคำว่า ironman ก็จะได้คำว่า iron นั่นเอง
อธิบายรายละเอียดแต่ละ Arguments
Text ต้องการข้อมูลประเภท Text (ตัวหนังสือ) ส่วน Num_chars ต้องการข้อมูลประเภท Number (ตัวเลข) ซึ่ง
- Input ตัวไหนเป็นตัวที่จำเป็นต้องใส่ จะขึ้นเป็นตัวหนา
- Input ตัวไหนเป็น Optional จะขึ้นเป็นตัวปกติ
จะเห็นว่าฟังก์ชั่น LEFT มี Input ได้ 2 ตัวคือ Text และ Num_chars ซึ่ง Text เป็นตัวหนา แปลว่าเป็น Input ที่จำเป็นต้องระบุ ส่วน Num_chars เป็น Optional ไม่จำเป็นต้องระบุ
หากลองเอา Mouse กดใน Argument แต่ละช่อง จะมีคำอธิบายรายละเอียดให้ว่าแต่ละ Argument ต้องใส่ค่าอะไรลงไป เช่น
ตอนแรกตอนผมคลิ๊กฟังก์ชั่นขึ้นมา มันจะอธิบาย Argument แรกให้ ซึ่งคือ Text โดยบอกว่า มันคือข้อความที่เราต้องการจะตัดคำออกมานั่นเอง
แต่เมื่อผมลองคลิ๊กที่ช่อง Num_chars บ้าง…

Excel ก็จะบอกว่า ในช่อง Num_chars คือจำนวนตัวอักษรที่ต้องการให้ Function LEFT ดึงออกมาแสดงให้ และหากเป็นช่อง Optional มันจะบอกด้วยว่าถ้าเราไม่ใส่ค่าอะไรลงไป มันจะใช้ค่าอะไรเป็นค่า Default เช่น ในกรณี Num_chars ของ LEFT นี้จะเป็นเลข 1 (ดึงออกมา 1 ตัวอักษร)
ซึ่งถ้ายังไม่แน่ใจอีกว่า Function ใช้งานยังไง ให้กด Help on this function ที่อยู่มุมซ้ายล่างได้เลย จะมีตัวอย่างเป็นรูปให้ดูด้วย
ตัวอย่างการสั่งงาน
ผลลัพธ์ที่อยากได้ : อยากให้ Excel แสดงข้อความ 4 ตัวอักษรจากทางซ้าย ของคำว่า ironman
วิธีสั่งงาน : เนื่องจากอยากได้ข้อความ “ทางซ้าย” ผมจึงต้องใช่ฟังก์ชั่น LEFT โดยใส่ในแต่ละ Argument ดังนี้

- Text : ใส่คำว่า ironman (ช่องนี้ต้องการ Data ประเภท Text) มันจะใส่ “” ครอบให้เอง
- Num_chars : ใส่เลข 4 (ช่องนี้ต้องการ Data ประเภท Number)
เมื่อ OK จะได้ผลลัพธ์เป็นคำว่า iron ตามต้องการ
ซึ่งจะเห็นว่าใน Formula Bar มีสูตรขึ้นมาว่า
=LEFT("ironman",4)
ซึ่งเราสามารถพิมพ์สูตรแบบนี้ลงไปตรงๆได้ เช่นเดียวกับวิธีที่จะแนะนำถัดไป นั่นคือ วิธีการสั่งงานโดยพิมพ์สูตร นั่นเอง
สั่งงานโดยพิมพ์สูตร Function ลงไปใน Formula Bar โดยตรง
วิธีการคือพิมพ์ = ตามด้วยชื่อ Function ลงไปใน Cell ที่ต้องการให้สูตรแสดงผลลัพธ์ ซึ่งพอเริ่มพิมพ์ไป 1 ตัวอักษร เช่น L มันจะขึ้นชื่อ Function ทุกตัวที่ขึ้นต้นด้วย L มาให้เลือก ซึ่งเราสามารถพิมพ์ต่อไปอีก เช่น =LE มันก็จะกรองฟังก์ชั่นให้แสดงเหลือน้อยลงอีก


เราสามารถใช้ปุ่มลูกศรบน Keyboard เลื่อนไปเลือก ฟังก์ชั่นตัวที่ต้องการ จากนั้นกด Tab เพื่อเลือกใช้ได้เลย สมมติผมเลือกคำว่า LEFT เหมือนเดิม

Excel จะแสดงตัวช่วย (Function Tooltip) ที่แสดงวิธีการกรอกฟังก์ชั่นมาให้ดูโดยคั่นแต่ละ Arguments ด้วย comma (,) ซึ่งที่เราสามารถเอา Mouse ลาก Function Tooltip ไปมาได้ หากมันบังช่องที่เราจะมอง
วิธีการอ่าน Argument จาก Function Tooltip
- Input ตัวไหนเป็นตัวที่จำเป็นต้องใส่ จะขึ้นเป็นตัวหนา
- Input ตัวไหนเป็น Optional จะมีเครื่องหมาย [ ครอบอยู่ ]
ดังนั้นถ้าผมจะดึง 4 ตัวแรกจากคำว่า ironman ก็ต้องใส่สูตรว่า
=LEFT("ironman",4)
นั่นเอง
Tips : จะเห็นว่า เราต้องใส่เครื่องหมายคำพูด (.) ครอบคำว่า ironman อันนี้เพื่อบอก Excel ว่าคำว่า ironman เป็น Text ไม่ใช่ชื่อของ Cell/Range ที่ถูกตั้งเอาไว้ ซึ่งต่างจากวิธีใช้ Ribbon ที่ Excel จะใส่เครื่องหมายคำพูดครอบให้เอง
Tips2 : หากบางท่านอยากให้ Excel ใส่ทุก Argument ลงไปในสูตรให้ก่อนเลย สามารถกด Ctrl+Shit+A ได้ครับ