- Tham gia
- 30/5/06
- Bài viết
- 1,798
- Được thích
- 4,706
- Giới tính
- Nam
VBA hay VSTO
VBA: Visual Basic for Application
VSTO: Visual Studio Tools for Office
Vâng, chúng ta đang đứng trước một sự chọn lựa VBA hay VSTO. Nếu các bạn không quan tâm về vấn đề này thì các bạn vẫn cứ dùng VBA. Công việc các bạn vẫn không gì thay đổi,… Chủ đề này tôi chỉ muốn cung cấp cho các bạn một thông tin nhỏ về tương lai của VBA. Theo nhận định của một số chuyên gia thì có thể đến năm 2008 VBA sẽ không còn nữa. Dĩ nhiên các bạn có thể vẫn dùng VBA nhưng có thể rằng trong tương lai (và hình như cả bây giờ) Microsoft đã không còn phát triển để nhằm hổ trợ cho dân lập trình VBA. Vâng, nếu các bạn bỏ công sức ra để chuyển đến ở nhà của VSTO các bạn sẽ được hưởng được nhiều điều từ VSTO.
Như các bạn thấy hiện tại các ngôn ngữ lập trình mà các bạn thường nghe nhắc đến như C++, C#, J#...có thể nói đây là các ngôn ngữ lập trình hiện đại. Tại sao tôi lại nhắc đến điều này? Vâng, tôi nhắc đến điều này bởi vì VSTO không những dùng ngôn ngữ lập trình Visual Basic, nó còn dùng các ngôn ngữ khác mà tôi đã nhắc đến ở trên đó là C++, C#, J#. Chúng ta có thể tham khảo bảng sau về mối liên hệ giữa ngôn ngữ lập trình và các công cụ phát triển của chúng:
Công cụ VBA VB 6.0 VSTO VS.NET
Ngôn ngữ lập trình VB VB.NET, C#, C++, J#
Tại sao lại là VSTO mà không là VB.NET? Các bạn sẽ hỏi, thế thì VB.NET có thể lập trình với Excel hay không? VB.NET có thể dùng các công cụ mạnh của Excel như vẽ biểu đồ, …? Câu trả lời là “Vâng, có thể” nhưng nó sẽ phức tạp và không hiệu quả. Đó cũng là lý do tại sao Microsoft cho ra đời VSTO. VSTO cơ bản là một add-in của Visual Studio.
Chúng ta có thể tóm tắt, dự đoán sự phát triển của VBA, VSTO và Visual Basic 6.0 như sau:
Năm | 2001| 2003| 2008
VBA | | |
| |VSTO |
VB 6.0| Visual Studio .NET, including VB.NET
VSTO làm việc với môi trường .NET Framework. VSTO tương tác trực tiếp với các ứng dụng Office như Excel, vâng có thể vì điều này chúng ta nên học VSTO chăng?
Một số thuận lợi của VSTO:
_ Có thể làm việc với các ngôn ngữ như: VB, C++, C#, J#...
_ Dùng được nhiều thế mạnh của form.
_ Cải tiến việc truy cập dữ liệu trên server.
_ Tăng cường sự kết nối với Web Server.
_ Bảo vệ người dùng với việc bảo mật tốt hơn.
_ Bảo vệ mã bằng việc không cho xem, ngăn chặn việc vô ý hay cố ý làm thay đổi mã. (Bởi vì mã sẽ không được lưu trong tập tin Excel ! Mã lập trình sẽ nằm trong file .DDL: Dynamic Link Library)
_ Cải thiện việc triển khai mã mới và cập nhật mã cho người dùng trong tương lai.
Làm sao mà VSTO có thể thao tác với Excel và các thành phần Office khác? Câu trả lời là PIAs (Primary Interop Assemblies).
.Net Framework là xương sống của VSTO. Thực sự ra cái thằng .Net Framework là gì? Vâng, nó thực sự là hàng trăm classes và giao diện.
Có bốn đối tượng chính trong Excel đó là:
1. Excel.Application
2. Excel.Workbook
3. Exel.Worksheet
4. Excel.Range
Vâng, vài hàng giới thiệu với các bạn. Tôi hy vọng rằng sẽ có dịp giới thiệu với các bạn nhiều hơn về VSTO.
Lê Văn Duyệt
VBA: Visual Basic for Application
VSTO: Visual Studio Tools for Office
Vâng, chúng ta đang đứng trước một sự chọn lựa VBA hay VSTO. Nếu các bạn không quan tâm về vấn đề này thì các bạn vẫn cứ dùng VBA. Công việc các bạn vẫn không gì thay đổi,… Chủ đề này tôi chỉ muốn cung cấp cho các bạn một thông tin nhỏ về tương lai của VBA. Theo nhận định của một số chuyên gia thì có thể đến năm 2008 VBA sẽ không còn nữa. Dĩ nhiên các bạn có thể vẫn dùng VBA nhưng có thể rằng trong tương lai (và hình như cả bây giờ) Microsoft đã không còn phát triển để nhằm hổ trợ cho dân lập trình VBA. Vâng, nếu các bạn bỏ công sức ra để chuyển đến ở nhà của VSTO các bạn sẽ được hưởng được nhiều điều từ VSTO.
Như các bạn thấy hiện tại các ngôn ngữ lập trình mà các bạn thường nghe nhắc đến như C++, C#, J#...có thể nói đây là các ngôn ngữ lập trình hiện đại. Tại sao tôi lại nhắc đến điều này? Vâng, tôi nhắc đến điều này bởi vì VSTO không những dùng ngôn ngữ lập trình Visual Basic, nó còn dùng các ngôn ngữ khác mà tôi đã nhắc đến ở trên đó là C++, C#, J#. Chúng ta có thể tham khảo bảng sau về mối liên hệ giữa ngôn ngữ lập trình và các công cụ phát triển của chúng:
Công cụ VBA VB 6.0 VSTO VS.NET
Ngôn ngữ lập trình VB VB.NET, C#, C++, J#
Tại sao lại là VSTO mà không là VB.NET? Các bạn sẽ hỏi, thế thì VB.NET có thể lập trình với Excel hay không? VB.NET có thể dùng các công cụ mạnh của Excel như vẽ biểu đồ, …? Câu trả lời là “Vâng, có thể” nhưng nó sẽ phức tạp và không hiệu quả. Đó cũng là lý do tại sao Microsoft cho ra đời VSTO. VSTO cơ bản là một add-in của Visual Studio.
Chúng ta có thể tóm tắt, dự đoán sự phát triển của VBA, VSTO và Visual Basic 6.0 như sau:
Năm | 2001| 2003| 2008
VBA | | |
| |VSTO |
VB 6.0| Visual Studio .NET, including VB.NET
VSTO làm việc với môi trường .NET Framework. VSTO tương tác trực tiếp với các ứng dụng Office như Excel, vâng có thể vì điều này chúng ta nên học VSTO chăng?
Một số thuận lợi của VSTO:
_ Có thể làm việc với các ngôn ngữ như: VB, C++, C#, J#...
_ Dùng được nhiều thế mạnh của form.
_ Cải tiến việc truy cập dữ liệu trên server.
_ Tăng cường sự kết nối với Web Server.
_ Bảo vệ người dùng với việc bảo mật tốt hơn.
_ Bảo vệ mã bằng việc không cho xem, ngăn chặn việc vô ý hay cố ý làm thay đổi mã. (Bởi vì mã sẽ không được lưu trong tập tin Excel ! Mã lập trình sẽ nằm trong file .DDL: Dynamic Link Library)
_ Cải thiện việc triển khai mã mới và cập nhật mã cho người dùng trong tương lai.
Làm sao mà VSTO có thể thao tác với Excel và các thành phần Office khác? Câu trả lời là PIAs (Primary Interop Assemblies).
.Net Framework là xương sống của VSTO. Thực sự ra cái thằng .Net Framework là gì? Vâng, nó thực sự là hàng trăm classes và giao diện.
Có bốn đối tượng chính trong Excel đó là:
1. Excel.Application
2. Excel.Workbook
3. Exel.Worksheet
4. Excel.Range
Vâng, vài hàng giới thiệu với các bạn. Tôi hy vọng rằng sẽ có dịp giới thiệu với các bạn nhiều hơn về VSTO.
Lê Văn Duyệt