สูตรคั่นช่องว่างใน Excel 365

“อยากลบช่องว่างใน Excel ต้องทำยังไงคะ?”
“ใช้ฟังก์ชัน TRIM ครับ”
“แล้วถ้าอยากเพิ่มช่องว่างล่ะคะ?”

การเพิ่มช่องว่างมักเจอในเคสที่ต้องการคั่นตัวอักษรใหญ่ (Capital Letter)
เช่น ปรับคำว่า LouisVuitton เป็น Louis Vuitton

ถ้าเป็น Excel เวอร์ชันเก่า สูตรจะยาวและอาจต้องทำ 2-3 ขั้นตอน
แต่ถ้าเป็น Excel 365 จะเหลือเพียงขั้นตอนเดียว

จากภาพ สูตรในเซลล์ B2 คือ

=REDUCE(A2,CHAR(SEQUENCE(26,,65)),LAMBDA(i,a,TRIM(SUBSTITUTE(i,a," "&a))))

ขออธิบายสูตรเล็กน้อย 😊

CHAR(SEQUENCE(26,,65)) คือลิสต์ตัวอักษร A-Z

i และ a คือตัวแปรในฟังก์ชัน LAMBDA (ใช้ตัวอักษรหรือคำอื่นแทนก็ได้)
i หมายถึง initial คือค่าเริ่มต้น หรือในที่นี้คือ A2
a หมายถึง array คือชุดข้อมูล หรือในที่นี้คือลิสต์ตัวอักษร A-Z

ฟังก์ชัน REDUCE ทำหน้าที่คล้ายคำสั่งวนลูป (เมื่อเทียบกับภาษาอื่น)
นอกจากวนลูปแล้ว ยังใช้กับเซลล์เดียว หรือใช้กับช่วงเซลล์ก็ได้

เช่น จากเคสเดิม ถ้าเปลี่ยน A2 เป็น A2:A6 สูตรจะ SPILL ลงมาเองอัตโนมัติ (ไม่ต้องก๊อปปี้ลงมาด้านล่าง)

=REDUCE(A2:A6,CHAR(SEQUENCE(26,,65)),LAMBDA(i,a,TRIM(SUBSTITUTE(i,a," "&a))))

ข้อเสียเพียงหนึ่งเดียวคือต้องใช้กับ Excel 365 หรือ Excel for Web เท่านั้น

ถ้าคุณใช้ Excel 365 เปิดคอมขึ้นมาลองเลยครับ

มันเจ๋งมั่ก ๆ 😊

วิศวกรรีพอร์ต

คนธรรมดาผู้มีประสบการณ์ทำงานหลากหลายตำแหน่ง คลุกคลีกับการทำรีพอร์ตมาโดยตลอด สุดท้ายค้นพบแนวทางของตัวเอง จึงอยากแบ่งปันเคล็ดลับและประสบการณ์ให้กับผู้สนใจ

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.