ขณะทำงานกับ Microsoft Excel ขนาดใหญ่ บางครั้งต้องค้นหาข้อมูลบางอย่าง การสร้างฐานข้อมูลที่ค้นหาได้ใน Excel เป็นงานง่ายและประหยัดเวลา วันนี้จะสอน 2 วิธีเร็วและเหมาะสมในการสร้าง ฐานข้อมูลที่ค้นหาได้ (searchable database) ใน Excel อย่างมีประสิทธิภาพ พร้อมภาพประกอบ
2 วิธีที่เหมาะสมสำหรับสร้างฐานข้อมูลที่ค้นหาได้ใน Excel
สมมติมีเวิร์กชีท Excel ขนาดใหญ่ มีข้อมูลนักเรียนหลายคนของ Armani School and College ชื่อ นักเรียน, หมายเลขประจำตัว, และ GPA ที่ได้ อยู่ในคอลัมน์ B, C, และ D ตามลำดับ สามารถสร้างฐานข้อมูลที่ค้นหาได้ง่ายๆ ด้วยฟังก์ชัน FILTER, ISNUMBER, และ SEARCH ยังใช้ โค้ด VBA สร้างฐานข้อมูลที่ค้นหาได้อีกด้วย นี่คือภาพรวมชุดข้อมูลวันนี้

1. รวมฟังก์ชัน FILTER, ISNUMBER, และ SEARCH สร้างฐานข้อมูลที่ค้นหาได้ใน Excel
ก่อนอื่น จะสร้างฐานข้อมูลที่ค้นหาได้ด้วย FILTER, ISNUMBER, และ SEARCH ทำตามคำแนะนำด้านล่าง
📌 ขั้นตอนที่ 1:
- เลือกเซลล์ E5 ในชีทชื่อ Filter

- หลังเลือกเซลล์ E5 ใส่สูตรต่อไปนี้ในเซลล์ที่เลือก สูตรคือ
=FILTER(B5:B16,ISNUMBER(SEARCH(Database!B4,B5:B16)),"Not Found")- ฟังก์ชัน SEARCH ในสูตรค้นหาค่าที่กำหนด
- ฟังก์ชัน ISNUMBER ส่งคืน True หากผลลัพธ์ของ SEARCH เป็นตัวเลข มิฉะนั้นส่งคืน False
- ฟังก์ชัน FILTER กรองข้อมูลตามเกณฑ์ที่กำหนด

- กด ENTER จะได้ผลลัพธ์ที่ต้องการ

📌 ขั้นตอนที่ 2:
- เลือกเซลล์ B4 ในชีท Database ไปที่
Data → Data Tools → Data Validation

- เลือกแท็บ Setting ใน Data Validation เลือก List ในช่อง Allow: ด้วยลูกศรดรอปดาวน์
- ใส่สูตรต่อไปนี้ใน Source
=Filter!$E$5#- ไปที่แท็บ Error Alert

- ยกเลิกติ๊ก Show error alert after invalid data is entered แล้วกด OK

- สุดท้าย สร้างฐานข้อมูลที่ค้นหาได้แล้ว ตอนนี้พิมพ์อะไรก็ได้ (เช่น R) ในเซลล์ B4 เลือกลูกศรดรอปดาวน์มุมขวาล่างของเซลล์ จะเห็นผลลัพธ์ค้นหาที่เกี่ยวข้องทั้งหมด ตามภาพ

อ่านเพิ่มเติม: วิธีใช้ฟังก์ชันฐานข้อมูลใน Excel (พร้อมตัวอย่าง)
บทความคล้ายคลึง
- วิธีสร้างฐานข้อมูลใน Excel (ทำได้ใน 8 ขั้นตอนง่าย)
- จัดการฐานข้อมูลลูกค้าใน Excel
- วิธีสร้างฐานข้อมูลที่อัปเดตอัตโนมัติใน Excel
2. รันโค้ด VBA สร้างฐานข้อมูลที่ค้นหาได้ใน Excel
สมมติไม่อยากเลือกดรอปดาวน์เพื่อดูผลลัพธ์ แต่อยากดูผลลัพธ์ค้นหาแบบ Google Search ทำตามขั้นตอนด้านล่าง
📌 ขั้นตอนที่ 1:
- ทำตามขั้นตอนก่อน Data → Data Tools → Data Validation ในวิธีแรกเท่านั้น
- เลือกเซลล์ E5 ในชีท Filter แล้วเลือก Formulas → Name Manager

- เลือก New ในหน้าต่าง Name Manager

- เปลี่ยน Name เป็น Dropdown_List ในหน้าต่าง New Name
- ใส่สูตรต่อไปนี้ในช่อง Refers to แล้วกด OK สูตรใช้ฟังก์ชัน INDEX และ COUNTIF
=Filter!$E$5:$E$5:INDEX(States!$E$5:$E$17,COUNTIF(States!$E$5:$E$17,"?*"))
📌 ขั้นตอนที่ 2:
- ไปที่ชีท Dropdown เลือก Insert → Combo Box จากแท็บ Developer

- ลากเมาส์ปรับขนาด ComboBox ให้เหมาะสม

- จะมี ComboBox ใหม่สร้างขึ้น

- คลิกขวาที่ ComboBox เลือก properties

- เลือกแท็บ Alphabetic ใน Properties ทำการเปลี่ยนแปลง: AutoWordSelect >> False, Linked Cell >> B4, MatchEntry >> 2 – fnMatchEntryNone

- คัดลอกโค้ดต่อไปนี้
Private Sub ComboBox1_Change() ComboBox1.ListFillRange = "Dropdown_List" Me.ComboBox1.DropDown End Sub
- ดับเบิลคลิกที่ ComboBox จะไปที่โมดูลใหม่ในหน้าต่าง Microsoft VBA วางโค้ดที่คัดลอกในโมดูลว่าง ตามภาพ แล้วกด F5 รันโค้ด

- สุดท้าย ฐานข้อมูลที่ค้นหาได้จะทำงานแบบ Google Search

อ่านเพิ่มเติม: วิธีสร้างฐานข้อมูลง่ายใน Excel VBA
ข้อควรจำ
👉 สามารถเปิดหน้าต่าง Microsoft Visual Basic for Applications ด้วยการกด Alt + F11 พร้อมกัน
👉 หากแท็บ Developer ไม่เห็นในริบบอน สามารถทำให้เห็นได้ โดยไปที่
File → Option → Customize Ribbon
👉 ต้องยกเลิกเลือก Design Mode ในแท็บ Developer เพื่อพิมพ์ใน ComboBox ได้
สรุป
หวังว่าวิธีที่เหมาะสมทั้งหมดที่กล่าวมาข้างต้นสำหรับการ สร้างชุดข้อมูลที่ค้นหาได้ ด้วย VBA โค้ด จะกระตุ้นให้คุณนำไปประยุกต์ใน Excel สเปรดชีตของคุณด้วยประสิทธิภาพมากขึ้น ยินดีต้อนรับคำถามหรือข้อสงสัยในส่วนความคิดเห็นครับ
บทความที่เกี่ยวข้อง
- วิธีสร้างฐานข้อมูลสินค้าคงคลังใน Excel (3 วิธีง่าย)
- สร้างฐานข้อมูลด้วย Form ใน Excel
- วิธีสร้างฐานข้อมูลเชิงสัมพันธ์ใน Excel (พร้อมขั้นตอนง่าย)