Tạo macro chép file thay đổi theo ngay

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

thaomoc7379

Thành viên mới
Tham gia
7/3/24
Bài viết
9
Được thích
0
Chào các anh chị,
em làm báo cáo tổng hợp hàng này, mà file nguồn lưu ở máy khác trên ổ mạng, và file này được đặt/đổi tên file theo ngày.
em muốn tạo macro chép file đó (file mới nhất của ngày hôm đó) về máy em.
mong các anh chị chỉ giúp ạ.
em cảm ơn.
 
Chào các anh chị,
em làm báo cáo tổng hợp hàng này, mà file nguồn lưu ở máy khác trên ổ mạng, và file này được đặt/đổi tên file theo ngày.
em muốn tạo macro chép file đó (file mới nhất của ngày hôm đó) về máy em.
mong các anh chị chỉ giúp ạ.
em cảm ơn.
Bạn chép thủ tục này vào một module, sau đó sửa đường dẫn từ thư mục nguồn đến thư mục đích:
Mã:
Sub CopyAFile()
    FileCopy "\\HOME\ServerData\PHONG HCNS\DienThoai_Internet.xlsx", _
             "C:\Users\HTN\OneDrive\Desktop\DienThoai_Internet.xlsx"
End Sub
Bài đã được tự động gộp:

À, tốt nhất là phải bẩy lỗi nếu file nguồn không tồn tại, bạn nên dùng thủ tục này:
Mã:
Sub CopyAFile()
    Dim filePath As String
    filePath = "\\HOME\ServerData\PHONG HCNS\DienThoai_Internet.xlsx"
    If Dir(filePath) <> "" Then
        FileCopy filePath, "C:\Users\HTN\OneDrive\Desktop\DienThoai_Internet.xlsx"
    Else
        MsgBox "FILE: [ " & filePath & " ] không ton tai."
    End If
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn anh nhiều
nhưng file nguồn của em là thay đổi theo ngày ạ.
ví dụ: ngày 7/3/2024 tên file là: 7-Mar-24 và ngày 8/3 là: 8-Mar-24.
và em muốn lấy dữ liệu một số chỗ và sheet của file trên thôi và em chỉ làm trong ngày hiện tại (today) thôi ạ. nên em muốn trổ/mở file đúng ngày mình mở file đó ạ.
nhờ anh chỉ giúp ạ
 
Upvote 0
Cảm ơn anh nhiều
nhưng file nguồn của em là thay đổi theo ngày ạ.
ví dụ: ngày 7/3/2024 tên file là: 7-Mar-24 và ngày 8/3 là: 8-Mar-24.
và em muốn lấy dữ liệu một số chỗ và sheet của file trên thôi và em chỉ làm trong ngày hiện tại (today) thôi ạ.
nhờ anh chỉ giúp ạ
Bạn cho tôi đường dẫn file nguồn và đường dẫn file đích đi, tôi xử lý cái tên file cho.
 
Upvote 0
Cảm ơn anh
folder nguồn: P:\Report chứa file 7-Mar-24 (hôm nay) và ngày mai sẽ phải lấy dữ liệu từ file 8-Mar-24
folder đích: E:\Private\Data
ah em lấy toàn bộ sheet 1 và sheet 2 của của file nguồn ạ: em paste special: format trước sau đó paste value
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn anh
folder nguồn: P:\Report chứa file 7-Mar-24 (hôm nay) và ngày mai sẽ phải lấy dữ liệu từ file 8-Mar-24
folder đích: E:\Private\Data
ah em lấy toàn bộ sheet 1 và sheet 2 của của file nguồn ạ: em paste special: format trước sau đó paste value
OK, thử nghiệm:
Mã:
Sub CopyAFile()
    Dim strFilePath As String, strFileName As String
    strFilePath = "P:\Report\"
    strFileName = Format(Date, "d-mmm-yy") & ".xlsx"
    strFilePath = strFilePath & strFileName
    If Dir(strFilePath) <> "" Then
        FileCopy strFilePath, "E:\Private\Data\" & strFileName
    Else
        MsgBox "FILE: [ " & strFilePath & " ] không ton tai."
    End If
End Sub
 
Upvote 0
Dạ em đã copy được rồi ạ, cảm ơn anh nhiều
ah nếu file nguồn có thêm chữ trước ngày thì làm sao ạ: ví dụ: report 7-Mar-24
và em chỉ muốn copy sheet 1 và sheet 2 thôi và chép về đè lên sheet 1 và sheet 2 tương ứng của file đích, mong anh chỉ giúp ạ?
cảm ơn anh trước
 
Upvote 0
Dạ em đã copy được rồi ạ, cảm ơn anh nhiều
ah nếu file nguồn có thêm chữ trước ngày thì làm sao ạ: ví dụ: report 7-Mar-24
và em chỉ muốn copy sheet 1 và sheet 2 thôi và chép về đè lên sheet 1 và sheet 2 tương ứng của file đích, mong anh chỉ giúp ạ?
cảm ơn anh trước
strFileName ="report " & Format(Date, "d-mmm-yy") & ".xlsx"
 
Upvote 0
Dạ em đã copy được rồi ạ, cảm ơn anh nhiều
ah nếu file nguồn có thêm chữ trước ngày thì làm sao ạ: ví dụ: report 7-Mar-24
và em chỉ muốn copy sheet 1 và sheet 2 thôi và chép về đè lên sheet 1 và sheet 2 tương ứng của file đích, mong anh chỉ giúp ạ?
cảm ơn anh trước
Code đổi khác nhiều. Tốt hơn là viết lại từ đầu.
Cho biết tất cả mọi gì liên quan đến vụ copy này, để người ta còn làm việc.
Chứ cứ mỗi lần nhận được câu trả lời lại lòi thêm một điều kiện thì chỉ có dân code thuê mới ham làm cho bạn.
 
Upvote 1
Web KT
Back
Top Bottom