Filtering 4 Solutions

อยากขี้เกียจใช้ Excel ทำงานที่ซ้ำแล้วซ้ำอีกไหมครับ ไม่อยากใช้สูตรยากๆยาวๆใช่ไหม

2-3 วันมานี้มีลูกศิษย์โทรมาถามว่า อยากจะหารายชื่อลูกค้าที่บ้านอยู่ในกรุงเทพ จะหาได้ยังไง แล้วถ้าจะหาซอยย่อยลงไปอีกล่ะว่าในกรุงเทพเฉพาะเขตบางกะปิมีรายชื่อลูกค้าคนใดบ้าง

ทำยังไงให้ง่ายที่สุดล่ะครับ

สั่ง Data > Filter จัดการกรองข้อมูลตามจังหวัดกับเขต ง่ายดี แต่วิธีนี้ข้อมูลที่ได้จะอยู่ในตารางที่เดิม ไม่สามารถแยกออกไปเป็นอีกตาราง

อีกวิธีใช้คำสั่ง Data > Advanced จะช่วยแยกข้อมูลออกไปอีกตารางได้ตามต้องการ

ถ้าใช้ Pivot Table ก็ได้แต่ยังไงก็ต้องมา Filter ต่ออีกที

ทั้ง 3 วิธีนี้มีข้อเสียร่วมกันอยู่อย่างหนึ่ง นั่นคือเป็นการใช้คำสั่งบนเมนู … แล้วไม่ดียังไง

งานใดก็ตามที่ได้มาจากการใช้คำสั่งบนเมนู ทำให้พอมีข้อมูลรายการเพิ่มแล้วอยากจะให้หาคำตอบใหม่ ก็จำเป็นต้องใช้คำสั่งบนเมนูซ้ำอีก Excel ไม่ได้หาคำตอบใหม่ให้โดยอัตโนมัติ

ผลเสียต่อเนื่องก็คือ พอส่งแฟ้มไปให้คนอื่นใช้โดยเฉพาะหัวหน้าที่ไม่คล่อง Excel คุณเองก็ต้องถูกสั่งให้มาทำให้ใหม่ เป็นแบบนี้ไปเรื่อยๆๆๆๆๆ น่าเบื่อไหมครับ

ถ้าอยากจะทำให้ Excel หาคำตอบใหม่ให้เองทันทีก็ต้องฝึกสร้างสูตรพวก Multiple Match ซึ่งสูตรก้อย้าวยาว หรือถ้าใช้ Excel 365 มีสูตรใหม่ที่ลัดขั้นตอน เหลือสูตรสั้นๆเพียงแค่นี้

=Filter(DatabaseRange,(ProvinceRange=”กรุงเทพ”)*(DistrictRange=”บางกะปิ”))

พอคุยกับลูกศิษย์ว่าเรียนออนไลน์อะไรกับผมไปแล้วบ้าง

อ้อ ได้เรียน VBA ไปแล้ว

ถ้างั้นได้ทางออกอีกวิธีครับ แค่ใช้ Macro Recorder บันทึกการใช้คำสั่งบนเมนู Data > Advanced ก็จะได้รหัส VBA มาใช้โดยไม่ต้องเขียนเองแม้แต่น้อย สูตรก็ไม่ต้องสร้าง Excel ก็ไม่ช้าลง แฟ้มก็ไม่ใหญ่ขึ้นเพราะสูตร

พอบันทึก Macro เสร็จก็แค่สร้างปุ่มเอาไว้กดเมื่ออยากจะได้คำตอบ หัวหน้าอยากได้คำตอบก็แค่คลิกที่ปุ่ม ใครๆก็ทำได้ แถมใช้กับ Excel ได้ทุกรุ่น

Macro Recorder จะช่วยทำให้ขี้เกียจทำงานได้อีกเยอะครับ สูตรก็ไม่ต้องวุ่นวายไปสร้าง

เพียงแค่รู้จักใช้ Range Name ช่วยตอนที่บันทึก จะได้รหัส VBA ที่ยืดหยุ่นเอาไปใช้ได้ตลอด ไม่ต้องเสียเวลาย้อนกลับไปแก้รหัสอีกเลย

เรื่องนี้เล่าให้ฟังครับ จะได้รู้ว่า VBA เนี่ยมีไว้ใช้ทำอะไร

ตอนนี้ผมกำลังเปิดให้สมัครเรียนออนไลน์ ฟรี อยู่ด้วย ได้เป็นสมาชิกตลอดชีพ

เขิญลงทะเบียนสมัครได้ที่ https://www.excelexperttraining.com/online/register/free_gift/

ปกติหลักสูตร VBA จะต้องแพงที่สุด เพราะคนที่รู้ว่า VBA สามารถใช้ทำอะไรที่ช่วยเขาได้บ้างจะยอมลงทุนจ่ายเงินเรียนเพราะรู้ว่าคุ้มกับการลงทุน

แต่เพราะราคาที่แพงนี่แหละกับหาคนที่รู้ค่าของ VBA ได้น้อยมาก แทนที่จะเก็บหลักสูตรนี้ไว้เฉยๆ ไม่ได้ประโยชน์อะไรเลย ขอยกมาให้เรียน ฟรี ดีกว่าครับ