โดย jataz2 » 07/06/2019 1:42 pm
อันนี้เป็น VBA script ครับ ถ้าไม่เคยลองใช้ ลองดูวิธัใช้งานตาม link ได้เลย
โค้ด: เลือกทั้งหมด
Sub simpleXlsMerger()
Dim bookList As Workbook
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object
Application.ScreenUpdating = False
Set mergeObj = CreateObject("Scripting.FileSystemObject")
Set dirObj = mergeObj.Getfolder("D:\TestMerge")
Set filesObj = dirObj.Files
For Each everyObj In filesObj
Set bookList = Workbooks.Open(everyObj)
Range("A3:IV" & Range("A65536").End(xlUp).Row).Copy
ThisWorkbook.Worksheets(1).Activate
Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close
Next
End Sub
อ่านไฟล์ excel ที่อยู่ใน D:\TestMerge ทีละไฟล์ เริ่มหยิบข้อมูลที่แถว A3 ไปจนถึง IV อ่านทุกแถวแล้วพ่นไว้ใน sheet เดียว จนครบทุกไฟล์ใน folder
ดูเพิ่มเติมได้ที่นี่ครับ
http://quadexcel.com/merge-multiple-exc ... sheet-vba/
อันนี้เป็น VBA script ครับ ถ้าไม่เคยลองใช้ ลองดูวิธัใช้งานตาม link ได้เลย
[code]Sub simpleXlsMerger()
Dim bookList As Workbook
Dim mergeObj As Object, dirObj As Object, filesObj As Object, everyObj As Object
Application.ScreenUpdating = False
Set mergeObj = CreateObject("Scripting.FileSystemObject")
Set dirObj = mergeObj.Getfolder("D:\TestMerge")
Set filesObj = dirObj.Files
For Each everyObj In filesObj
Set bookList = Workbooks.Open(everyObj)
Range("A3:IV" & Range("A65536").End(xlUp).Row).Copy
ThisWorkbook.Worksheets(1).Activate
Range("A65536").End(xlUp).Offset(1, 0).PasteSpecial
Application.CutCopyMode = False
bookList.Close
Next
End Sub[/code]
อ่านไฟล์ excel ที่อยู่ใน D:\TestMerge ทีละไฟล์ เริ่มหยิบข้อมูลที่แถว A3 ไปจนถึง IV อ่านทุกแถวแล้วพ่นไว้ใน sheet เดียว จนครบทุกไฟล์ใน folder
ดูเพิ่มเติมได้ที่นี่ครับ http://quadexcel.com/merge-multiple-excel-files-into-a-single-spreadsheet-vba/