RebelChibi
Thành viên mới
- Tham gia
- 18/5/19
- Bài viết
- 2
- Được thích
- 0
Chào cả nhà,
e gà mờ về vba, hiện có code để gộp nhiều file excel lại thành 01 ( từ file ngày vào file test ) nhưng khi chạy báo lỗi 438, loay hoay không biết làm sao. Xin nhờ các cao nhân chỉ giáo.
Sub tong_hop_du_lieu()
Dim rebel As Variant
Dim i As Integer
Dim wb As Workbook
Dim rebel_range As Range
Dim paste_range As Range
Dim chibi_rgn As Range
Dim so_dong_output As Integer
Dim so_dong_input As Integer
Application.ScreenUpdating = False
'On Error Resume Next
rebel = Application.GetOpenFilename(filefilter:="Excel file (*.xlsm), *.xlsx", MultiSelect:=True)
For i = 1 To UBound(rebel)
Set wb = Workbooks.Open(rebel(i))
Set rebel_range = wb.Sheets(1).Range("D320000")
so_dong_input = Application.WorksheetFunction.CountA(rebel_range)
Set chibi_rgn = ThisWorkbook.Sheets(1).Range("D320000")
so_dong_output = Application.WorksheetFunction.CountA(chibi_rgn)
Set paste_range = ThisWorkbook.Sheets(4).Range("C3").Offset(so_dong_output, 0)
wb.Sheets(1).Range("C3:G" & so_dong_input + 2, "K3:R" & so_dong_input + 2).Copy
paste_range.PasteSpecial xlPasteValues
wb.Close (False)
Next
Application.ScreenUpdating = True
End Sub
e gà mờ về vba, hiện có code để gộp nhiều file excel lại thành 01 ( từ file ngày vào file test ) nhưng khi chạy báo lỗi 438, loay hoay không biết làm sao. Xin nhờ các cao nhân chỉ giáo.
Sub tong_hop_du_lieu()
Dim rebel As Variant
Dim i As Integer
Dim wb As Workbook
Dim rebel_range As Range
Dim paste_range As Range
Dim chibi_rgn As Range
Dim so_dong_output As Integer
Dim so_dong_input As Integer
Application.ScreenUpdating = False
'On Error Resume Next
rebel = Application.GetOpenFilename(filefilter:="Excel file (*.xlsm), *.xlsx", MultiSelect:=True)
For i = 1 To UBound(rebel)
Set wb = Workbooks.Open(rebel(i))
Set rebel_range = wb.Sheets(1).Range("D320000")
so_dong_input = Application.WorksheetFunction.CountA(rebel_range)
Set chibi_rgn = ThisWorkbook.Sheets(1).Range("D320000")
so_dong_output = Application.WorksheetFunction.CountA(chibi_rgn)
Set paste_range = ThisWorkbook.Sheets(4).Range("C3").Offset(so_dong_output, 0)
wb.Sheets(1).Range("C3:G" & so_dong_input + 2, "K3:R" & so_dong_input + 2).Copy
paste_range.PasteSpecial xlPasteValues
wb.Close (False)
Next
Application.ScreenUpdating = True
End Sub