เคยเจอไฟล์ Excel ที่มีคนกรอกอายุเป็น “25 ปี” บ้าง กรอกวันที่ผิดฟอร์แมตบ้าง หรือกรอกรหัสพนักงานยาวสั้นไม่เท่ากันไหมครับ ปัญหานี้ป้องกันได้ตั้งแต่ต้นทางด้วย Data Validation ฟีเจอร์ที่ตั้งเงื่อนไขให้เซลล์รับได้เฉพาะข้อมูลที่ถูกต้องเท่านั้น บทความนี้เจาะเฉพาะการจำกัดตัวเลข ช่วงวันที่ ความยาวข้อความ และเงื่อนไขกำหนดเอง (ถ้าต้องการทำเมนูให้เลือกแทนการพิมพ์ ดูวิธีทำ Dropdown List แยกได้ที่ท้ายบทความ)
Data Validation มีกี่แบบ เลือกใช้ยังไง
เปิดจากแท็บ Data บน Ribbon แล้วกด Data Validation ในช่อง Allow จะมีตัวเลือกหลักๆ ดังนี้
| Allow | ใช้ตอนไหน |
| Whole Number | จำกัดให้กรอกได้เฉพาะเลขจำนวนเต็ม เช่น อายุ, จำนวนชิ้น |
| Decimal | จำกัดตัวเลขทศนิยม เช่น ราคาสินค้า, น้ำหนัก |
| Date | จำกัดให้กรอกได้เฉพาะช่วงวันที่ที่กำหนด |
| Text Length | จำกัดจำนวนตัวอักษร เช่น รหัสพนักงาน 6 หลักเป๊ะ |
| List | ทำเป็นเมนู Dropdown ให้เลือกแทนการพิมพ์ |
| Custom | ตั้งเงื่อนไขเองด้วยสูตร เหมาะกับกรณีซับซ้อนที่ตัวเลือกด้านบนไม่ครอบคลุม |
ตัวอย่าง: จำกัดตัวเลขให้อยู่ในช่วงที่กำหนด
สมมติต้องกรอกคะแนนสอบที่ต้องอยู่ระหว่าง 0-100 เท่านั้น ตั้งค่าใน Data Validation เป็น Allow: Whole Number, Data: between, Minimum: 0, Maximum: 100
| A | B | |
|---|---|---|
| 1 | ชื่อนักเรียน | คะแนนสอบ |
| 2 | น้องมิว | 120 |
| 3 | น้องปาล์ม | 85 |
ส่วนแถวที่ 3 กรอก 85 ซึ่งอยู่ในช่วง 0-100 จึงกรอกผ่านได้ปกติ วิธีนี้ช่วยกันเคสกรอกเกินขอบเขตที่ควรจะเป็นได้ตั้งแต่ต้นทาง โดยไม่ต้องมานั่งไล่เช็คทีหลัง
ตัวอย่าง: จำกัดความยาวข้อความให้ตรงตามที่กำหนด
ถ้าต้องกรอกรหัสพนักงานที่ต้องมี 6 หลักเป๊ะ ตั้งค่าเป็น Allow: Text Length, Data: equal to, Length: 6
| A | B | |
|---|---|---|
| 1 | รหัสพนักงาน | ชื่อ-สกุล |
| 2 | EMP12 | สมชาย ใจดี |
| 3 | EMP001 | สมหญิง รักงาน |
ตั้งข้อความแจ้งเตือนให้เข้าใจง่ายขึ้น
ใน Data Validation มีอีก 2 แท็บที่ช่วยให้คนกรอกข้อมูลไม่งงเวลาเจอข้อจำกัด
| แท็บ | ใช้ทำอะไร |
| Input Message | ข้อความเตือนที่โผล่ขึ้นทันทีที่คลิกเข้าเซลล์ บอกล่วงหน้าว่าต้องกรอกแบบไหน |
| Error Alert (Stop) | บล็อกไม่ให้กรอกค่าที่ผิดเงื่อนไขได้เลย ต้องแก้ก่อนถึงจะกดออกจากเซลล์ได้ |
| Error Alert (Warning) | เตือนว่าค่าที่กรอกผิดเงื่อนไข แต่ยังเลือกกรอกต่อได้ถ้ายืนยัน |
| Error Alert (Information) | แจ้งเตือนเบาๆ ไม่บล็อกการกรอก เหมาะกับกรณีแค่อยากเตือนไว้เฉยๆ |
สำหรับข้อมูลสำคัญที่พลาดไม่ได้ เช่น รหัสพนักงานหรือคะแนนสอบ แนะนำให้ใช้สไตล์ Stop เพื่อกันไม่ให้ข้อมูลผิดหลุดเข้าไปในตารางตั้งแต่แรก
Custom Formula: ตั้งเงื่อนไขซับซ้อนขึ้นด้วยสูตร
ถ้าต้องการเงื่อนไขที่ตัวเลือกสำเร็จรูปไม่ครอบคลุม เช่น กันไม่ให้กรอกรหัสซ้ำกับที่มีอยู่แล้ว ให้เลือก Allow: Custom แล้วใส่สูตรที่ต้องคืนค่า TRUE/FALSE
=COUNTIF($A$2:$A$10,A5)=1| A | |
|---|---|
| 1 | รหัสพนักงาน |
| 2 | EMP001 |
| 3 | EMP002 |
| 5 | EMP001 |
สูตรนี้ใช้ COUNTIF นับว่ารหัสที่กำลังกรอกซ้ำกับรหัสที่มีอยู่แล้วในช่วง A2:A10 กี่ครั้ง ถ้านับได้มากกว่า 1 (แปลว่าซ้ำ) สูตรจะคืนค่า FALSE และ Excel จะไม่ยอมให้กรอกค่านั้น เหมาะมากกับตารางที่ต้องการให้แต่ละแถวมีรหัสไม่ซ้ำกัน
ข้อควรระวัง
Data Validation ตรวจสอบเฉพาะข้อมูลที่กรอกใหม่หลังตั้งเงื่อนไขเท่านั้น ข้อมูลเดิมที่กรอกไว้ก่อนหน้าจะไม่ถูกเช็คย้อนหลัง ต้องกดปุ่ม Circle Invalid Data ในแท็บ Data เพื่อให้ Excel วงกลมสีแดงล้อมรอบเซลล์ที่ผิดเงื่อนไขให้เห็นทีหลังได้ นอกจากนี้การ Copy-Paste ข้อมูลจากที่อื่นทับลงมาอาจข้ามการตรวจสอบไปได้ในบางกรณี จึงควรใช้คู่กับ Conditional Formatting เพื่อไฮไลต์ข้อมูลผิดปกติเป็นเช็คอีกชั้นด้วย
สรุป
Data Validation ช่วยกันข้อมูลผิดตั้งแต่ต้นทางโดยไม่ต้องมานั่งไล่ตรวจทีหลัง เลือกใช้ Whole Number/Decimal/Date/Text Length ตามชนิดข้อมูล หรือใช้ Custom Formula เมื่อต้องการเงื่อนไขที่ซับซ้อนขึ้น ถ้าต้องการทำเมนูให้เลือกข้อมูลแทนการพิมพ์เอง อ่านต่อได้ที่ วิธีทำ Dropdown List ใน Excel และดู COUNTIFS และ SUMIFS เพื่อนำไปประยุกต์ใช้ตรวจสอบข้อมูลเพิ่มเติม