Bổ sung thêm.
- 2 kiểu biến này hoàn toàn khác nhau, không có điểm giống
.
- Về chiếm dung lượng bộ nhớ, Object chiếm 4 bytes, Variant chiếm 16 bytes vì nó có thể nhận giá trị là chuỗi (string), số (interger, long, Double...).
- Object là biến đối tượng. Đúng như tên gọi của nó, nó có thể là: form, report, controls, application, activeX...(không bao giờ là String, Integer... như Variant
VD:
Mã PHP:
Dim frmOrders As New Access.Form
Mã PHP:
Dim appWord As Object
Set appWord = CreateObject("Word.Application")
- Người ta thường dùng biến Variant khi không chắc chắn giá trị người dùng nhập vào là kiểu gì, thường là biến mảng.
Mã PHP:
Dim MyWeek As Variant
MyWeek = Array("Mon", "Tue", "Wed", "Thu", "Fri", "Sat", "Sun")
- Biến Variant rất linh hoạt nhưng đổi lại nó sẽ có ảnh hưởng đến tốc độ xử lý do nó phải xác định xem biến mới nhập vô thuộc dạng gì? số, chuỗi v.v.. (có thể ta không cảm nhận được do máy tính bây giờ cấu hình mạnh). Người ta cũng khuyên nên hạn chế dùng biến Variant nếu có thể, đổi sang khai báo biến tường minh. Đặc biệt khi viết Code bạn cũng sẽ gặp khó khăn khi không biết biến này thuộc kiểu gì (số hay chuỗi...) để viết công thức, tham chiếu v.vv cho phù hợp.