Cần cả nhà hỗ trợ copy và chuyển toàn bộ code VBA từ từ file sang nhiều file khác

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

stevenjoln5

Thành viên mới
Tham gia
21/3/12
Bài viết
6
Được thích
9
Chào cả nhà,
Em có 1 file excel chứa code và 5 file excel trắng không có code. Em muốn chuyển code của file chứa code vào các file trắng chưa có code.
Mong cả nhà giúp đỡ hỗ trợ em có cách nào chỉ cần chọn danh sách các file cần copy code vô thì VBA sẽ thực hiện việc copy chuyển code này không ạ.
 

File đính kèm

  • File trống chưa có code 5.xlsb
    7.6 KB · Đọc: 5
  • File trống chưa có code 4.xlsm
    8.1 KB · Đọc: 6
  • File trống chưa có code 1.xlsx
    8.1 KB · Đọc: 4
  • File trống chưa có code 2.xlsx
    8.1 KB · Đọc: 3
  • File trống chưa có code 3.xlsx
    8.1 KB · Đọc: 10
  • File chứa code VBA.xlsm
    13.1 KB · Đọc: 9
Ví dụ điển hình của ứng dụng chính:
- Người ta có thể đưa ra một mớ files có macro cho nhiều người dùng. Sau đó cập nhật lại phiên bản mới của macro. Đợi đêm về không ai làm việc, lôi đám files ấy ra, móc bỏ phiên bản cũ, nhét vào phiên bản mới. Một quy trình hữu hiệu.
Việc cập nhật em cũng từng làm và theo em thì hiệu quả là kiểm tra phiên bản mới và download file về cài ghi đè vào file cần cập nhật (tương tự như @ongke0711 đã làm). Còn việc Copy code vào file sẽ nhọc nhằng hơn do phải copy nhiều file (Module, UserForm, Class Module...), mà làm nhiều việc thì rũi ro sẽ nhiều.
Cách cập nhật của em là thế này:
1. Kiểm tra phiên bản cập nhật (File này được lưu trên Google Drive)
2. Nếu là phiên bản mới thì thông báo tải về.
3. Sau khi chấp nhận tải về thì sẽ tải phiên bản mới vào thư mục tạm.
4. Sau khi tải về thành công, đổi tên file nguồn (File cần cập nhật, đề phòng gặp lỗi sẽ đổi tên file này lại phục hồi hiện trang ban đầu).
5. Copy file đẫ Download về ghi đè vào nơi file nguồn (Fil;e cần cập nhật).
6. Nếu copy thành công xóa file DownLoad vào thư mục tạm (File tải về ở bước 2) và xóa file đã đổi tên (File nguồn đã đổi tên ở bước 4) và thông báo cập nhật thành công.
7. Nếu copy (bước 5) không thành công thì xóa file DownLoad vào thư mục tạm (File tải về ở bước 2) và đổi tên (File nguồn đã đổi tên ở bước 4) file nguồn trở lại hiện trạng ban đầu và thông báo cập nhật thất bại.
 
Upvote 0
Việc cập nhật em cũng từng làm và theo em thì hiệu quả là kiểm tra phiên bản mới và download file về cài ghi đè vào file cần cập nhật (tương tự như @ongke0711 đã làm). Còn việc Copy code vào file sẽ nhọc nhằng hơn do phải copy nhiều file (Module, UserForm, Class Module...), mà làm nhiều việc thì rũi ro sẽ nhiều.
Cách cập nhật của em là thế này:
1. Kiểm tra phiên bản cập nhật (File này được lưu trên Google Drive)
2. Nếu là phiên bản mới thì thông báo tải về.
3. Sau khi chấp nhận tải về thì sẽ tải phiên bản mới vào thư mục tạm.
4. Sau khi tải về thành công, đổi tên file nguồn (File cần cập nhật, đề phòng gặp lỗi sẽ đổi tên file này lại phục hồi hiện trang ban đầu).
5. Copy file đẫ Download về ghi đè vào nơi file nguồn (Fil;e cần cập nhật).
6. Nếu copy thành công xóa file DownLoad vào thư mục tạm (File tải về ở bước 2) và xóa file đã đổi tên (File nguồn đã đổi tên ở bước 4) và thông báo cập nhật thành công.
7. Nếu copy (bước 5) không thành công thì xóa file DownLoad vào thư mục tạm (File tải về ở bước 2) và đổi tên (File nguồn đã đổi tên ở bước 4) file nguồn trở lại hiện trạng ban đầu và thông báo cập nhật thất bại.
Google Drive có lưu dự phòng 5 phiên bản gần nhất mà nhỉ? File mới cập nhật lỗi thì vẫn còn nguyên phiên bản liền kề đó để lấy lại nguyên trạng.
 
Upvote 0
Đọc chậm lại chút, cứ thông thả và từ từ.
Tôi chưa rõ cách bạn lưu hoặc đồng bộ với Google Drive thế nào chứ với tôi thì file nguồn hay đích cũng đồng bộ với Google Drive cả. Nếu lỗi thì có sẵn phiên bản trước đó chạy tốt để phục hồi
 
Upvote 0
Tôi chưa rõ cách bạn lưu hoặc đồng bộ với Google Drive thế nào chứ với tôi thì file nguồn hay đích cũng đồng bộ với Google Drive cả. Nếu lỗi thì có sẵn phiên bản trước đó chạy tốt để phục hồi
:) Đây là đang nói về việc thiết kế Excel Add-in và cho nó cập nhật phiên bản mới tự động (khi có kết nối internet) đó bác, không phải là "đồng bộ". Google Drive chỉ là nơi chứa phiên bản Add-in mới nhất của tác giả thôi.
 
