วันอังคารที่ 13 กุมภาพันธ์ พ.ศ. 2567

Excel - สูตรใหม่ที่น่าสนใจใน Excel365

 Introduction

    โปรแกรม Microsoft Excel เป็นอีกหนึ่งโปรแกรมสำคัญ ซึ่งมีความสามารถหลากหลาย ทั้งทางด้านงานคำนวณ การจัดทำแบบฟอร์มต่างๆ  ประเด็นสำคัญที่จะนำเสนอในบทความนี้คือ สองคำสั่งใหม่ที่ชื่อ UNIQUE และ FILTER ที่มีมาให้ใน Microsoft Excel 365   ทั้งสองคำสั่งเป็นรูปแบบคำสั่ง Array Formular  ซึ่งทำการรับค่าและแสดงผลในรูปแบบ Array

คำสั่ง UNIQUE

    คำสั่งนี้ใช้ค่าที่ซ้ำกันในชุดข้อมูล ก่อนมีคำสั่งนี้เราอาจคุ้นเคยกับการใช้ function ที่ชื่อ "remove duplicates"  ซึ่งต้อง copy ชุดข้อมูลมาวางใน column ใหม่ แล้วจึงใช้เครื่องมือ remove duplicates ในการแยกข้อมูลอีกครั้ง ซึ่งผลลัพที่ได้ก็จะเป็นแบบ static  ค่าจะไม่ปรับเปลี่ยนตามชุดข้อมูลที่อาจเปลี่ยนแปลงไป  ดังนั้นเมื่อมีการเปลี่ยนชุดข้อมูล ก็ต้องไปเริ่มกระบวนการใหม่

    ส่วนคำสั่ง UNIQUE ที่มาใหม่นี้  ช่ว่ยให้การแยกค่าซ้ำกลายเป็นเรื่องง่ายๆ และผลลัพธ์เป็นแบบ Dynamic ซึ่งปรับเปลี่ยนตามชุดข้อมูลที่มีการเปลี่ยนแปลง  การใช้งานคำสั่งมีลักษณะดังนี้

    1. มีชุดข้อมูลเรียงกันใน column เดียว



    2. พิมพ์คำสั่ง UNIQUE ในช่องที่ต้องการแสดงผลลัพธ์  >> เลือกช่วงขุดข้อมูล  >> จากนั้นกด Enter จะได้ผลลัพธ์ที่ต้องการ




คำสั่ง FILTER

    ถ้าใครเคยใช้งาน Table จะเห็นว่าเราสามารถเลือกกรองข้อมูลได้ โดยกดเลือกปุ่ม Filter ที่หัวตารางก็จะสามารถเลือกแสดงข้อมูลเฉพาะที่ต้องการ  ลักษณะเป็นการซ่อนแถวที่ไม่ต้องการไว้เท่านั้น ชุดข้อมมูลจริงยังมีขนาดเท่าเดิม  ซึ่งถ้าเราต้องการนำค่าชุดข้อมูลที่กรองแล้วไปทำการคำนวณต่อ เราก็ต้อง copy  ชุดข้อมูลที่กรองแล้วนั้น ไปวางใน sheet ใหม่  ซึ่งเราจะพบปัญหาเดิมคือเมื่อข้อมูลเปลี่ยน ก็ต้องตั้ง filter ใหม่ แล้วก็ copy ข้อมูลไปใช้ใหม่  

    ตัวอย่างการใช้งาน Filter หัวตาราง ตามวิธีการดั้งเดิม แสดงดังต่อไปนี้

1. มีข้อมูลตั้นต้นในรูปแบบตาราง


2. เลือกใช้ตัวกรอง (Filter) >> กำหนดค่าตัวกรอง

    


3. ผลลัพธ์ที่ได้  จะเห็นว่าเซลล์ที่ไม่ต้องการถูกซ่อนไว้


    ส่วนคำสั่ง FILTER ที่มาใหม่นี้ ทำให้การย่อชุดข้อมูลง่ายขึ้นมาก และผลลัพธ์เป็น Dynamic คือ ถ้าชุดข้อมูลเปลี่ยนผลลัพธ์ก็เปลี่ยนตามไปด้วย   ลักษณะการใช้งานดังต่อไปนี้

1. มีชุดข้อมูลเป็นรูปแบบตาราง ( จะกำหนดให้เป็น Table หรือไม่เป็น Table ก็ได้ )

2. พิมพ์คำสั่ง FILTER ในช่องที่ต้องการแสดงผลลัพธ์ โครงสร้างของตัวแปรมีดังต่อไปนี้ 

     - ตัวแปรที่ 1 เป็นช่วงเขตข้อมูลที่ต้องการแสดงผลลัพธ์

     - ตัวแปรที่ 2 เป็นเงื่อนไขการกรองข้อมูล ซึ่งถ้ามีมากกว่า 1 เงื่อนไขให้ใช้การแยกวงเล็บกันแล้วเชื่อมด้วยเครื่องหมายคูณ (*) 





    3.    ทำการ copy สูตรไปจนครบ column ของตาราง  ซึ่งสูตรที่วางใหม่นั้น ต้องแก้เขตข้อมูลให้เป็นชื่อ field ของ column นั้น





    4.    จะเห็นว่าได้ผลลัพธ์เหมือนกับการใช้ Filter หัวตารางแบบเก่า  แต่จะแตกต่างกันที่ การใช้คำสั่ง Filter จะไม่ได้ไปยุ่งกับตารางเดิม แต่เป็นการกรองข้อมูลออกมาแสดงผลใน เซลล์ใหม่


เมื่อผลลัพธ์แสดงข้อผิดพลาด #SPILL!

    ข้อผิดพลาดนี้จะเกิดขั้นเมื่อ  ไม่มีจำนวนช่องว่างมากพอสำหรับแสดงผล Array  ซึ่งเกิดจากมีเซลล์ที่มีค่าไปขวางช่องแสดงผล  วิธีแก้คือย้ายเซลล์ที่ขวางนั้นออกไปให้พ้นจำนวน Array หรือย้ายไปอยู่ column อื่น