ข้ามไปเนื้อหาหลัก
Wise Success (Thailand)
เทคนิค Excel

วิธีทำ Dropdown List ใน Excel ด้วย Data Validation (รวม Dropdown 2 ชั้น)

· อ่านประมาณ 10 นาที

ไฟล์ Excel ที่หลายคนช่วยกันกรอกมักมีปัญหาเดียวกัน คือคนหนึ่งพิมพ์ "บัญชี" อีกคนพิมพ์ "ฝ่ายบัญชี" อีกคนพิมพ์ "Acc" พอนำไปสรุปด้วย Pivot Table หรือ SUMIFS ตัวเลขก็แตกเป็นหลายกลุ่ม วิธีแก้ที่ต้นเหตุคือทำ Dropdown List ให้เลือกแทนการพิมพ์ ด้วยเครื่องมือ Data Validation ของ Excel

บทความนี้สอนทำ Dropdown ตั้งแต่แบบพื้นฐาน แบบดึงรายการจากตารางที่เพิ่มรายการได้เอง Dropdown 2 ชั้น (เลือกหมวดแล้วรายการย่อยเปลี่ยนตาม) และการใช้ Data Validation ป้องกันข้อมูลผิดแบบอื่น

Data Validation คืออะไร

Data Validation คือการกำหนดกฎว่าเซลล์นั้นรับข้อมูลแบบไหนได้บ้าง เช่น เลือกจากรายการเท่านั้น ตัวเลขระหว่าง 1–100 วันที่ในปีนี้ หรือข้อความไม่เกิน 10 ตัวอักษร ถ้ากรอกผิดกฎ Excel จะแจ้งเตือนหรือไม่ยอมให้บันทึก อยู่ที่แท็บ Data > Data Validation

วิธีที่ 1: Dropdown แบบพิมพ์รายการเอง

เหมาะกับรายการสั้น ๆ ที่ไม่ค่อยเปลี่ยน เช่น สถานะงาน

  1. เลือกเซลล์ที่ต้องการทำ Dropdown เช่น D2:D500
  2. ไปที่ Data > Data Validation
  3. ช่อง Allow เลือก List
  4. ช่อง Source พิมพ์รายการคั่นด้วยจุลภาค: รอดำเนินการ,กำลังทำ,เสร็จแล้ว,ยกเลิก
  5. กด OK

ข้อเสียคือเมื่ออยากเพิ่มตัวเลือกต้องเข้ามาแก้ใน Data Validation ทุกครั้ง

วิธีที่ 2: Dropdown ดึงจากรายการในชีต (แนะนำ)

  1. สร้างชีตชื่อ "รายการ" แล้วพิมพ์รายชื่อแผนกในคอลัมน์ A เริ่มที่ A1 เป็นหัวคอลัมน์ "แผนก"
  2. คลิกในรายการแล้วกด Ctrl + T แปลงเป็น Table ตั้งชื่อ Table ว่า tblDept (แท็บ Table Design > Table Name)
  3. เลือกเซลล์ที่จะทำ Dropdown ไปที่ Data > Data Validation > Allow: List
  4. ช่อง Source ใส่ =INDIRECT("tblDept[แผนก]")

เมื่อเพิ่มแผนกใหม่ต่อท้าย Table รายการใน Dropdown จะเพิ่มตามอัตโนมัติ ไม่ต้องแก้อะไรอีก

ทางเลือก: เลือกช่วงรายการแล้วตั้งชื่อในช่อง Name Box (ซ้ายของแถบสูตร) เช่น DeptList แล้วใส่ Source เป็น =DeptList ก็ได้ แต่ช่วงจะไม่ขยายเองเหมือน Table

วิธีที่ 3: Dropdown 2 ชั้น (Dependent Dropdown)

เช่น เลือก หมวดสินค้า ใน B2 แล้ว Dropdown สินค้า ใน C2 แสดงเฉพาะสินค้าในหมวดนั้น

แบบที่ใช้ได้ทุกเวอร์ชัน: INDIRECT

  1. ในชีต "รายการ" ทำคอลัมน์ละหมวด หัวคอลัมน์เป็นชื่อหมวด เช่น คอมพิวเตอร์, อุปกรณ์สำนักงาน และรายการสินค้าอยู่ด้านล่าง
  2. เลือกแต่ละคอลัมน์ (เฉพาะรายการสินค้า) แล้วตั้งชื่อช่วงให้ตรงกับชื่อหมวด หรือเลือกทั้งตารางแล้วใช้ Formulas > Create from Selection > Top row
  3. B2 ทำ Dropdown หมวดตามวิธีที่ 2
  4. C2 ทำ Data Validation > List และใส่ Source เป็น =INDIRECT(B2)

ข้อจำกัด: ชื่อช่วงต้องไม่มีเว้นวรรคและห้ามขึ้นต้นด้วยตัวเลข ถ้าชื่อหมวดมีเว้นวรรค Excel จะเปลี่ยนเป็นขีดล่างให้ ต้องใช้ =INDIRECT(SUBSTITUTE(B2," ","_"))

แบบ Microsoft 365: FILTER + UNIQUE

ถ้ามีตารางสินค้าแบบ 2 คอลัมน์ (หมวด, สินค้า) ในชีต "รายการ" ช่วง A2:B200

  1. ในเซลล์ว่าง เช่น รายการ!E2 ใส่ =UNIQUE(A2:A200) ได้รายชื่อหมวดไม่ซ้ำ
  2. ในรายการ!F2 ใส่ =FILTER(B2:B200, A2:A200=ฟอร์ม!B2) ได้สินค้าเฉพาะหมวดที่เลือก
  3. Dropdown หมวดใช้ Source =รายการ!$E$2# และ Dropdown สินค้าใช้ =รายการ!$F$2#

