พิมพ์บัตรนัด จดหมายเวียน จำนวนมากด้วย Word + Excel

โจทย์วันนี้คือ ต้องไปฉีดวัคซีนเด็กประถมชั้น ป.6 และกระบวนการทำงานจะไม่ยกทีมไปเซ็ตระบบและคีย์ข้อมูลแบบของเด็กมัธยมแล้ว เนื่องจากใช้กำลังคนและทรัพยากรมาก โดยต้องการพิมพ์ใบนัดหมายให้กับนักเรียนให้ครบ ก่อนไปฉีดให้ ซึ่งถ้าการออกใบนัดตามระบบวัคซีน จะต้องมีการคีย์เข็มที่ 1 ไปก่อน ถึงจะคีย์ข้อมูลการนัดหมายได้ ซึ่งไม่สามารถดำเนินการตามกระบวนการปกติได้ จึงหาวิธีที่ลดกระบวนการทำงานและให้เกิดความสะดวก วิธีการที่ใช้จะเรียกว่าการทำ “Mail Merge”

Mail Merge

คือการสร้างหน้าเอกสารใน Word ไปเรื่อยๆ ตามชุดข้อมูลที่มีอยู่ใน Excel โดยข้อมูลจะเปลี่ยนไปในแต่ละหน้าตามที่กำหนดค่าเอาไว้ โดยมีขั้นตอนดังนี้

เตรียม Excel

ข้อมูลที่เราต้องการใช้จะต้องมีคอลั่มที่ถูกออกแบบมาในลักษณะของ “ฐานข้อมูล” หมายความว่าต้องไม่มีการ merge cell หรือการจัดหน้าเพื่อการพิมพ์ ไม่มีการแทรกหัวข้อ หรือ คำอื่นๆ ที่นอกเหนือจากหัวคอลั่มกำหนดไว้ เพราะจะทำให้ Mail Merge ทำงานไม่สำเร็จ ตัวอย่างไฟล์ นักเรียนชั้นประถม คอลั่มที่จะใช้พิมพ์มี ชื่อ, นามสกุล, โรงเรียน, วันฉีด, ชนิดวัคซีน, วันนัดหมาย, เวลานัด, สถานที่นัด

เตรียม Word สำหรับออกใบนัด

สร้างฟอร์มขึ้นมาตามแบบที่ต้องการ

กดไปที่ Mailing > Select Recipients > Use an Existing List

เลือกไฟล์ Excel ที่เตรียมเอาไว้ จากนั้นกด Double Click หรือ กด Open

เลือก Sheet ที่เตรียมเอาไว้ จากนั้น Double Click หรือ กด OK

เมื่อนำเข้าข้อมูลสำเร็จแล้ว ให้กดที่ Insert Merge Fields จะมี pop up แสดงรายการคอลั่มที่เราเตรียมเอาไว้

กดเลือกตามชื่อคอลั่มที่ต้องการ จากนั้นทดสอบกด Preview Results

ภาพหลังจากกด Preview ทั้งนี้สามารถกดลูกศรเพื่อเลื่อนไปดูผลลัพท์อื่น ๆ ได้

เมื่อเสร็จสิ้นขั้นตอน ให้กดที่ Finish & Merge ขึ้นตอนนี้จะมีให้เลือก ว่าจะสร้างเป็นหน้าเพิมเติม หรือ ปริ้นเป็นชุด หรือ ส่งอีเมล (ทั้งนี้ต้องมีข้อมูลอีเมลด้วย)

วิธีแก้ปัญหารูปแบบวันที่

คือวันที่ใน Excel มันจะอิงตามข้อมูลเดิมในตาราง ไม่ได้เอา รูปแบบที่เราต้องค่ามาแสดงผลด้วย ดังนั้นแล้ว การจะแสดงผลวันที่ให้เป็นไปตามต้องการก็ต้องเพิ่มคอลั่ม เพื่อแปลงวันที่จากตัวเลข เป็น ตัวอักษรตามที่เราต้องการ เช่น ด้านบนจะแสดงผลเป็น 9/2/1965 ซึ่งใน Excel เราต้องไว้เป็น 9-ก.พ.-65 อาจจะเป็นรูปแบบที่ผิดเรื่องปี พ.ศ. ให้แก้เป็น 9/2/2022 เพื่อให้ excel เข้าใจวันที่ในรูปแบบของ ค.ศ.

จากนั้นเปลี่ยน format ให้เป็นตามต้องการ เช่น 9 กุมภาพันธ์ 2565

จากนั้นกดเข้าไปกดหนดรูปแบบอีกครั้ง แต่เลือกตรง Custom เพื่อรหัสการจัดรูปแบบ ในภาพนี้จะเป็น [$-th-TH,107]d mmmm yyyy;@ ซึ่งใน Excel แต่ละ version ก็จะใช้รหัสแต่ต่างกันออกไป ให้คัดลอกข้อความส่วนนี้ไว้

ใช้สูตร =TEXT(คอลั่มวันที่,"รูปแบบวันที่ที่ต้องการ")

=TEXT(K2,"[$-th-TH,107]d mmmm yyyy;@")

เพิ่มคอลั่ม print_date และ print_appoint เข้าไปจากนั้นกด save และกลับไปที่ Word

เมื่อเปิด Word ให้ทำตามกระบวนการเดิมซ้ำ เพื่อโหลดข้อมูลใหม่เข้ามา จากนั้นเลือก Merge ไปที่คอลั่ม print_date, print_appoint

เมื่อกด Preview เราก็จะได้ format วันที่ตามที่ต้องการแล้ว หรือหากไม่ต้องการใช้งานคอลั่มวันที่ในการคำนวน อาจจะพิมพ์เป็นข้อความลงไปเลยก็ได้เช่นกัน

สรุป

Mail Merge ค่อนข้างใช้งานง่าย แต่ก็มีข้อจะกัดเรื่องการพิมพ์ เราไม่สามารถจัดหน้าการพิมพ์ได้ตามใจชอบ บางครั้งไม่สามารถพิมพ์กระดาษแนวตั้งได้ เท่าทีทดสอบแล้ว แนวตั้ง A5 พิมพ์ไม่ได้เลย ไม่ว่าจะตั้งค่าอย่างไรก็ตาม มันจะไม่ออกมาตามแนวที่ตั้งไว้ วิธีแก้ปัญหาก็คือ Print ออกมาเป็น PDF จากนั้นเอาไฟล์ PDF ไปปริ้นอีกทีหนึ่ง