Hướng dẫn cách sửa lỗi cấu trúc IF, WITH khi lập trình VBA trong Excel

Chia sẻ bài viết này:

Khi bạn mới học hoặc tìm hiểu về VBA thì việc viết code của bạn rất hay gặp lỗi. Trong bài viết này Học Excel Online sẽ hướng dẫn bạn cách sửa lỗi thường gặp khi lập trình VBA trong Excel. Phần này chúng ta sẽ tìm hiểu về các lỗi liên quan tới việc thiếu cấu trúc IF, WITH

1. Lỗi thiếu End WITH trong cấu trúc WITH

Lỗi này có thông báo như sau:

Trong trường hợp này bạn đã tạo ra 1 cấu trúc WITH, nhưng lại chưa đóng cấu trúc đó bằng lệnh End With.

Cách sửa:

Mở lại cửa sổ VBA và kiểm tra các câu lệnh có cấu trúc With. Khi bấm OK trong thông báo lỗi thì Excel sẽ tự dẫn chúng ta tới Sub / Function có chứa lỗi đó.

Chúng ta viết thêm dòng lệnh End With để kết thúc cấu trúc With, sau đó bấm vào nút Reset lại câu lệnh đang chạy.

Sau khi Reset thì VBA sẽ không còn báo lỗi màu vàng nữa.

2. Lỗi thiếu End IF trong cấu trúc IF

Tương tự như lỗi thiếu End With, lỗi thiếu End IF trong cấu trúc If cũng có thông báo như sau:

Cách sửa:

  • Bấm nút OK để đi tới vị trí của cấu trúc lỗi
  • Thêm câu lệnh End If vào vị trí kết thúc cấu trúc IF
  • Bấm nút Reset để dừng lại câu lệnh cũ bị lỗi.

Chú ý:

Khi viết cấu trúc IF có 1 dạng viết mà không cần sử dụng tới End IF như sau:

Khi viết trên cùng 1 dòng lệnh If… Then … thì không cần sử dụng tới End If mà vẫn hợp lệ.

Do đó không phải lúc nào thiếu End IF cũng là sai. Chúng ta cần phải phân biệt được trường hợp này.

Như vậy là chúng ta đã tìm hiểu 2 lỗi khá thường gặp khi viết cấu trúc IF, cấu trúc With trong VBA rồi. Hy vọng qua bài viết này các bạn sẽ viết lệnh trong VBA được dễ dàng hơn.

VBA giúp ích rất nhiều trong công việc: Tự động hóa Excel, viết hàm tự tạo, giúp làm việc trong Excel dễ dàng hơn, chuyên nghiệp hơn, bổ sung thêm những điều mà Excel không có sẵn. Để tìm hiểu thêm nhiều kiến thức về VBA, mời bạn tham dự khóa học VBA101 – Tự động hóa Excel với lập trình VBA. Đây là khóa học rất hữu ích dành cho bạn. Hãy cùng khám phá nào


Chia sẻ bài viết này: