เมื่อทำงานกับไฟล์ Microsoft Excel หลายไฟล์ บางครั้งต้อง รวมไฟล์และชีท Excel เข้าไฟล์ Excel ใหม่หรือมีอยู่ หรือรวมไฟล์ Excel หลายไฟล์เป็นไฟล์เดียว แม้จะ copy paste ข้อมูลจากชีทหนึ่งไปอีกชีท หรือจากไฟล์หนึ่งไปอีกไฟล์ได้ แต่จะรบกวนเมื่อมีเยอะมาก ในบทความนี้ เราจะแชร์วิธีรวมด้วยฟังก์ชันในตัว

วิธี Merge Excel Files & Sheets
ก่อนเริ่มรวมไฟล์และชีท ให้วางแผนดี แม้จะจัดเรียงชีทใหม่ภายหลังได้ แต่ยิ่งวางแผนดี ยิ่งใช้เวลาน้อยในการจัดเรียงหลังรวม
- รวมชีทเข้าไฟล์ใหม่หรือมีอยู่
- รวมไฟล์ Excel หลายไฟล์
ฟังก์ชันที่ใช้จะให้ตัวเลือกย้ายชีท แต่ขอแนะนำให้ copy แทน หากต้องการไฟล์ต้นฉบับอีกครั้ง จะยังมีอยู่
รวมชีทเข้าไฟล์ใหม่หรือมีอยู่
ก่อนเริ่มรวม ให้แน่ใจว่าเปิดไฟล์ Excel ทั้งหมดอยู่ เปิดอยู่เท่านั้นที่ฟังก์ชันรวมของ Excel เลือกเป็นปลายทางได้ หากวางแผนย้ายชีทจากหลายไฟล์เข้าไฟล์ Excel ใหม่ สามารถทำได้
- เปิดไฟล์ Excel ต้นทาง และสลับไปชีทที่ต้องการคัดลอก
- คลิกแท็บ Home > ส่วน Cells > Format > Move or copy sheet
- จะเปิดป๊อปอัพ เลือกไฟล์ Excel ที่มีอยู่ หรือสร้างไฟล์ใหม่ทันที
- เมื่อ เลือกตัวเลือกไฟล์ใหม่ จะสร้างไฟล์ใหม่ทันที แต่ไม่บันทึก
- เมื่อ เลือกไฟล์ที่มีอยู่ มีตัวเลือกว่าจะแทรกชีทที่ไหน คือ ก่อนหรือหลังชีทที่มีอยู่ หรือท้ายสุด
- ต้องติ๊กถูกเช็กบ็อกซ์— Create a copy จะทำให้ชีทเดิมอยู่ในสมุดงานต้นฉบับ
ย้ายเข้าไฟล์ที่มีอยู่ได้เช่นกัน มีประโยชน์หากมีชีทเยอะ และต้องแทรกชีทตรงกลาง หรือย้ายไปท้ายสุด
หากต้องการย้ายชีทหลายชีทไปอีกไฟล์ Excel ก่อนใช้ Move or copy sheet ให้เลือกชีทด้วย Ctrl หรือ Shift Shift จะเลือกชีทที่ติดกันหรือช่วงชีท Ctrl จะเลือกชีทแยกต่างหาก ขั้นตอนอื่นเหมือนเดิม ใช้ได้สำหรับรวมไฟล์ Excel แบบแมนนวล
รวมไฟล์ Excel หลายไฟล์

การรวมไฟล์ Excel เป็นเรื่องซับซ้อน สำหรับนี้จะใช้ VBA code จาก ExtendOffice จะอนุญาตให้รวมไฟล์หรือสมุดงานหลายไฟล์ในโฟลเดอร์
- สร้างสเปรดชีท Excel ใหม่ และกด ALT + F11 เปิดส่วน Developer
- คลิกเมนู Insert แล้ว Module
- วางโค้ดด้านล่าง ตั้งชื่อ Module ว่า MergeExcel
Sub MergeExcel() Path = "D:\ExcelFiles\" Filename = Dir(Path & "*.xlsx") Do While Filename <> "" Workbooks.Open Filename:=Path & Filename, ReadOnly:=True For Each Sheet In ActiveWorkbook.Sheets Sheet.Copy After:=ThisWorkbook.Sheets(1) Next Sheet Workbooks(Filename).Close Filename = Dir() Loop End Sub
ต่อไป กด Alt + F8 เปิดกล่องโต้ตอบ Macro จะแสดง Macro ทั้งหมดในชีท เลือก MergeExcel และคลิก Run จะถูกขอให้บันทึกไฟล์ ต้องทำให้แน่ใจ ทำแล้ว ชีททั้งหมดจากไฟล์ Excel ต่างๆ จะพร้อมใช้งานในไฟล์ Excel ที่รัน Macro เว็บไซต์ ExtendOffice มีแมโครแบบนี้เยอะ ขอแนะนำให้ไปเยี่ยมชมที่ extendoffice.com
อย่างไรก็ตาม ประสบการณ์อาจไม่ราบรื่นในครั้งแรก ไม่ต้องกังวล จะไม่ลบไฟล์ใดๆ แต่ขอแนะนำให้สำรองไฟล์ ทดลองกับข้อมูลสุ่ม และตรวจสอบว่าผลลัพธ์ตรงตามต้องการหรือไม่
หวังว่าบทช่วยสอนเข้าใจง่าย และสามารถรวมไฟล์และชีท Excel ได้