Dropdown (รายการแบบเลือก) เป็นฟีเจอร์สำคัญใน Google Sheet ที่ช่วยให้การกรอกข้อมูลรวดเร็วและถูกต้องมากขึ้น แทนที่จะพิมพ์ข้อมูลเองทุกครั้ง ผู้ใช้เพียงคลิกเลือกจากรายการที่กำหนดไว้ ลดโอกาสพิมพ์ผิดและทำให้ข้อมูลมีความสม่ำเสมอ
ไม่ว่าจะใช้ Google Sheet ทำระบบติดตามงาน บัญชีรายรับ-รายจ่ายหรือฐานข้อมูลลูกค้า การสร้าง Dropdown ด้วย Data Validation จะช่วยให้ไฟล์ของเราเป็นมืออาชีพมากขึ้น และทำงานร่วมกับสูตรอื่นๆ เช่น SUMIF, COUNTIF, VLOOKUP ได้อย่างถูกต้อง
สิ่งที่จะได้เรียนรู้ในบทความนี้
- สร้าง Dropdown 3 วิธี: พิมพ์เอง, อ้างอิงเซลล์, Named Ranges
- สร้าง Dependent Dropdown (Dropdown หลายระดับ) เช่น จังหวัด → อำเภอ
- ใช้ Dropdown ร่วมกับ Conditional Formatting เปลี่ยนสีอัตโนมัติ
- ใช้ Dropdown ร่วมกับ VLOOKUP ดึงข้อมูลอัตโนมัติ
เนื้อหาในบทความ
วิธีที่ 1: สร้าง Dropdown แบบพิมพ์รายการเอง (List of Items)
วิธีนี้เหมาะสำหรับรายการที่มีตัวเลือกไม่กี่รายการและไม่ค่อยเปลี่ยนแปลง เช่น สถานะงาน (Done, In Progress, Not Started) หรือประเภทรายการ (รายรับ, รายจ่าย) เป็นวิธีที่ง่ายและเร็วที่สุดในการสร้าง Dropdown ใน Google Sheet
ขั้นตอนการสร้าง
เลือกเซลล์ที่ต้องการสร้าง Dropdown
คลิกที่เซลล์ที่ต้องการ หรือลากเลือกหลายเซลล์พร้อมกัน เช่น เลือก B2:B100 เพื่อสร้าง Dropdown ให้ทั้งคอลัมน์
เปิด Data Validation
ไปที่เมนู Data → Data validationหน้าต่าง Data validation จะเปิดขึ้นทางด้านขวา
คลิก "Add rule"
คลิกปุ่ม + Add rule เพื่อเพิ่มกฎ Data Validation ใหม่
เลือก Criteria เป็น "Dropdown"
ในส่วน Criteria ให้เลือก Dropdown (ค่าเริ่มต้นมักจะเป็น Dropdown อยู่แล้ว)
พิมพ์รายการตัวเลือก
พิมพ์ตัวเลือกแต่ละรายการลงในช่อง เช่น Done, In Progress, Not Started คลิก "Add another item" เพื่อเพิ่มตัวเลือก สามารถเลือกสี Chip ให้แต่ละตัวเลือกได้ด้วย
คลิก "Done"
เซลล์ที่เลือกจะแสดง Dropdown ให้คลิกเลือกรายการได้ทันที สังเกตจะมีสัญลักษณ์ลูกศรชี้ลงในเซลล์
ตัวอย่างการใช้งาน
| กรณีใช้งาน | รายการ Dropdown |
|---|---|
| สถานะงาน | Done, In Progress, Not Started |
| สถานะการอนุมัติ | อนุมัติ, รอดำเนินการ, ไม่อนุมัติ |
| ระดับความสำคัญ | สูง, ปานกลาง, ต่ำ |
| ประเภทรายการ | รายรับ, รายจ่าย |
ข้อดีและข้อจำกัด
ตั้งค่าได้เร็ว เหมาะกับรายการสั้นๆ 3-10 รายการที่ไม่ค่อยเปลี่ยนแปลง แต่ถ้าต้องเพิ่มรายการบ่อยๆ หรือมีตัวเลือกมากกว่า 10 รายการ แนะนำให้ใช้วิธีที่ 2 (อ้างอิงจากช่วงเซลล์) แทน เพราะจัดการรายการได้สะดวกกว่า
วิธีที่ 2: สร้าง Dropdown จากช่วงเซลล์ (List from a Range)
วิธีนี้เหมาะสำหรับรายการที่มีตัวเลือกจำนวนมากหรือต้องเพิ่มรายการใหม่บ่อยๆ โดยเก็บรายการตัวเลือกไว้ในคอลัมน์หนึ่ง แล้วให้ Dropdown อ้างอิงไปยังคอลัมน์นั้น เมื่อเพิ่มข้อมูลใหม่ในคอลัมน์ Dropdown จะอัปเดตตามอัตโนมัติ
ขั้นตอนการสร้าง
เตรียมรายการตัวเลือกไว้ในคอลัมน์
สร้างชีตใหม่ชื่อ "รายการ" หรือ "ตั้งค่า" เพื่อเก็บตัวเลือกไว้ที่เดียว พิมพ์ตัวเลือกลงไปทีละแถว เช่น ในเซลล์ A1 ถึง A20 ไม่ต้องปนกับข้อมูลหลักในชีตทำงาน
เลือกเซลล์ที่ต้องการสร้าง Dropdown
กลับไปที่ชีตหลัก เลือกเซลล์หรือช่วงเซลล์ที่ต้องการ เช่น B2:B100
เปิด Data Validation → เลือก "Dropdown (from a range)"
ไปที่ Data → Data validation → + Add ruleในส่วน Criteria ให้เลือก Dropdown (from a range)
ระบุช่วงเซลล์ที่เก็บรายการ
พิมพ์ช่วงเซลล์ เช่น รายการ!A1:A50 หรือ ตั้งค่า!A:A (อ้างอิงทั้งคอลัมน์)
คลิก "Done"
Dropdown จะแสดงรายการตัวเลือกทั้งหมดจากช่วงเซลล์ที่กำหนด เมื่อเพิ่มรายการใหม่ในช่วงนั้น Dropdown จะอัปเดตอัตโนมัติ
// Criteria: Dropdown (from a range)
Range: รายการ!A1:A50
// ตัวอย่าง: ชีต "รายการ" คอลัมน์ A
A1: อาหาร
A2: เดินทาง
A3: ที่อยู่อาศัย
A4: ความบันเทิง
A5: สุขภาพ
เคล็ดลับ: ทำให้อัปเดตอัตโนมัติเมื่อเพิ่มรายการ
ระบุช่วงเซลล์ให้กว้างกว่ารายการปัจจุบัน เช่น ถ้ามี 5 รายการ ให้ระบุ A1:A50 หรือใช้ A:A เพื่ออ้างอิงทั้งคอลัมน์ เมื่อเพิ่มรายการใหม่ Dropdown จะแสดงรายการใหม่ทันที เซลล์ว่างจะถูกข้ามไปโดยอัตโนมัติ
วิธีที่ 3: สร้าง Dropdown แบบ Dynamic ด้วย Named Ranges
Named Ranges คือการตั้งชื่อให้กับช่วงเซลล์ เพื่อให้อ้างอิงได้ง่ายขึ้น แทนที่จะจำว่ารายการหมวดหมู่อยู่ที่ รายการ!A1:A20เราตั้งชื่อว่า หมวดหมู่ แล้วใช้ชื่อนี้อ้างอิงแทนได้เลย วิธีนี้มีประโยชน์มากเมื่อไฟล์มี Dropdown หลายจุดที่ใช้รายการเดียวกัน
ขั้นตอนการสร้าง Named Range
เลือกช่วงเซลล์ที่เก็บรายการ
ไปที่ชีตที่เก็บรายการตัวเลือก แล้วลากเลือกช่วงเซลล์ เช่น A1:A50
ตั้งชื่อ Named Range
ไปที่ Data → Named rangesพิมพ์ชื่อที่ต้องการ เช่น หมวดหมู่แล้วคลิก Done
ใช้ Named Range ใน Data Validation
สร้าง Data Validation แบบ Dropdown (from a range) แล้วพิมพ์ชื่อ Named Range แทนช่วงเซลล์ เช่น หมวดหมู่
// สร้าง Named Range
Data > Named ranges
Name: หมวดหมู่
Range: รายการ!A1:A50
// ใช้ใน Data Validation
Criteria: Dropdown (from a range)
Range: หมวดหมู่
ข้อดีของ Named Ranges
- อ่านง่าย เข้าใจทันทีว่าอ้างอิงอะไร
- แก้ไขช่วงเซลล์ที่เดียว มีผลทั้งไฟล์
- ใช้ร่วมกับ INDIRECT สร้าง Dependent Dropdown
- จัดการง่ายเมื่อไฟล์มีหลาย Dropdown
กฎการตั้งชื่อ Named Range
- ขึ้นต้นด้วยตัวอักษรหรือ _ เท่านั้น
- ห้ามมีเว้นวรรค (ใช้ _ แทน)
- ห้ามซ้ำกับชื่อเซลล์ เช่น A1, B2
- ภาษาไทยใช้ได้ แต่ภาษาอังกฤษแนะนำมากกว่า
Dependent Dropdown (Dropdown หลายระดับ)
Dependent Dropdown คือ Dropdown ที่ตัวเลือกในระดับที่สองจะเปลี่ยนไปตามสิ่งที่เลือกในระดับแรก เช่น เลือกจังหวัด "กรุงเทพ" แล้ว Dropdown อำเภอจะแสดงเฉพาะเขตในกรุงเทพ หรือเลือกแผนก "การตลาด" แล้ว Dropdown ตำแหน่งจะแสดงเฉพาะตำแหน่งในแผนกการตลาด เทคนิคนี้ใช้ฟังก์ชัน INDIRECT ร่วมกับ Named Ranges
ตัวอย่าง: จังหวัด → อำเภอ
| ชีต "ข้อมูล" | คอลัมน์ A | คอลัมน์ B | คอลัมน์ C |
|---|---|---|---|
| แถวที่ 1 (หัวข้อ) | กรุงเทพ | เชียงใหม่ | ภูเก็ต |
| แถวที่ 2 | บางรัก | เมืองเชียงใหม่ | เมืองภูเก็ต |
| แถวที่ 3 | สาทร | หางดง | กะทู้ |
| แถวที่ 4 | สีลม | สันทราย | ถลาง |
ขั้นตอนสร้าง Dependent Dropdown
เตรียมข้อมูลในชีตแยก
สร้างชีตชื่อ "ข้อมูล" จัดเก็บรายการอำเภอแยกตามจังหวัด โดยใช้แถวแรกเป็นชื่อจังหวัด และแถวถัดไปเป็นรายชื่ออำเภอ (ดูตารางด้านบน)
สร้าง Named Range สำหรับแต่ละจังหวัด
เลือกช่วงอำเภอของแต่ละจังหวัด แล้วตั้ง Named Range ชื่อต้องตรงกับชื่อจังหวัดในรายการ Dropdown แรก เช่น กรุงเทพ = ข้อมูล!A2:A10, เชียงใหม่ = ข้อมูล!B2:B10
สร้าง Dropdown ระดับแรก (จังหวัด)
สร้าง Dropdown แบบ List of items หรือ List from a range สำหรับเลือกจังหวัด เช่น ในเซลล์ A2 มีตัวเลือก: กรุงเทพ, เชียงใหม่, ภูเก็ต
สร้าง Dropdown ระดับที่สอง ด้วย INDIRECT
ในเซลล์ B2 สร้าง Data Validation แบบ Dropdown (from a range) ใส่สูตร =INDIRECT(A2)เมื่อเลือกจังหวัดใน A2 ค่าจะถูกส่งไป INDIRECT เพื่อดึง Named Range ที่ตรงกัน
// Named Ranges ที่ต้องสร้าง
กรุงเทพ → ข้อมูล!A2:A10
เชียงใหม่ → ข้อมูล!B2:B10
ภูเก็ต → ข้อมูล!C2:C10
// Dropdown ระดับที่สอง (อำเภอ) ในเซลล์ B2
Criteria: Dropdown (from a range)
Range: =INDIRECT(A2)
// ถ้า A2 = "กรุงเทพ"
// INDIRECT("กรุงเทพ") จะดึงข้อมูลจาก Named Range "กรุงเทพ"
// แสดงรายการ: บางรัก, สาทร, สีลม ...
สำคัญ: ชื่อ Named Range ต้องตรงกับตัวเลือกใน Dropdown แรก
ถ้า Dropdown แรกมีตัวเลือก "กรุงเทพ" Named Range ก็ต้องชื่อ "กรุงเทพ" ตรงตัว ถ้าชื่อไม่ตรงกัน INDIRECT จะหา Named Range ไม่เจอ กรณีชื่อมีเว้นวรรค ให้ใช้ _ แทน เช่น "นครราชสีมา" ไม่มีปัญหา แต่ถ้าเป็น "กรุงเทพ มหานคร" ให้ใช้ "กรุงเทพ_มหานคร" ทั้งใน Dropdown แรกและ Named Range
ใช้ Dropdown กับ Conditional Formatting (เปลี่ยนสีอัตโนมัติ)
หลังจากสร้าง Dropdown แล้ว เราสามารถตั้ง Conditional Formatting ให้เซลล์เปลี่ยนสีอัตโนมัติตามค่าที่เลือก ทำให้มองเห็นสถานะได้ทันทีโดยไม่ต้องอ่านทีละเซลล์ เหมาะมากสำหรับระบบติดตามงานหรือจัดการโปรเจกต์ใน Google Sheet
ตัวอย่าง: เปลี่ยนสีตามสถานะงาน
พื้นหลังสีเขียว
พื้นหลังสีเหลือง
พื้นหลังสีแดง
ขั้นตอนตั้ง Conditional Formatting
เลือกช่วงเซลล์ที่มี Dropdown
เลือกเซลล์ที่มี Dropdown สถานะงาน เช่น C2:C100
เปิด Conditional Formatting
ไปที่ Format → Conditional formatting
สร้างกฎสำหรับ "Done"
Format rules → Text is exactly → พิมพ์ "Done" แล้วเลือก Formatting style เป็นพื้นหลังสีเขียว ตัวอักษรสีเขียวเข้ม
เพิ่มกฎสำหรับค่าอื่นๆ
กด Add another rule แล้วทำซ้ำสำหรับ "In Progress" (สีเหลือง) และ "Not Started" (สีแดง)
คลิก Done
เมื่อเลือกสถานะจาก Dropdown เซลล์จะเปลี่ยนสีอัตโนมัติตามกฎที่ตั้งไว้
// Conditional Formatting Rules
Rule 1: Text is exactly "Done" → Background: #d9ead3 (เขียว)
Rule 2: Text is exactly "In Progress" → Background: #fff2cc (เหลือง)
Rule 3: Text is exactly "Not Started" → Background: #f4cccc (แดง)
เคล็ดลับ: ใช้ Dropdown Chip แทน Conditional Formatting
Google Sheet เวอร์ชันใหม่รองรับ Dropdown Chip ที่มีสีในตัว สามารถเลือกสีให้แต่ละตัวเลือกได้ตอนสร้าง Data Validation ทำให้ไม่ต้องตั้ง Conditional Formatting แยก แต่ถ้าต้องการให้ทั้งแถวเปลี่ยนสี (ไม่ใช่แค่เซลล์ Dropdown) ยังต้องใช้ Conditional Formatting อยู่
ใช้ Dropdown กับ VLOOKUP (ดึงข้อมูลอัตโนมัติ)
เมื่อรวม Dropdown กับ VLOOKUP เราจะสามารถสร้างระบบที่เลือกรายการจาก Dropdown แล้วดึงข้อมูลที่เกี่ยวข้องมาแสดงอัตโนมัติ เช่น เลือกชื่อสินค้าแล้วราคากับรหัสสินค้าจะขึ้นมาเอง ไม่ต้องพิมพ์ข้อมูลซ้ำ ลดข้อผิดพลาดและประหยัดเวลามาก
ตัวอย่าง: เลือกสินค้า → แสดงราคาอัตโนมัติ
| ชีต "สินค้า" | A: ชื่อสินค้า | B: รหัส | C: ราคา |
|---|---|---|---|
| 1 | เสื้อยืด | P001 | 250 |
| 2 | กางเกง | P002 | 450 |
| 3 | รองเท้า | P003 | 890 |
| 4 | กระเป๋า | P004 | 1,200 |
ขั้นตอนการทำ
สร้าง Dropdown สำหรับเลือกสินค้า
ในชีตหลัก สร้าง Dropdown ที่เซลล์ A2 แบบ Dropdown (from a range) อ้างอิงไปยังคอลัมน์ชื่อสินค้า เช่น สินค้า!A:A
ใส่สูตร VLOOKUP ดึงรหัสสินค้า
ในเซลล์ B2 ใส่สูตร VLOOKUP เพื่อดึงรหัสสินค้าจากชีต "สินค้า" ค้นหาจากชื่อสินค้าที่เลือกใน Dropdown
ใส่สูตร VLOOKUP ดึงราคา
ในเซลล์ C2 ใส่สูตร VLOOKUP เพื่อดึงราคาจากชีต "สินค้า" เปลี่ยนแค่หมายเลขคอลัมน์จาก 2 เป็น 3
// สูตร VLOOKUP ดึงรหัสสินค้า (เซลล์ B2)
=VLOOKUP(A2, สินค้า!A:C, 2, FALSE)
// สูตร VLOOKUP ดึงราคา (เซลล์ C2)
=VLOOKUP(A2, สินค้า!A:C, 3, FALSE)
// คำอธิบาย
// A2 = ค่าที่ต้องการค้นหา (ชื่อสินค้าจาก Dropdown)
// สินค้า!A:C = ตารางข้อมูลที่ต้องการค้นหา
// 2 หรือ 3 = คอลัมน์ที่ต้องการดึงข้อมูล
// FALSE = ค้นหาแบบตรงตัวเท่านั้น
เคล็ดลับ: ใช้ IFERROR ป้องกัน Error
เมื่อยังไม่ได้เลือกสินค้า VLOOKUP จะแสดง #N/A ใช้ IFERROR ครอบเพื่อแสดงค่าว่างแทน
=IFERROR(VLOOKUP(A2, สินค้า!A:C, 3, FALSE), "")
ตัวอย่างผลลัพธ์ในชีตหลัก
| A: สินค้า (Dropdown) | B: รหัส (VLOOKUP) | C: ราคา (VLOOKUP) | D: จำนวน | E: รวม |
|---|---|---|---|---|
| เสื้อยืด | P001 | 250 | 3 | 750 |
| รองเท้า | P003 | 890 | 1 | 890 |
คอลัมน์ B และ C ดึงข้อมูลจาก VLOOKUP อัตโนมัติ ส่วนคอลัมน์ E ใช้สูตร =C2*D2
เคล็ดลับและข้อควรระวัง
การสร้าง Dropdown ใน Google Sheet ไม่ยาก แต่มีจุดที่ต้องระวังเพื่อให้ทำงานได้สมบูรณ์ ต่อไปนี้คือเคล็ดลับที่รวบรวมจากประสบการณ์จริง
แยกรายการไว้ในชีตต่างหาก
สร้างชีตชื่อ "รายการ" หรือ "ตั้งค่า" เพื่อเก็บตัวเลือกทั้งหมดไว้ที่เดียว จัดการง่าย ไม่รกชีตหลัก และสามารถซ่อนชีตนี้ได้ด้วย (คลิกขวาที่แท็บ → Hide sheet)
ใช้ "Reject input" เพื่อบังคับเลือกจากรายการเท่านั้น
ใน Data Validation มีตัวเลือก "If the data is invalid" ให้เลือก "Reject input" จะบังคับให้ผู้ใช้เลือกจาก Dropdown เท่านั้น ไม่สามารถพิมพ์ค่าอื่นได้ เหมาะกับไฟล์ที่ใช้งานร่วมกันหลายคน
Copy Dropdown ได้ เหมือน Copy เซลล์ปกติ
ไม่ต้องตั้ง Data Validation ใหม่ทุกเซลล์ เพียง Copy เซลล์ที่มี Dropdown แล้ว Paste ไปยังเซลล์อื่น Data Validation จะถูก Copy ไปด้วยโดยอัตโนมัติ
ระวังช่องว่างหน้า-หลังข้อความ
ถ้าพิมพ์ " Done" (มีเว้นวรรคข้างหน้า) กับ "Done" Google Sheet จะถือว่าเป็นคนละค่า ทำให้ SUMIF, VLOOKUP, และ Conditional Formatting ทำงานผิดพลาด ใช้ฟังก์ชัน TRIM() เพื่อลบช่องว่างส่วนเกิน
ใช้ Dropdown Chip (ฟีเจอร์ใหม่ของ Google Sheet)
Google Sheet เวอร์ชันใหม่จะแสดง Dropdown เป็น Chip สี สามารถเลือกสีให้แต่ละตัวเลือกได้ในขั้นตอนสร้าง Data Validation ทำให้มองเห็นค่าที่เลือกได้ชัดเจนมากขึ้นโดยไม่ต้องใช้ Conditional Formatting
ข้อควรระวัง: ลบ Data Validation เดิมก่อนเปลี่ยนวิธี
ถ้าต้องการเปลี่ยนจากวิธีพิมพ์เอง (Dropdown) เป็นวิธีอ้างอิงเซลล์ (Dropdown from a range) ให้ลบ Data Validation เดิมออกก่อนด้วย Data → Data validation → Remove ruleแล้วค่อยสร้างใหม่ เพื่อป้องกันปัญหากฎซ้อนกัน
ข้อควรระวัง: Dropdown กับมือถือ
Dropdown ทำงานได้บนแอป Google Sheet มือถือ แต่ประสบการณ์การใช้งานอาจแตกต่าง ผู้ใช้ต้องแตะที่เซลล์แล้วเลือกจากรายการที่ปรากฏ ควรทดสอบบนมือถือด้วยหากทีมงานใช้งานผ่านโทรศัพท์เป็นหลัก
เรียนรู้ Google Sheet เพิ่มเติม
Dropdown เป็นแค่จุดเริ่มต้น ยังมีเทคนิคอีกมากมายที่จะช่วยให้เราใช้ Google Sheet ได้อย่างมืออาชีพ
คำถามที่พบบ่อย
Dropdown ใน Google Sheet คืออะไร?
Dropdown คือรายการแบบเลือก (Drop-down list) ที่สร้างด้วยฟีเจอร์ Data Validation ใน Google Sheet ทำให้ผู้ใช้คลิกเลือกข้อมูลจากรายการที่กำหนดไว้แทนการพิมพ์เอง ช่วยลดความผิดพลาดและทำให้ข้อมูลมีความสม่ำเสมอ
สร้าง Dropdown แบบ Dynamic ที่เพิ่มรายการอัตโนมัติได้ไหม?
ได้ โดยใช้วิธี List from a range อ้างอิงไปยังคอลัมน์ที่เก็บรายการ เมื่อเพิ่มข้อมูลใหม่ในคอลัมน์นั้น Dropdown จะอัปเดตตามอัตโนมัติ ไม่ต้องแก้ไข Data Validation ใหม่ทุกครั้ง
Dependent Dropdown หรือ Dropdown หลายระดับ ทำอย่างไร?
ใช้ฟังก์ชัน INDIRECT ร่วมกับ Named Ranges โดยตั้งชื่อช่วงข้อมูลให้ตรงกับตัวเลือกใน Dropdown ระดับแรก จากนั้นใน Dropdown ระดับที่สองให้อ้างอิงด้วย INDIRECT ไปยังค่าที่เลือกจาก Dropdown แรก ระบบจะแสดงตัวเลือกที่สัมพันธ์กันอัตโนมัติ
ใช้ Dropdown ร่วมกับ Conditional Formatting ได้ไหม?
ได้ สามารถตั้ง Conditional Formatting ให้เปลี่ยนสีเซลล์ตามค่าที่เลือกจาก Dropdown เช่น เลือก "Done" เป็นสีเขียว เลือก "In Progress" เป็นสีเหลือง เลือก "Not Started" เป็นสีแดง ทำให้มองเห็นสถานะงานได้ทันทีโดยไม่ต้องอ่านทีละเซลล์
บทความที่เกี่ยวข้อง
คู่มือเทมเพลตติดตามรายรับ-รายจ่าย
สอนใช้เทมเพลต Budget Tracker พร้อม Dropdown หมวดหมู่อัตโนมัติ
Google Apps Script สร้างระบบอัตโนมัติ
เขียน Script ทำงานอัตโนมัติใน Google Sheet ตั้งแต่เริ่มต้น