หลายๆคนที่ใช้ excel คงเคยเจอปัญหาที่ ข้อมูลในที่ import มาจาก Text File ประเภท Fixed Lenght มันจะมี ช่องว่างที่เราไม่ต้องการอยู่ (มักจะออกมาจากระบบ อื่นซะมากกว่าที่จะเกิดการการพิมพ์เข้าไป) มาดูตัวอย่างกันดีกว่า

trim1_12.JPG

จากรูปตัวอย่าง ด้านบน ใน item ที่ 1 มีการเคาะช่องว่าง สามครั้ง ให้สังเกตช่อง Length นะครับ ว่า มันนับได้ว่าข้อมูลในช่อง C4 มีความยาว 7 หน่วย ทั้งๆที่เราเห็นว่า มีแค่สีตัว ส่วน item ที่ 2 มีการเคาะ space ด้านหน้า สามครั้ง (อันนี้สังเกตง่ายหน่อย)

แต่ส่วนใหญ่แล้ว ข้อมูลแบบ item ที่ 1 จะเกิดได้มากกว่า ส่วนแบบ item ที่ 2 น่าจะเกิดจาก คนคีย์ข้อมูลเข้าไป หรือไม่ก็ก็อบมาแปะ

แต่คงจะไม่ดีแน่ ถ้าเราต้องมาจัดการ ค่อยๆ ลบที่ละตัวที่จะช่วยตัดช่องว่างทั้งด้านหน้า และด้านหลัง ของ ตัวหนังสือในเซลล์ที่เราต้องการ (ลองนึกดูนะคับว่า ถ้าข้อมูลมีเป็นหมื่นแถว จะมานั่งไล่ทีละตัว) โชคดีที่ มีคำสั่ง TRIM อยู่ มาดูการใช้เลยดีกว่า

trim1_2.JPG

รูปด้านบนก็เป็นผลลัพธ์ ครับ ถ้าเราดูที่ช่อง Length after Trim จะเห็นว่า ความยาวของตัวอักษรก็เท่ากับที่มันควรจะเป็นครับ

เจ้าช่องว่างพวกนี้เอง พอเราจะเอาข้อมูลไปใช้ด้วยการ match แบบต่างๆ ก็จะทำให้มีปัญหาไปด้วย เช่น ถ้าเราเอาต้องเอาค่าพวกนี้ไปเป็นตัวที่ใช้สำหรับ LookUP ในคำสั่ง VLookUP ครับ แต่Trim จะจัดการกับช่องว่าง (space) เท่านั้นนะครับ ส่วนตัวอักษณ พวกที่ทำตัว เหมือน space Trim จะจัดการไม่ได้ ซึ่งส่วน มากจะเป็นตัวอักษณ ที่มีค่าใน ASCII code เกิน 127 ครับ ซึ่งหน้าตาเป็นยังไงเนี๊ยะ คร่าวหน้าผมจะมาเล่าให้ฟังต่อนะครับ