Bạn thử code sau nhé:Đã thử và không hoạt động bạn
View attachment 269056
Sub CopyDL()
With CreateObject("ADODB.Connection")
.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.Path & "\File_Dich.xlsb;Extended Properties=""Excel 12.0;HDR=NO;IMEX=-1"""
.Execute "Insert Into [Sheet1$] Select * From [EXCEL 12.0;HDR=No;IMEX=-1;Database=" & ThisWorkbook.FullName & "].[Data1$A1:Z] "
End With
End Sub
Bạn xem lại xem.Đã thử và không hoạt động bạn
View attachment 269056
Mình thử code của bạn chỉ. Copy được. Nhưng muốn copy cả định dạng của hàng và cột thì có được không?.bạn thử code sau. Mở File nguon lên và chạy code
lưu ý file dich phải đang đóng nếu ko là báo lỗi
PHP:Sub Copy_PasteFileDong() Application.ScreenUpdating = False Dim nguon(), OpenFile As String nguon = Range([A1], [A65536].End(3)).Resize(, 26).Value OpenFile = ThisWorkbook.Path & "\File_Dich.xlsb" Workbooks.Open OpenFile With ActiveWorkbook With .ActiveSheet .UsedRange.ClearContents .[A65536].End(3).Resize(UBound(nguon), 26) = nguon End With .Close True End With Application.ScreenUpdating = True End Sub
Đúng rồi bạn ơi. Độ rộng của cột, chiều cao của hàng.Định dạng của hàng và cột tức là chiều cao hàng và độ rộng cột phải không?
Chào bạn hôm nay có dịp tìm hiểu chủ đề copy dữ liệu vào file đóng.Với nội dung code trên muốn lấy dữ liệu từng cột mà không lấy toàn bộ dữ liệu và bổ xung thêm cột ngày tháng tại sheet(DATA) cột B để lọc lấy dữ liệu theo ngày thì có thể chỉnh code thế nào ?Rất mong bạn cùng anh chị em diễn đàn chỉ bảo giúp.Hôm nay mình ngồi Voc form một ngày thấy cũng ko khó lắm trừ những cái cao cấp còn bình bình mình cũng xử được tuốt...
mình làm cho bạn tải file này về thay thế file cũ nha
mình viết thêm cho bạn một code khác cũng tương tự như vậy nhưng hơi khác một tí .... code này file dich đang đóng hay mở nó cũng mần hết và ĐẶC BIỆT dành ai nhát Gan nữa nha
PHP:Sub Copy_PasteFileDong2() ''Minh viet cho ban 2 trong mot Application.ScreenUpdating = False Dim nguon(), Wh As Workbook, OpenFile As String OpenFile = ThisWorkbook.Path & "\File_Dich.xlsb" nguon = Range([A1], [A65536].End(3)).Resize(, 26).Value For Each Wh In Workbooks If Wh.Name <> ThisWorkbook.Name Then Wh.Close savechanges:=False End If Next Wh Workbooks.Open OpenFile With Workbooks("File_Dich.xlsb") With Sheets("sheet1") .UsedRange.ClearContents '''Neu xoa dong nay di thi copy moi duoi nhau_Con ko thi nguoc lai .[A65536].End(3).Resize(UBound(nguon), 26) = nguon End With .Close True End With Application.ScreenUpdating = True End Sub