เครื่องหมาย # คืออ้างอิงผลลัพธ์ที่ล้น (Spill) ทั้งหมด วิธีนี้ไม่ต้องตั้งชื่อช่วงทีละหมวด แต่ใช้ได้กับแถวฟอร์มทีละแถว ถ้าต้องการหลายแถวที่เลือกหมวดต่างกัน แบบ INDIRECT จะเหมาะกว่า

ใช้ Data Validation ป้องกันข้อมูลผิดแบบอื่น

ต้องการAllowตั้งค่า
จำนวนเป็นจำนวนเต็ม 1–999Whole numberbetween 1 and 999
ส่วนลดไม่เกิน 30%Decimalbetween 0 and 0.3
วันที่ต้องไม่เกินวันนี้Dateless than or equal to =TODAY()
เลขบัตรประชาชน 13 หลักText lengthequal to 13
ห้ามกรอกรหัสซ้ำCustom=COUNTIF($A:$A, A2)=1

ตั้งข้อความแนะนำและข้อความเตือน

  • แท็บ Input Message แสดงคำแนะนำเมื่อคลิกเซลล์ เช่น "เลือกแผนกจากรายการ"
  • แท็บ Error Alert กำหนดข้อความเมื่อกรอกผิด และเลือกระดับ Stop (ห้ามบันทึก), Warning (เตือนแต่ให้ยืนยันได้) หรือ Information (แจ้งเฉย ๆ)

ตรวจหาข้อมูลเก่าที่ผิดกฎ

Data Validation ไม่ตรวจข้อมูลที่กรอกไว้ก่อนตั้งกฎ และไม่กันการวางข้อมูลทับ (Paste) ให้ไปที่ Data > Data Validation > Circle Invalid Data Excel จะวงกลมสีแดงรอบเซลล์ที่ไม่ตรงกฎให้แก้ไข

คำถามที่พบบ่อย

ลบ Dropdown ออกอย่างไร

เลือกเซลล์ ไปที่ Data Validation แล้วกด Clear All

คัดลอก Dropdown ไปเซลล์อื่นได้ไหม

ได้ คัดลอกเซลล์ แล้วใช้ Paste Special > Validation เพื่อวางเฉพาะกฎโดยไม่ทับข้อมูลเดิม

Dropdown ค้นหาด้วยการพิมพ์ได้ไหม

Microsoft 365 และ Excel สำหรับเว็บรุ่นใหม่รองรับการพิมพ์ตัวอักษรแรกเพื่อกรองรายการใน Dropdown ได้ ส่วนเวอร์ชันเก่าต้องเลื่อนเลือกจากรายการ

สรุป

Dropdown List คือวิธีที่ง่ายและได้ผลที่สุดในการทำให้ข้อมูลสะอาดตั้งแต่ต้นทาง ใช้ Table เป็นแหล่งรายการเพื่อให้เพิ่มตัวเลือกได้เอง ใช้ INDIRECT หรือ FILTER ทำ Dropdown 2 ชั้น และเสริมด้วยกฎ Data Validation อื่น ๆ ข้อมูลที่สะอาดจะทำให้ Pivot Table และ SUMIFS ให้ตัวเลขที่ถูกต้อง

Data Validation, Conditional Formatting และการป้องกัน Worksheet อยู่ในหลักสูตรอบรม Excel Advance สำหรับองค์กรที่อยากให้ทีมสร้างฟอร์มกรอกข้อมูลมาตรฐานเดียวกัน ดูรายละเอียดอบรม Excel In-house

บทความที่เกี่ยวข้อง

เทคนิค Excel ·

Power Query คืออะไร? รวมไฟล์ Excel หลายไฟล์อัตโนมัติ ไม่ต้องคัดลอกวาง

Power Query คือเครื่องมือใน Excel ที่รวมและล้างข้อมูลจากหลายไฟล์ได้อัตโนมัติ ตั้งขั้นตอนครั้งเดียว เดือนถัดไปแค่กด Refresh บทความนี้สอนทีละขั้นพร้อมเทคนิคที่ใช้บ่อย

อ่านต่อ →

เทคนิค Excel ·

สูตรคำนวณอายุงานใน Excel ด้วย DATEDIF และสูตรวันที่สำหรับงาน HR

รวมสูตร Excel สำหรับงาน HR ตั้งแต่คำนวณอายุงานด้วย DATEDIF อายุพนักงาน วันครบทดลองงาน วันเกษียณ นับวันทำงานด้วย NETWORKDAYS และคำนวณสิทธิ์ตามอายุงาน

อ่านต่อ →

เทคนิค Excel ·

สูตร IF หลายเงื่อนไขใน Excel: IF ซ้อน, IFS, AND, OR พร้อมตัวอย่าง

สอนใช้สูตร IF หลายเงื่อนไขใน Excel ตั้งแต่ IF พื้นฐาน AND, OR, IF ซ้อน ไปจนถึง IFS และ SWITCH พร้อมตัวอย่างงานจริงและวิธีเขียนสูตรให้สั้น แก้ไขง่าย

อ่านต่อ →

ต้องการจัดอบรมให้ทีมในองค์กร?

ปรับเนื้อหาให้ตรงกับงานจริงของทีมคุณ สอนที่บริษัทหรือ Online ได้ ส่งรายละเอียดมา เราตอบกลับพร้อมใบเสนอราคา

☎ โทรเลย LINE @wisesuccess

เลือกประเภทคุกกี้ที่คุณอนุญาต ปรับเปลี่ยนได้ทุกเมื่อที่ลิงก์ "ตั้งค่าคุกกี้" ท้ายเว็บไซต์