Xin tạo giúp 1 macro thêm dữ liệu vào 1 sheet đã chứa sẵn dữ liệu! (2 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

anhyan130902

Thành viên mới
Tham gia
12/5/10
Bài viết
6
Được thích
0
Em đang có 1 bảng dữ liệu trên excel.Giả sử nó đã chứa dữ liệu tại Range("A1:D10000") tại Sheet1 trong Workbook1. Bây giờ em muốn chèn thêm vào dữ liệu từ Sheet2 trong Workbook2 vào Sheet1 trong Workbook1 này, với các yêu cầu sau :
1. Dữ liệu thêm vào được tiếp nối từ dòng dữ liệu cuối cùng ( ở đây là A10001 )
2. Workbook2 đang mở, Workbook1 đang đóng
3. Chép toàn bộ giá trị, định dạng, comment, không cần chép công thức

4.Cái này phát sinh thêm nếu được nhờ các bác giúp luôn nhé : Workbook2 đang đóng, workbook1 đang mở

Do dữ liệu của em đang nằm ở rất nhiều nguồn khác nhau nên em đang rất cần cái Macro này. Mong các bác giúp cho ạ. Em xin cảm ơn nhiều
 
Em đang có 1 bảng dữ liệu trên excel.Giả sử nó đã chứa dữ liệu tại Range("A1:D10000") tại Sheet1 trong Workbook1. Bây giờ em muốn chèn thêm vào dữ liệu từ Sheet2 trong Workbook2 vào Sheet1 trong Workbook1 này, với các yêu cầu sau :
1. Dữ liệu thêm vào được tiếp nối từ dòng dữ liệu cuối cùng ( ở đây là A10001 )
2. Workbook2 đang mở, Workbook1 đang đóng
3. Chép toàn bộ giá trị, định dạng, comment, không cần chép công thức

4.Cái này phát sinh thêm nếu được nhờ các bác giúp luôn nhé : Workbook2 đang đóng, workbook1 đang mở

Do dữ liệu của em đang nằm ở rất nhiều nguồn khác nhau nên em đang rất cần cái Macro này. Mong các bác giúp cho ạ. Em xin cảm ơn nhiều

1/ Khi Wb1 mở, Wb2 đóng, chép cái này vào modul của Wb1
PHP:
Sub Copy()
    Dim Ex As Excel.Application
    Dim WbN As Workbook
    Dim WbD As Workbook
    Dim WsN As Worksheet
    Dim WsD As Worksheet
    Set Ex = New Excel.Application
    Set WbD = Ex.Workbooks.Open(ThisWorkbook.Path & "\Book2.xls")
    Set WsN = Sheet1
    Set WsD = WbD.Worksheets("Sheet1")
    n = WsN.Range("A65000").End(xlUp).Row
    For i = 1 To n
        m = WsD.Range("A65000").End(xlUp).Row
        For j = 1 To 4
            WsD.Cells(m + 1, j) = WsN.Cells(i, j)
        Next
    Next
    MsgBox "Xong"
    WbD.Save: WbD.Close
    Set Ex = Nothing
End Sub

2/ Khi Wb1 đóng, Wb2 mở, chép cái này vào modul của Wb2
PHP:
Sub Copy()
    Dim Ex As Excel.Application
    Dim WbN As Workbook
    Dim WbD As Workbook
    Dim WsN As Worksheet
    Dim WsD As Worksheet   
    Set Ex = New Excel.Application
    Set WbN = Ex.Workbooks.Open(ThisWorkbook.Path & "\Book1.xls")
    Set WsD = Sheet1
    Set WsN = WbN.Worksheets("Sheet1")
    n = WsN.Range("A65000").End(xlUp).Row
    For i = 1 To n
        m = WsD.Range("A65000").End(xlUp).Row
        For j = 1 To 4
            WsD.Cells(m + 1, j) = WsN.Cells(i, j)
        Next
    Next
    MsgBox "Xong"
    WbN.Save: WbN.Close
    Set Ex = Nothing
End Sub
 
Upvote 0
Web KT

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

Back
Top Bottom