Tổng hợp các file khác nhau vào 1 file tổng hợp tuơng ứng với mỗi sheet

  • Thread starter Thread starter nmhung49
  • Ngày gửi Ngày gửi
Liên hệ QC

nmhung49

Thành viên tích cực
Tham gia
20/8/09
Bài viết
1,186
Được thích
1,337
Em có 1 vấn đề khó khăn nhờ anh chị các bạn giúp đỡ là 1 file tổng hợp tất cả các chi nhánh ở mỗi tháng, các file khi gửi các chi nhánh làm xong rồi gửi về bây giờ em muốn tổng hợp lại tất các các file thành file Tonghop_CN với từ loại con ở mỗi sheet khác nhau, em có làm mẫu trong file. Trong file CN1001, CN1002..v.v vì còn rất nhiều Chi nhánh em chỉ lấy vì dụ đồng thời trong mỗi file có rất nhiều sheet em cũng lấy ví dụ có 3 sheet thôi. Vậy làm sao mình có thể tổng hợp các file ứng với mỗi sheet vào tưng sheet vào file Tonghop_CN.Em tìm trên diễn đàn mà không có Mong các bạn và anh chị trên diễn đàn giúp đỡ Nếu có đường link cho em xin cũng được Thanks ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
Em có 1 vấn đề khó khăn nhờ anh chị các bạn giúp đỡ là 1 file tổng hợp tất cả các chi nhánh ở mỗi tháng, các file khi gửi các chi nhánh làm xong rồi gửi về bây giờ em muốn tổng hợp lại tất các các file thành file Tonghop_CN với từ loại con ở mỗi sheet khác nhau, em có làm mẫu trong file. Trong file CN1001, CN1002..v.v vì còn rất nhiều Chi nhánh em chỉ lấy vì dụ đồng thời trong mỗi file có rất nhiều sheet em cũng lấy ví dụ có 3 sheet thôi. Vậy làm sao mình có thể tổng hợp các file ứng với mỗi sheet vào tưng sheet vào file Tonghop_CN.Em tìm trên diễn đàn mà không có Mong các bạn và anh chị trên diễn đàn giúp đỡ Nếu có đường link cho em xin cũng được Thanks ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Bạn chạy code sau thử nhé.

Mã:
Sub GopSheet()
  On Error Resume Next
  Dim myBook As Workbook, mySheet As Worksheet, i As Long
  With Application
    .DisplayAlerts = False
    .EnableEvents = False
    .ScreenUpdating = False
  End With
  With Application.FileSearch
    .LookIn = ThisWorkbook.Path
    .FileType = msoFileTypeExcelWorkbooks
    If .Execute() > 0 Then
      For i = 1 To .FoundFiles.Count
        If .FoundFiles(i) <> ThisWorkbook.FullName Then
          Set myBook = Workbooks.Open(.FoundFiles(i))
          For Each mySheet In myBook.Worksheets
              With ThisWorkbook.Sheets(1)
                mySheet.Range("A4:M" & .Range("C65536").End(xlUp).Row).Copy .Range("C65536").End(xlUp).Offset(1, 0)
                .Range(.Range("A65536").End(xlUp).Offset(1, 0), _
                .Range("C65536").End(xlUp).Offset(0, -2)).Value = myBook.Name
                .Range(.Range("B65536").End(xlUp).Offset(1, 0), _
                .Range("C65536").End(xlUp).Offset(0, -1)).Value = mySheet.Name
              End With
            
          Next mySheet
          myBook.Close
        End If
      Next i
    End If
  End With
  With Application
    .DisplayAlerts = True
    .EnableEvents = True
    .ScreenUpdating = True
  End With
End Sub

Lưu ý là có thêm 1 cột tên sheet, do đó bạn chỉnh lại cái trường của sheet tổng hợp cho thích hợp nhé.
 
Upvote 0
Em sài excel 2007 mà em thấy Application.filesearch là chắc không được rồi vì bị lỗi, không biết em có thể dùng đoạn code này mà áp dụng phương pháp thay filesearch của anh Ndu không nữa
 
Upvote 0
Em có 1 vấn đề khó khăn nhờ anh chị các bạn giúp đỡ là 1 file tổng hợp tất cả các chi nhánh ở mỗi tháng, các file khi gửi các chi nhánh làm xong rồi gửi về bây giờ em muốn tổng hợp lại tất các các file thành file Tonghop_CN với từ loại con ở mỗi sheet khác nhau, em có làm mẫu trong file. Trong file CN1001, CN1002..v.v vì còn rất nhiều Chi nhánh em chỉ lấy vì dụ đồng thời trong mỗi file có rất nhiều sheet em cũng lấy ví dụ có 3 sheet thôi. Vậy làm sao mình có thể tổng hợp các file ứng với mỗi sheet vào tưng sheet vào file Tonghop_CN.Em tìm trên diễn đàn mà không có Mong các bạn và anh chị trên diễn đàn giúp đỡ Nếu có đường link cho em xin cũng được Thanks ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Bạn qua đây xem thử có giúp được gì cho bạn không
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom