Có một kiểu lỗi rất “khó chịu” mà nhiều người dùng Excel nâng cao hay gặp: file mở ra bình thường, nhưng các nút bấm, form hay macro thì… im lặng. Không lỗi rõ ràng, không thông báo cụ thể, chỉ là không chạy.
Hoặc đôi khi bạn sẽ thấy những dòng thông báo như:
- “ActiveX component can’t create object”
- “Object library invalid”
- “Controls cannot be inserted”
Nếu gặp những dấu hiệu này, khả năng cao bạn đang vướng vào vấn đề ActiveX giữa 32-bit và 64-bit trong Office 365.
Nghe hơi “cứng”, nhưng thực ra hiểu đúng thì xử lý cũng khá nhanh.

ActiveX trong Office 365 là gì?
ActiveX là thành phần giúp bạn tạo các phần tử tương tác trong Excel:
- Nút bấm (Command Button)
- Form nhập liệu (UserForm)
- ComboBox, ListBox…
Nói đơn giản: nó biến file Excel từ “tĩnh” thành “có thể thao tác”.
Nhưng vấn đề nằm ở chỗ:
👉 ActiveX phụ thuộc vào hệ thống và kiến trúc (32-bit / 64-bit)
Vì sao lỗi xảy ra trong Office 365?
Office 365 hiện nay đa số là 64-bit, trong khi rất nhiều file VBA/ActiveX cũ được viết cho 32-bit.
Khi có sự “lệch pha” này, lỗi sẽ xuất hiện.
Một số nguyên nhân phổ biến:
- File được tạo trên Office 32-bit nhưng mở bằng 64-bit
- Thiếu thư viện ActiveX (.ocx, .dll) phù hợp
- Cache ActiveX bị lỗi
- Bị chặn bởi Trust Center
- Code VBA không tương thích 64-bit
Nói ngắn gọn: không phải lỗi một chỗ, mà là cả “hệ sinh thái” liên quan.

Cách kiểm tra Office 365 đang dùng 32-bit hay 64-bit
Trước khi sửa, bạn cần biết mình đang dùng phiên bản nào.
Thực hiện:
- Mở Excel (Office 365)
- Vào File → Account
- Nhấn About Excel
Bạn sẽ thấy:
👉 32-bit hoặc 64-bit
Các cách khắc phục lỗi ActiveX hiệu quả
Dưới đây là những cách xử lý phổ biến và hiệu quả nhất.
1. Xóa cache ActiveX (.exd) – cách đơn giản nhưng cực kỳ hiệu quả
Đây là bước nên thử đầu tiên.
Cách làm:
- Đóng toàn bộ Office
- Nhấn Windows + R
- Gõ:
- Tìm và xóa các file có đuôi .exd
Ví dụ:
- MSForms.exd
- Excel8.0.exd
Sau đó mở lại Excel.
👉 Rất nhiều lỗi biến mất sau bước này.

2. Sửa code VBA cho tương thích 64-bit
Nếu file có macro, bạn có thể cần chỉnh lại code.
Ví dụ:
phải sửa thành:
Ngoài ra, cần dùng:
thay cho:
👉 Đây là lỗi rất phổ biến khi chuyển từ 32-bit sang 64-bit.
3. Đăng ký lại thư viện ActiveX
Nếu lỗi liên quan đến file .ocx:
- Mở Command Prompt (Run as Administrator)
- Nhập:
Nếu thành công, hệ thống sẽ báo đăng ký thành công.
4. Kiểm tra ActiveX trong Trust Center
Đôi khi ActiveX bị chặn vì lý do bảo mật.
Cách kiểm tra:
- Vào File → Options
- Chọn Trust Center → Trust Center Settings
- Chọn ActiveX Settings
Chọn:
👉 Enable all controls without restrictions (chỉ dùng khi cần)

5. Cân nhắc dùng Office 32-bit
Nghe có vẻ “ngược đời”, nhưng:
👉 Office 32-bit tương thích tốt hơn với ActiveX cũ
Rất nhiều doanh nghiệp vẫn dùng 32-bit vì:
- Hỗ trợ VBA cũ tốt hơn
- Ít lỗi ActiveX hơn
- Tương thích rộng
Một số lỗi thường gặp và cách xử lý nhanh
| Lỗi | Nguyên nhân | Cách xử lý |
|---|---|---|
| Button không hoạt động | ActiveX lỗi | Xóa .exd |
| Form không mở | Sai kiến trúc | Sửa VBA |
| Object library invalid | Thiếu thư viện | regsvr32 |
| Không chèn được control | Bị chặn | Trust Center |
Mẹo giúp tránh lỗi về sau
Thứ nhất, hạn chế dùng ActiveX nếu không cần thiết.
Có thể dùng Form Controls thay thế.
Thứ hai, nếu viết VBA, nên code tương thích 64-bit ngay từ đầu.
Thứ ba, test file trên nhiều máy khác nhau.
Tránh “chạy trên máy mình nhưng lỗi trên máy khác”.
Kết luận
Lỗi ActiveX 32-bit/64-bit trong Office 365 là một trong những lỗi “khó hiểu” nếu chưa từng gặp, nhưng thực ra lại có quy luật rất rõ: vấn đề tương thích giữa hệ thống và code cũ.
Chỉ cần nhớ vài điểm chính:
- Kiểm tra phiên bản Office
- Xóa cache .exd
- Sửa code VBA nếu cần
- Kiểm tra Trust Center
Và quan trọng nhất: hiểu rằng 64-bit mạnh hơn, nhưng không phải lúc nào cũng “hợp” với những thứ cũ.
Khi đã quen rồi, bạn sẽ thấy xử lý những lỗi này… nhanh hơn cả việc tìm lỗi nữa.


