Cho mình hỏi với ạ, mình muốn gộp nhiều file vào 1 file tổng quát và có sử dụng đoạn code như dưới, nhưng khi mình run thì có hiện lên file thư mục và chọn được file nhưng 1, File thứ 1 chuyển sang file tổng thiếu 3 dòng cuối 2, các file khác chỉ sang được vài dòng. Mình ko rõ sai ở đâu, ad xem giúp mình nhé, mình cảm ơn ạ
Sub Gop_nhieufile()
With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = True
.Show
Dim i As Long
For i = 1 To .SelectedItems.Count
Dim wb_kq As Workbook
Dim wb_select As Workbook
Set wb_kq = ThisWorkbook
Set wb_select = Workbooks.Open(.SelectedItems(i))
Dim dongcuoi_wb2 As Long
dongcuoi_wb2 = wb_select.Sheets("Outlet").Range("A" & Rows.Count).End(xlUp).Row
Dim dongdau_wb2 As Long
dongdau_wb2 = 4
Dim khoangcach_wb2 As Long
khoangcach_wb2 = dongcuoi_wb2 - dongdau_wb2 + 1
Dim dongcuoi_kq As Long
dongcuoi_kq = wb_kq.Sheets("data").Range("A" & Rows.Count).End(xlUp).Row
wb_kq.Sheets("Data").Range("A" & dongcuoi_kq + 1 & ":DL" & khoangcach_wb2).Value = _
wb_select.Sheets("outlet").Range("A" & dongdau_wb2 & ":DL" & dongcuoi_wb2).Value
wb_select.Close savechanges:=False
Next i
End With
End Sub
Bạn xem đoạn này:
wb_kq.Sheets("Data").Range("A" & dongcuoi_kq + 1 & ":DL" & khoangcach_wb2)
vùng range ở đây bạn xác định là từ dongcuoi_kq+1 tới dòng khoangcach_wb2. Như vậy chưa đúng.
điểm kết thúc phải là dòng cuối kq + khoảng cách wb2. Bạn chú ý chỗ này nhé.
Bạn xem đoạn này:
wb_kq.Sheets("Data").Range("A" & dongcuoi_kq + 1 & ":DL" & khoangcach_wb2)
vùng range ở đây bạn xác định là từ dongcuoi_kq+1 tới dòng khoangcach_wb2. Như vậy chưa đúng.
điểm kết thúc phải là dòng cuối kq + khoảng cách wb2. Bạn chú ý chỗ này nhé.
Bạn xem đoạn này:
wb_kq.Sheets("Data").Range("A" & dongcuoi_kq + 1 & ":DL" & khoangcach_wb2)
vùng range ở đây bạn xác định là từ dongcuoi_kq+1 tới dòng khoangcach_wb2. Như vậy chưa đúng.
điểm kết thúc phải là dòng cuối kq + khoảng cách wb2. Bạn chú ý chỗ này nhé.
mình cảm ơn ạ!