Tạo file backup sang thư mục khác

Liên hệ QC

Thanh1102

Thành viên hoạt động
Tham gia
29/11/08
Bài viết
147
Được thích
46
Em có một vài file Excel đang để tại thư mục A (thư mục làm việc hàng ngày). Nhằm tránh bị xoá mất file. Nên em muốn tạo file backup và được lưu trữ tại một thư mục khác ngoài thư mục làm việc hàng ngày nhưng không muốn làm xong lại phải copy sang. (Đã tạo file backup (.xlk) nhưng file backup lại nằm trong thư mực làm việc hàng ngày). Các bác xem giúp em vấn đề này nhé. Chân thành cảm ơn.
 
Bạn copy code này vào file bạn cần lưu nha. Chú ý tạo thư mục cần lưu là Backup cùng thư mục với file.
Sub Saveasfile()
Dim Msg, style, title, TB, a
Dim Filenames, Fath As String
On Error Resume Next

Application.ScreenUpdating = False
Fath = ThisWorkbook.Path
Filenames = ActiveWorkbook.Name & "_" & Format(Date, "dd-mm-yy") & ".xls"

Msg = "Luu du lieu : " & Filenames & " Ban muon luu file nay ? "
style = vbYesNo + vbInformation
title = "THONG BAO ! "
TB = MsgBox(Msg, style, title)
If TB = vbYes Then
ActiveWorkbook.Copy
ActiveWorkbook.SaveAs Filename:=Fath & "\Backup\" & Filenames
'ActiveWorkbook.Close savechanges:=False
Else: Exit Sub
End If
End Sub
 
Em có một vài file Excel đang để tại thư mục A (thư mục làm việc hàng ngày). Nhằm tránh bị xoá mất file. Nên em muốn tạo file backup và được lưu trữ tại một thư mục khác ngoài thư mục làm việc hàng ngày nhưng không muốn làm xong lại phải copy sang. (Đã tạo file backup (.xlk) nhưng file backup lại nằm trong thư mực làm việc hàng ngày). Các bác xem giúp em vấn đề này nhé. Chân thành cảm ơn.

Bạn cũng có thể tham khảo thêm tại đây
 
Em có nhiều file muốn backup 1 sheet của các file đó sang duy nhất 1 file (định dạng sheet của các file là như nhau). Vậy thì làm như thế nào? Xin các bác chỉ giúp
 
Bạn cũng có thể tham khảo thêm tại đây
Cảm ơn bạn. Mình muốn sao lưu sang thư mục khác thư mục có file sử dụng.
Hoặc là file backup được tạo từ chức năng tạo backup của Excel, khi save as chọn General Option nhưng không nằm cùng thư mục có file sử dụng.
File sử dụng - nằm ở thư mục A
file backup (.xlk)- nằm ở thư mục B
Các bạn xem giúp mình nhé.
 
Mình giới thiệu cho bạn hàm: MkDir

Bạn có thể tùy biến trong các ví dụ trên để tạo đường dẫn đến nơi bạn muốn lưu file Backup

Tên hàm:
MkDir
Mô tả:
MkDir path
Tạo thư mục
Tham số:
path
Đường dẫn nơi muốn tạo thư mục
Ví dụ:
Option Explicit
Private Sub Form_Load()
MkDir "D:\My Folder"
End Sub
 
Theo tôi, bạn tạo marco, có đoạn mã đại ý như sau:
FileCopy "C:\BaoCao\t409.xls", "E:\BackupBaoCao\t409.xls" rồi gán macro này vào một nút lệnh tự tạo, trước khi thoát bấm vào nút đó một phát là OK.
 
Cảm ơn bạn. Mình muốn sao lưu sang thư mục khác thư mục có file sử dụng.
Hoặc là file backup được tạo từ chức năng tạo backup của Excel, khi save as chọn General Option nhưng không nằm cùng thư mục có file sử dụng.
File sử dụng - nằm ở thư mục A
file backup (.xlk)- nằm ở thư mục B
Các bạn xem giúp mình nhé.

Mình đã gửi đoạn code trên nó đã lưu vào thư mục khác rồi đó còn gì. Nếu muôn lưu vào đâu nữa thì bạn sửa lại đường dẫn.
 
Xin lỗi chắc mình nhầm thư mục lập trình cho excel
 
Bạn copy code này vào file bạn cần lưu nha. Chú ý tạo thư mục cần lưu là Backup cùng thư mục với file.

Bạn ơi mình có 4 file excell trong cùng thư mục, mình muốn hằng ngày cứ đến 8h tối là 4 file này tự động lưu vào thư mục "Du lieu Backup" của ổ E nằm ở một máy tính khác có kết nối mạng nội bộ với nhau. Nhờ bạn giúp mình nhé.
 
