สารบัญ
ใน MS Excel เราจำเป็นต้องค้นหาหรือค้นหาค่าในชุดข้อมูลอยู่บ่อยครั้ง อาจเป็นการค้นหาข้อมูลในแถวหรือคอลัมน์ก็ได้ โชคดีที่ Excel มีฟังก์ชันและสูตรต่างๆ เพื่อทำงานประเภทนี้ ด้วยความช่วยเหลือของรหัส Excel VBA เราสามารถทำให้การค้นหาหรือการค้นหาค่านี้เป็นไปโดยอัตโนมัติ ในบทความนี้ เราจะเห็นวิธีต่างๆ ในการ ค้นหาค่าในคอลัมน์ ใน Excel VBA
ดาวน์โหลดสมุดงานแบบฝึกหัด
ค้นหาค่าในคอลัมน์ .xlsm
6 ตัวอย่างของ VBA เพื่อหาค่าในคอลัมน์ใน Excel
มาสร้างชุดข้อมูลข้อมูลผลิตภัณฑ์ด้วย รหัสผลิตภัณฑ์ , ยี่ห้อ , รุ่น , ราคาต่อหน่วย และ รหัสคำสั่งซื้อ งานของเราคือการค้นหา รหัสคำสั่งซื้อ ที่ตรงกัน ตอนนี้งานของเราคือการค้นหา รหัสคำสั่งซื้อ ที่เชื่อมโยงกับ รหัสผลิตภัณฑ์
1. ค้นหามูลค่าในคอลัมน์โดยใช้ VBA Find Function
ในตัวอย่างแรก เราจะใช้ ฟังก์ชัน Find ใน VBA เพื่อค้นหาค่าในคอลัมน์
📌 ขั้นตอน:
- ไปที่ชื่อแผ่นงานที่ด้านล่างของแผ่นงาน
- กดปุ่มขวาของเมาส์
- เลือก ตัวเลือกดูโค้ด จากรายการ
- หน้าต่าง VBA จะเปิดขึ้น จากนั้นเลือก โมดูล จากตัวเลือก แทรก
- ตอนนี้เขียนโค้ดต่อไปนี้ในคอนโซล VBA
5728
- ตอนนี้ให้ใส่ปุ่มในชุดข้อมูล
- ไปที่แท็บ นักพัฒนาซอฟต์แวร์
- เลือก ปุ่ม ( การควบคุมฟอร์ม ) จาก แทรก ส่วน
- ระบุชื่อปุ่มใดๆ อย่างที่ฉันกำหนดให้เป็น ค้นหา .
- กำหนดรหัสให้กับปุ่มนี้
- เลือก แล้วกดปุ่มขวาของเมาส์
- เลือก กำหนดมาโคร จากรายการ
- เลือกมาโครที่ต้องการจากหน้าต่าง กำหนดมาโคร
- จากนั้นกด ตกลง
- ตอนนี้เขียน รหัสผลิตภัณฑ์ และคลิกที่ปุ่ม ค้นหา
เราจะเห็นว่า ไม่ กำลังแสดงการจับคู่ เนื่องจากหมายเลขผลิตภัณฑ์นี้ไม่อยู่ในรายการ
- ใส่ รหัสผลิตภัณฑ์ อีกอัน แล้วกดปุ่ม ค้นหา อีกครั้ง
เราได้รับหมายเลขคำสั่งซื้อสำหรับ รหัสผลิตภัณฑ์ ที่กำหนด
อ่านเพิ่มเติม: วิธี เพื่อรับค่าเซลล์ตามแถวและคอลัมน์ใน Excel VBA
2. VBA เพื่อหาค่าจากเวิร์กชีตต่างๆ
ในตอนนี้ ในส่วนนี้ เราจะทำสิ่งเดียวกันข้างต้น แต่สำหรับเวิร์กชีตที่แตกต่างกัน สมมติว่าข้อมูลผลิตภัณฑ์ของเราอยู่ใน ชีต 2 และช่องค้นหาอยู่ใน ชีต 3 ตอนนี้เราจะเขียนรหัส VBA เพื่อให้เราสามารถค้นหารหัสคำสั่งซื้อโดยใช้รหัสผลิตภัณฑ์จาก แผ่นที่ 3 .
แผ่นที่ 2:
แผ่นที่ 3:
📌 ขั้นตอน:
- ติดตามเหมือนเดิมขั้นตอนจาก ขั้นตอนที่ 1 ถึง ขั้นตอนที่ 2 จากวิธีก่อนหน้าเพื่อเปิดคอนโซล VBA
- ตอนนี้เขียนโค้ดต่อไปนี้ในคอนโซล VBA
8172
- ตอนนี้ให้ใส่ปุ่มเหมือนปุ่มก่อนหน้าอีกครั้ง
- จากนั้นกำหนดรหัสแมโครให้กับปุ่ม
- ป้อน รหัสผลิตภัณฑ์ และคลิกที่ปุ่ม ดำเนินการ
<0 อ่านเพิ่มเติม: ค้นหาค่าในคอลัมน์และส่งคืนค่าของคอลัมน์อื่นใน Excel
3. ค้นหาและทำเครื่องหมายค่าในคอลัมน์
มาดูกันว่าเราจะหาค่าจากคอลัมน์ด้วยการทำเครื่องหมายได้อย่างไร สำหรับสิ่งนี้ สมมติว่าชุดข้อมูลเดียวกันด้านบนมีคอลัมน์เพิ่มเติมชื่อ สถานะการจัดส่ง ตอนนี้ งานของเราคือทำเครื่องหมายค่าในคอลัมน์ สถานะการจัดส่ง ซึ่งเป็น รอดำเนินการ
📌 <2 ขั้นตอน:
- ทำตามขั้นตอนเดียวกันจาก ขั้นตอนที่ 1 ถึง ขั้นตอนที่ 2 เป็นวิธีการก่อนหน้าเพื่อเปิดคอนโซล VBA
- ตอนนี้เขียนโค้ดต่อไปนี้ในคอนโซล VBA
1990
- ตอนนี้ไปที่แผ่นงานและเรียกใช้โค้ด
- ดูผลลัพธ์ในตาราง
อ่านเพิ่มเติม: วิธีหาค่าสูงสุดในคอลัมน์ Excel (4 วิธี )
4. VBA เพื่อค้นหาค่าในคอลัมน์โดยใช้อักขระตัวแทน
สุดท้าย เราจะมาดูกันว่าเราสามารถค้นหาหรือค้นหาค่าในคอลัมน์โดยใช้อักขระตัวแทนใน Excel VBA ได้อย่างไร เราจะใช้ชุดข้อมูลเดียวกันอีกครั้งด้านบนสำหรับวิธีนี้ งานของเราคือค้นหาราคาสินค้าโดยใช้แบบจำลอง เราสามารถพิมพ์ชื่อเต็มหรืออักขระตัวแรกและตัวสุดท้ายของ รหัสผลิตภัณฑ์ ก็ได้
📌 ขั้นตอน:
- ทำตามขั้นตอนเดียวกันจาก ขั้นตอนที่ 1 ถึง ขั้นตอนที่ 2 ตามวิธีก่อนหน้าเพื่อเปิดคอนโซล VBA
- ตอนนี้ เขียนโค้ดต่อไปนี้ในคอนโซล VBA
4315
- อีกครั้ง ใส่ปุ่มเหมือนปุ่มก่อนหน้า
- ตอนนี้กำหนดมาโคร ไปที่ปุ่ม
- ตอนนี้ป้อน Product ID บางส่วนแล้วกดปุ่ม ดำเนินการ
อ่านเพิ่มเติม: วิธีหาค่าต่ำสุดในคอลัมน์ Excel (6 วิธี)
5. Excel VBA เพื่อหาค่าสูงสุดในคอลัมน์
ที่นี่ เราต้องการหาค่าสูงสุดของคอลัมน์โดยใช้โค้ด VBA
📌 ขั้นตอน:
- เราต้องการทราบราคาสูงสุด
- ตอนนี้ ใส่ VBA ต่อไปนี้ โค้ดบนโมดูลใหม่
8225
- จากนั้น กดปุ่ม F5 เพื่อเรียกใช้โค้ด VBA
- กล่องโต้ตอบ อินพุต จะปรากฏขึ้น
- เลือกช่วงจากชุดข้อมูล
- สุดท้าย กดปุ่ม ตกลง
เราจะเห็นค่าสูงสุดแสดงในกล่องโต้ตอบ
6. Excel VBA เพื่อหาค่าสุดท้ายในคอลัมน์
ในที่นี้เราต้องการทราบค่าของแถวหรือเซลล์สุดท้ายของคอลัมน์เฉพาะ ตัวอย่างเช่น เราต้องการทราบผลิตภัณฑ์สุดท้ายจากคอลัมน์ผลิตภัณฑ์
📌 ขั้นตอน:
- ป้อนโค้ด VBA ด้านล่างในโมดูล
5745
- จากนั้น เรียกใช้โค้ดโดยกดปุ่ม F5 ปุ่ม
ค่าสุดท้ายจะแสดงในกล่องโต้ตอบ
อ่านเพิ่มเติม: วิธีค้นหาค่าที่เกิดขึ้นล่าสุดในคอลัมน์ใน Excel (5 วิธี)
ข้อควรจำ
ข้อผิดพลาดทั่วไปบางประการ: <3
- ข้อผิดพลาด: ครั้งละหนึ่งค่า เนื่องจากเมธอด FIND สามารถค้นหาค่าได้ครั้งละหนึ่งค่าเท่านั้น
- ข้อผิดพลาด: #NA ใน VLOOKUP ถ้าค่าที่ค้นหาไม่มีอยู่ในชุดข้อมูลที่กำหนด ฟังก์ชันนี้จะส่งคืนข้อผิดพลาด #NA นี้
- Range(“Cell_Number”) ส่วน ClearContents คือ ใช้เพื่อล้างค่าก่อนหน้าออกจากเซลล์ มิฉะนั้น จะต้องลบค่าก่อนหน้านี้ออกด้วยตนเอง
บทสรุป
ต่อไปนี้เป็นบางวิธีในการค้นหาค่าในคอลัมน์โดยใช้โค้ด VBA ใน Excel ฉันได้แสดงวิธีการทั้งหมดพร้อมตัวอย่างที่เกี่ยวข้อง แต่อาจมีการทำซ้ำอื่น ๆ อีกมากมาย ฉันได้พูดคุยเกี่ยวกับพื้นฐานของฟังก์ชันที่ใช้แล้ว หากคุณมีวิธีอื่นใดในการบรรลุเป้าหมายนี้ โปรดอย่าลังเลที่จะแบ่งปันกับเรา เยี่ยมชมเว็บไซต์ของเรา ExcelWIKI สำหรับบทความที่น่าสนใจเพิ่มเติมเกี่ยวกับ Excel