Upvote 0
:) Đây là đang nói về việc thiết kế Excel Add-in và cho nó cập nhật phiên bản mới tự động (khi có kết nối internet) đó bác, không phải là "đồng bộ". Google Drive chỉ là nơi chứa phiên bản Add-in mới nhất của tác giả thôi.
Đối với tôi thì quy trình của bạn không quan trọng. Bạn là người đặt ra quy trình biết sử dụng.
Điểm quan trọng là người dùng có hiểu và thoải mái với quy trình này chăng?
 
Upvote 0
Điểm quan trọng là người dùng có hiểu và thoải mái với quy trình này chăng?
Giải thích qui trình ở đây chỉ để chia sẻ cách thức cho các bạn lập trình tham khảo thôi bác. Đối với người dùng Add-in thì sau khi cài đặt, không cần làm gì cả, nếu có phiên bản Add-in mới thì nó sẽ hiển thị thông báo cho người dùng bấm cập nhật thôi, còn nó làm gì phía sau hậu trường thì họ không cần biết rồi.

Screen Shot 2023-08-15 at 11.44.24.png
 
Lần chỉnh sửa cuối:
Upvote 0
Giải thích qui trình ở đây chỉ để chia sẻ cách thức cho các bạn lập trình tham khảo thôi bác. Đối với người dùng Add-in thì sau khi cài đặt, không cần làm gì cả, nếu có phiên bản Add-in mới thì nó sẽ hiển thị thông báo cho người dùng bấm cập nhật thôi, còn nó làm gì phía sau hậu trường thì họ không cần biết rồi.
Liệu có virus ăn cắp thông tin không hở bác?
 
Upvote 0
Liệu có virus ăn cắp thông tin không hở bác?
Không có gì là tuyệt đối cả.

Nói về bản thân của ứng dụng:
- Các phần mềm, ứng dụng mà bạn cài trên máy tính, hầu hết đều có tính năng "Check for update", vậy bạn có dám bấm cập nhật không?
- Ứng dụng mà tác giả cung cấp có bị nhiễm virus hay không? Trình diệt virus có quét ra và xử lý được hay không? Tác giả có nhận thức được ứng dụng của mình bị dính virus hay không mà vẫn cung cấp....
- Sự tin tưởng vào ứng dụng và tác giả: nếu bạn không tin tưởng, sợ virus thì không cài đặt, không bấm cập nhật --> không sợ bị ăn cắp thông tin.
Nói về bên thứ 3 can thiệp: các h...ker
- Họ là dân chuyên và có muốn bỏ thời gian để theo dõi ứng dụng, cổng, gói tin khi có kết nối internet để mà can thiệp, chèn các câu lệnh.... để chiếm quyền điều khiển không?
- Có cả trăm ngàn ứng dụng, ứng dụng này có được may mắn họ nhòm ngó tới không?
- ...
Còn rất nhiều thứ mà trong kiến thức hạn hẹp của tôi chỉ biết sơ sơ vậy.
Nói chung là rất nguy hiểm, tốt nhất là bạn không nên tin tưởng bất cứ ai, an toàn cho bạn thôi.

(Ps: tôi nhớ là có lần bạn nói máy tính bạn không có cài trình diệt virus, đó gọi là "Tay không bắt giặt" khi muốn chống virus ăn cắp thông tin. Tôi khuyên bạn không nên cài mấy cái ứng dụng trên đây, rủi ro bị gì là không có bảo hiểm đâu.)
 
Upvote 0
Không có gì là tuyệt đối cả.

Nói về bản thân của ứng dụng:
- Các phần mềm, ứng dụng mà bạn cài trên máy tính, hầu hết đều có tính năng "Check for update", vậy bạn có dám bấm cập nhật không?
- Ứng dụng mà tác giả cung cấp có bị nhiễm virus hay không? Trình diệt virus có quét ra và xử lý được hay không? Tác giả có nhận thức được ứng dụng của mình bị dính virus hay không mà vẫn cung cấp....
- Sự tin tưởng vào ứng dụng và tác giả: nếu bạn không tin tưởng, sợ virus thì không cài đặt, không bấm cập nhật --> không sợ bị ăn cắp thông tin.
Nói về bên thứ 3 can thiệp: các h...ker
- Họ là dân chuyên và có muốn bỏ thời gian để theo dõi ứng dụng, cổng, gói tin khi có kết nối internet để mà can thiệp, chèn các câu lệnh.... để chiếm quyền điều khiển không?
- Có cả trăm ngàn ứng dụng, ứng dụng này có được may mắn họ nhòm ngó tới không?
- ...
Còn rất nhiều thứ mà trong kiến thức hạn hẹp của tôi chỉ biết sơ sơ vậy.
Nói chung là rất nguy hiểm, tốt nhất là bạn không nên tin tưởng bất cứ ai, an toàn cho bạn thôi.

(Ps: tôi nhớ là có lần bạn nói máy tính bạn không có cài trình diệt virus, đó gọi là "Tay không bắt giặt" khi muốn chống virus ăn cắp thông tin. Tôi khuyên bạn không nên cài mấy cái ứng dụng trên đây, rủi ro bị gì là không có bảo hiểm đâu.)
Bác oi, cho cháu hỏi tý tẹo nhé
Nên dùng phần mềm diệt Virus nào thì tốt hở bác. (Dùng cái miễn phí ấy bác)
Cháu dùng Win7
 
Upvote 0
Web KT

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

Back
Top Bottom