copy dữ liệu sang file excel đang đóng

Liên hệ QC

momo101194

Thành viên mới
Tham gia
1/6/20
Bài viết
38
Được thích
5
Mã:
Sub test()
 
  Dim wb1 As Workbook
  Workbooks.Open ThisWorkbook.Path & "C:\Users\user1\Desktop\copy.xlsx"
  Set wb1 = ActiveWorkbook
 
  wb1.Worksheets("Sheet1").Range("A1:C4") = _
  ThisWorkbook.Worksheets("Sheet1").Range("A1:C4")
 

  Application.DisplayAlerts = False
  wb1.Close
  Application.DisplayAlerts = True
 
End Sub
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call test
End Sub
Xin chào các anh chị diễn đàn ah!
Em muốn sau khi đóng file a .Thì nội dung của sheet1 trong file a ,sẽ đuợc lưu vào file b đang đóng ah.
Em viết như thế này như không đúng ah,Mong các anh chị xem giúp ah.
 

File đính kèm

  • file thuc hien.xlsm
    15.9 KB · Đọc: 5
  • copy.xlsx
    8.1 KB · Đọc: 6
Mã:
Sub test()

  Dim wb1 As Workbook
  Workbooks.Open ThisWorkbook.Path & "C:\Users\user1\Desktop\copy.xlsx"
  Set wb1 = ActiveWorkbook

  wb1.Worksheets("Sheet1").Range("A1:C4") = _
  ThisWorkbook.Worksheets("Sheet1").Range("A1:C4")


  Application.DisplayAlerts = False
  wb1.Close
  Application.DisplayAlerts = True

End Sub
Mã:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call test
End Sub
Xin chào các anh chị diễn đàn ah!
Em muốn sau khi đóng file a .Thì nội dung của sheet1 trong file a ,sẽ đuợc lưu vào file b đang đóng ah.
Em viết như thế này như không đúng ah,Mong các anh chị xem giúp ah.
Bạn nói " sẽ được lưu vào file b đang đóng", nhưng code của bạn lại có Workbooks.Open... thì có nghĩa là file b được mở rồi copy dữ liệu => mâu thuẫn. Nếu lưu vào file b đang đóng thì bạn dùng ADO. Ví dụ thế này. Nếu file b của bạn có tới 10 MB, code của bạn đang dùng khi mở file b lên sẽ mất khoảng vài chục giây và khi đóng lại cũng mất khoảng vài giây. Nếu bạn dùng ADO để nạp dữ liệu vào file b thì bạn chỉ mất khoảng 1-2 giây thôi.
 
Upvote 0
Bạn nói " sẽ được lưu vào file b đang đóng", nhưng code của bạn lại có Workbooks.Open... thì có nghĩa là file b được mở rồi copy dữ liệu => mâu thuẫn. Nếu lưu vào file b đang đóng thì bạn dùng ADO. Ví dụ thế này. Nếu file b của bạn có tới 10 MB, code của bạn đang dùng khi mở file b lên sẽ mất khoảng vài chục giây và khi đóng lại cũng mất khoảng vài giây. Nếu bạn dùng ADO để nạp dữ liệu vào file b thì bạn chỉ mất khoảng 1-2 giây thôi.
Ado em khhong lành lắm ah.Anh có thể viết giúp em để em tham khảo với ah.
Em cảm ơn @syquyen1987
 
Upvote 0
Web KT
Back
Top Bottom