“อยากลบคำที่ไม่ต้องการใน Excel ต้องทำยังไงคะ?”
“ใช้ฟังก์ชัน SUBSTITUTE ได้เลยครับ”
“แล้วถ้ามีมากกว่าหนึ่งคำล่ะค่ะ?”
“เห!”
คำถามที่สองทำผมสตันไปเลย
พอมาคิดดู พบว่าเป็นคำถามที่สนุก และทำได้ (อย่างน้อย) 3 วิธีด้วยกัน 😊
สมมติชื่อจังหวัดอยู่ในเซลล์ A2 ต้องการลบคำว่า จ. และคำว่า จังหวัด ทิ้งไป

แบบที่ 1
=SUBSTITUTE(SUBSTITUTE(A2,”จังหวัด”,),”จ.”,)
วิธีนี้ใช้ได้กับ Excel ทุกเวอร์ชัน
แต่มีข้อเสียคือ ถ้าต้องการลบ 10 คำ ก็ต้องซ้อน SUBSTITUTE 10 รอบ ซึ่งอาจไม่สะดวก 😢
แบบที่ 2
=CONCAT(TEXTSPLIT(A2,{“จ.”,”จังหวัด”}))
วิธีนี้ใช้ได้กับ Excel 365 เท่านั้น
แต่มีข้อดีคือ ถ้าต้องการลบ 10 คำ ก็ใส่ทุกคำในวงเล็บปีกกา { }
หรือจะอ้างอิงจากช่วงเซลล์ (เช่น G2:G11) ก็ได้เช่นกัน เช่น
=CONCAT(TEXTSPLIT(A2,$G$2:$G$11))
แบบที่ 3
=REDUCE(A2,{“จ.”,”จังหวัด”},LAMBDA(i,a,SUBSTITUTE(i,a,)))
(คนคิดเทคนิคนี้คือคุณ Excel Wizard)
วิธีนี้ใช้ได้กับ Excel 365 แถมสูตรยาวกว่าแบบที่สอง
แต่มีข้อดีเหมือนแบบที่สอง และปรับให้สูตร SPILL ลงมาเองแบบอัตโนมัติได้
เช่น ปรับสูตรเป็น
=REDUCE(A2:A6,{“จ.”,”จังหวัด”},LAMBDA(i,a,SUBSTITUTE(i,a,)))
แถมยังประยุกต์กับเคสได้หลากหลายกว่า
เช่น ถ้าต้องการเปลี่ยน LionelAndresMessi ให้เป็น Lionel Andres Messi (ใส่ช่องว่างหน้าตัวพิมพ์ใหญ่)
ก็ปรับสูตรเป็น
=REDUCE(A2,CHAR(SEQUENCE(26,,65)),LAMBDA(i,a,TRIM(SUBSTITUTE(i,a,” “&a))))
แบบนี้ได้เลย 🙂
ใครชอบสูตรแบบไหน รบกวนเมนต์บอกใต้โพสต์หน่อยนะครับ 😊