Bạn ơi mình có 4 file excell trong cùng thư mục, mình muốn hằng ngày cứ đến 8h tối là 4 file này tự động lưu vào thư mục "Du lieu Backup" của ổ E nằm ở một máy tính khác có kết nối mạng nội bộ với nhau. Nhờ bạn giúp mình nhé.
Để làm điều này không khó, nhưng lúc 8h tối 2 máy tính này phải đang mở và cái file điều khiển chứa code phải đang mở. Bạn có đủ các điều kiện này không?
 
Để làm điều này không khó, nhưng lúc 8h tối 2 máy tính này phải đang mở và cái file điều khiển chứa code phải đang mở. Bạn có đủ các điều kiện này không?


2 máy của mình mở liên tục đến 9h tối còn 4 file ngày nào củng mở để nhập dữ liệu nhưng có khi mở liên tục có khi chỉ mở một lúc thôi
 
2 máy của mình mở liên tục đến 9h tối còn 4 file ngày nào củng mở để nhập dữ liệu nhưng có khi mở liên tục có khi chỉ mở một lúc thôi
Bạn thử code này xem sao. Sửa lại tên đường dẫn theo thực tế.
Mình cũng không dám chắc là code chạy được.
Code sẽ copy các file Excel từ thư mục F:\DATA sang E:\BACKUP và ghi đè lên những file cũ
Lưu ý là file này phải đang được mở vào thời điểm ấn định
PHP:
Sub File_Copy()
Application.ScreenUpdating = False
   With CreateObject("Scripting.FileSystemObject")
      .CopyFile "F:\DATA\*.xl*", "E:\BACKUP\", True
   End With
Application.ScreenUpdating = True
End Sub
Bạn sửa số 20 thành 1 số khác để hẹn giờ chạy code
PHP:
Sub hengio()
Application.OnTime TimeValue("20:00:00"), "File_Copy"
End Sub
 

File đính kèm

  • Tu dong hen gio copy file.rar
    7.1 KB · Đọc: 131
Lần chỉnh sửa cuối:
tao chu đề ơ đâu vay cac ban minh la mem moi nha
 
Bạn thử code này xem sao. Sửa lại tên đường dẫn theo thực tế.
Mình cũng không dám chắc là code chạy được.
Code sẽ copy các file Excel từ thư mục F:\DATA sang E:\BACKUP và ghi đè lên những file cũ
Lưu ý là file này phải đang được mở vào thời điểm ấn định
PHP:
Sub File_Copy()
Application.ScreenUpdating = False
   With CreateObject("Scripting.FileSystemObject")
      .CopyFile "F:\DATA\*.xl*", "E:\BACKUP\", True
   End With
Application.ScreenUpdating = True
End Sub
Bạn sửa số 20 thành 1 số khác để hẹn giờ chạy code
PHP:
Sub hengio()
Application.OnTime TimeValue("20:00:00"), "File_Copy"
End Sub


Mình save file "Tu dong hen gio copy file" vào thư mục DATA ở ổ D và ở ổ E tạo thư mục BACKUP, xong mở file sửa code thành
.CopyFile "D:\DATA\*.xl*", "E:\BACKUP\", True
và Application.OnTime TimeValue("15:04:00"), "File_Copy" rồi để đấy chờ đến 15h 5ph mở thư mục BACKUP ở ổ E vẫn trống không, như vậy mình làm sai ở đâu không bạn ?
 
Mình save file "Tu dong hen gio copy file" vào thư mục DATA ở ổ D và ở ổ E tạo thư mục BACKUP, xong mở file sửa code thành
.CopyFile "D:\DATA\*.xl*", "E:\BACKUP\", True
và Application.OnTime TimeValue("15:04:00"), "File_Copy" rồi để đấy chờ đến 15h 5ph mở thư mục BACKUP ở ổ E vẫn trống không, như vậy mình làm sai ở đâu không bạn ?
Lưu file vào đó rồi để file ở đó mà không mở file lên thì đợi đến tết Công Gô nhé. Mình đã nói là file này phải ĐANG ĐƯỢC MỞ
 
Lưu file vào đó rồi để file ở đó mà không mở file lên thì đợi đến tết Công Gô nhé. Mình đã nói là file này phải ĐANG ĐƯỢC MỞ
Vâng chính xác là mình vẫn mở file "Tu dong hen gio copy file" liên tục đấy bạn nhưng nó vẫn không tự động copy vào E:\BACKUP
 
Lần chỉnh sửa cuối:
Ổ đĩa E:\BACKUP là ổ trên máy của mình, mình chưa thử copy tự động qua máy khác.

Có thành viên nào test hộ cái file mình làm phía trên giúp bạn lee chung nhé. Chắc chắn bạn đã làm gì sai đấy. Cái file mình gởi lên bên trong có 1 sự kiện Workbook Open nữa đấy nhé. Khi mở file sẽ tư động chạy Sub hengio. Khi đến thời điểm ấn định sẽ gọi tiếp thủ tục File_Copy
 
Web KT
Back
Top Bottom