Các lỗi khi thực thi VBA

vbano1

SMod
Thành viên BQT
27. Object là cần thiết (Mã lỗi: 424)
Hãy xem đoạn code dưới đây:
Mã:
Sub Sample1()
    Dim Target As Variant
    Target = Range("A1")
    Target.Value = 100
End Sub
Chương trình trên sẽ gặp lỗi 424.
Bạn cần đăng nhập để thấy đính kèm

Biến Target ta khai báo là Variant. Tuy nhiên khi thực hiện phép gán = Range("A1") thì lúc này phải hiểu Target là một đối tượng (Object). Do đó không thể thực hiện phép gán như vậy, mà phải có Set.
Do đó code trên cần phải sửa lại là:
Mã:
Sub Sample2()
    Dim Target As Variant
    Set Target = Range("A1")
    Target.Value = 100
End Sub
Nguồn tham khảo:
 

Euler

Administrator
Thành viên BQT
28. Object, phương thức, thuộc tính không được hỗ trợ (Mã lỗi : 438 )
Hãy chạy đoạn code dưới đây:
Mã:
Sub Sample1()
    Range("A1").Caption = "tuhocvba.net"
End Sub
Bạn cần đăng nhập để thấy đính kèm

Nói một cách đơn giản nghĩa là, Object này không có, hoặc Object này không có cái thuộc tính như thế, hoặc Object này không có cái phương thức như thế.

Đối tượng Range không có thuộc tính Caption cho nên code ở trên đã gây ra lỗi .
Ví dụ khác:
Mã:
Sub Sample2()
    Range("A1").MyName = "tuhocvba.net"
End Sub
Đối tượng Range không có thuộc tính MyName, cho nên code trên cũng sẽ gây ra lỗi.
Nguồn tham khảo:
 

vbano1

SMod
Thành viên BQT
29. Không tìm thấy tên đối số (Mã lỗi : 448 )
Bạn cần đăng nhập để thấy đính kèm

Code dưới đây sẽ không có vấn đề gì:
Mã:
Sub sample0927()
    Range("A1").Delete shift:=xlToLeft
End Sub
Nhưng bây giờ tôi cố tình viết thế này:
Mã:
Sub sample0927()
    Range("A1").Delete Action:=xlToLeft
End Sub
Bạn cần đăng nhập để thấy đính kèm

Lỗi được phát hiện ngay khi biên dịch. Thậm chí mã lỗi còn không hiển thị ra.
Ở đây ta đã cố tình chỉ định tên đối số không thực sự tồn tại. (Action).
Nguồn tham khảo :
 
30. Không thể giản lược đối số. Hay là chỉ định thuộc tính không đúng. (Mã lỗi: 449 )
Bạn cần đăng nhập để thấy đính kèm
 

Euler

Administrator
Thành viên BQT
31. Đối số không thống nhất. Hoặc chỉ định đối số không đúng. (Lỗi : 450 )
Bạn cần đăng nhập để thấy đính kèm

Nguồn :
 

tuhocvba

Administrator
Thành viên BQT
32. Object không phải là collection (Mã lỗi: 451)
Trong thực tế nó hiện cảnh báo lỗi như sau:
Bạn cần đăng nhập để thấy đính kèm

Thuộc tính Let không được định nghĩa cho nên không có giá trị trả về đối với Property Get.
Phần này không có code để thuyết minh, các bạn thông cảm.
Nguồn:
 
Top