Sử dụng tiện ích bổ sung Trình chuyển đổi macro để tự động chuyển đổi các tệp Excel có mã Visual Basic for Applications (VBA) thành Trang tính và Apps Script.
Trước khi bắt đầu
Bạn có thể muốn cập nhật các API không tương thích trong mã VBA trước khi chuyển đổi tệp. Đối với các tệp có trạng thái Được hỗ trợ chính xác, bạn có thể chuyển sang Bước 1: Chuyển đổi tệp.
Sửa đổi các API VBA không tương thích
Đối với các tệp có trạng thái Được hỗ trợ bằng giải pháp thay thế hoặc Cần điều tra, bạn có thể áp dụng các giải pháp thay thế và bản sửa lỗi sau khi chuyển đổi trong Apps Script. Tuy nhiên, bạn nên sửa đổi mã VBA mà bạn quen thuộc trước khi chuyển đổi tệp.
Đối với mỗi API được đánh dấu là Được hỗ trợ bằng giải pháp thay thế hoặc Cần điều tra trong báo cáo về khả năng tương thích, bạn nên làm như sau:
Nếu hàm do API thực hiện không quan trọng đối với macro VBA, hãy xoá hàm đó khỏi mã VBA. Nếu hàm đó quan trọng, hãy thay đổi mã để triển khai hành vi tương tự bằng các API VBA được hỗ trợ.
Đối với các API Được hỗ trợ bằng giải pháp thay thế, nếu bạn không tìm thấy giải pháp thay thế VBA được hỗ trợ, hãy giữ nguyên mã VBA. Sau khi chuyển đổi, hãy tìm các giải pháp thay thế được đề xuất trong phần nhận xét mã Apps Script.
Nếu vấn đề bắt nguồn từ một cấu trúc ngôn ngữ chưa được triển khai , hãy viết lại mã để tránh sử dụng các cấu trúc đó.
Đối với các API có trạng thái Cần điều tra, hãy kiểm tra xem mã của bạn có chứa bất kỳ API nào sau đây hay không:
Adodb.connectionCreateObject: API này thường được dùng để kết nối với phần mềm cơ sở dữ liệu và phần mềm lập kế hoạch tài nguyên doanh nghiệp.Shell.executeOleObject
Nếu macro của bạn sử dụng các API này, hãy cân nhắc việc chuyển đổi các tệp đó. Các API này thường quản lý các hàm quan trọng như khả năng kết nối cơ sở dữ liệu hoặc quyền truy cập vào hệ thống cục bộ mà Apps Script không thể dễ dàng sao chép.
Bước 1: Chuyển đổi tệp
- Trên máy tính, hãy mở Google Drive.
- Trên bảng điều khiển bên phải, hãy nhấp vào tiện ích bổ sung Trình chuyển đổi macro
.
Nếu không thấy bảng điều khiển bên, hãy nhấp vào biểu tượng Hiện bảng điều khiển bên
ở dưới cùng bên phải. - Nhấp vào Thêm tệp và thư mục. Trình chuyển đổi macro chỉ nhận dạng các tệp Excel.
- Chọn tệp hoặc thư mục bạn muốn chuyển đổi rồi nhấp vào Chọn. Chọn ít hơn 2.000 tệp cùng một lúc.
- Để thay đổi vị trí lưu tệp đã chuyển đổi, hãy nhấp vào biểu tượng Chỉnh sửa thư mục đích thay đổi rồi chọn thư mục bạn muốn. Nếu không, các tệp sẽ được lưu trong thư mục Drive của tôi.
- Nhấp vào Chuyển đổi.
- Khi quá trình chuyển đổi hoàn tất, hãy nhấp vào Xem kết quả.
Bước 2: Kiểm thử tệp đã chuyển đổi
Sau khi chuyển đổi tệp, hãy kiểm thử để đảm bảo tệp hoạt động như mong đợi.
Chạy mã Apps Script
Sau khi chuyển đổi tệp, hãy kiểm thử các hàm Apps Script. Kiểm thử các tệp đã chuyển đổi bằng dữ liệu mà bạn thường dùng với tệp Excel. Nếu có thể, hãy so sánh kết quả đầu ra của tệp Google Trang tính đã chuyển đổi với kết quả đầu ra của tệp Excel gốc.
Kiểm thử trình kích hoạt
Nếu tệp của bạn chứa các trình kích hoạt như onOpen(), onEdit() hoặc onClick(), hãy kiểm thử cả trình kích hoạt. Một số trình kích hoạt VBA sẽ không tự động chuyển đổi và cần được giải quyết trong Apps Script. Xem phần Giải quyết vấn đề thường gặp.
Xem lại tệp ReadMe
Nếu một tệp ReadMe được tạo bằng tệp đã chuyển đổi, hãy xem lại các vấn đề về chuyển đổi được liệt kê trong tệp ReadMe.
- Nếu các vấn đề có thể gây ra vấn đề cho những trường hợp bạn chưa kiểm thử, hãy áp dụng các thay đổi được đề xuất cho mã của bạn.
- Nếu bạn đã kiểm thử tất cả các trường hợp có thể và mọi thứ đều hoạt động như dự định, thì có thể bạn không cần thực hiện thay đổi.
Bước 3: Khắc phục lỗi
Nếu bạn gặp lỗi khi kiểm thử tệp, hãy xem phần Khắc phục lỗi trong mã đã chuyển đổi.
Nếu mã chạy mà không có lỗi nhưng kết quả không như bạn mong đợi, hãy mở tệp ReadMe của tệp đó. Xem lại từng phần để giúp xác định nguyên nhân gây ra vấn đề và áp dụng bản sửa lỗi được đề xuất.
Sau khi khắc phục lỗi, hãy kiểm thử lại tệp để đảm bảo mọi thứ hoạt động như dự định.
Bài viết liên quan
- Tổng quan về tiện ích bổ sung Trình chuyển đổi macro
- Xác định xem macro VBA có tương thích hay không
- Khắc phục lỗi trong mã đã chuyển đổi
- Giải quyết vấn đề thường gặp
- Xem hướng dẫn về Trình chuyển đổi macro
- Danh sách các API VBA tương thích