Microsoft Office cho phép cái nhiều phiên bản khác nhau trên cùng một máy mà không có lỗi gì cả! Nếu bị lỗi thì khi cài đặt không bao giờ Microsoft để các tùy chọn: cài thay thế, cài thêm,..
Anh IT của Ca_Dafi gì đó nói là dùng chung .NET gì đó là không biết rõ về Office, Office được lập trình trên C++ thuần túy không dùng .NET gì hết.
Tất cả các phiên bản Office đều được lập trình trên những thư viện chuẩn của Windows, những thư viện bổ sung cho mỗi phiên bản sẽ nằm trong 2 thư mục tương ứng là:
Drive:\Program Files\Microsoft Office\OfficeXX
C:\Program Files\Common Files\Microsoft Shared\OfficeXX
Vì các thư viện nằm độc lập trên các địa chỉ khác nhau nên dù bạn chạy cùng một lúc các loại Office vẫn không vấn đề gì.
Có một đặc điểm là các phiên bản của Office, các đối tượng đều dùng chung ClassID. và đăng ký vào Registry. Nếu lập trình mà chúng ta tạo đối tượng bằng Set MyXL = CreateObject("Excel.Application") hay Set MyXL = GetObject("Excel.Application") thì Excel phiên bản nào sẽ được gọi lên? XP/2003/2007/??? Câu trả lời, phiên bản nào được setup (hay đăng ký Registry) gần đây nhất sẽ được gọi ra (theo tính chất LIFO). Để MyXL nhận đúng theo phiên bản mà người lập trình yêu cầu thì cần phải xử lý khác.
Việc các Add-in hay các chương trình lập trình trên Office bị lỗi tùm lum khi cài nhiều phiên bản là do chương trình lập trình không hoàn chỉnh! Ví dụ nhỏ là đối tượng FileSearch từ phiên bản 2007 không hỗ trợ nữa nhưng các PM vẫn dùng cái đó (vì tác giả lập trình trên Office cũ cứ tưởng cái mới cũng thế). Một ứng dụng lập trình cho nhiều người sử dụng rất vất vả, phải kiểm tra tính tương thích theo các phiên bản HĐH, theo các phiên bản Office, IExx, phải dùng những giải pháp tổng thể,... Nếu để ý chúng ta sẽ thấy phân giới thiệu của các PM nước ngoài thường nói rõ, Soft X chạy trên Windows xxx, RAM xxx, CDxx, Hardware.... Nếu khi nào bạn lập trình một chương trình nào đó rồi gửi cho mọi người sử dụng thì sẽ thấm thía điều này.
Để dùng nhiều Office mà không bị lỗi bạn phải xác định việc cài bổ sung khi cài đặt, và đặt tên thư mục Office khác nhau là được.