V. Cấu trúc điều khiển
V.1. Cấu trúc chọ n
V.1.1. If … Then … Else
Trước tiên, chúng ta làm quen với cấu trúc If … Then … End If
Cú pháp:
If <điều kiện> Then ' Các câu lệnh End if
Sử dụng cú pháp này, người lập trình muốn khai báo với trình biên dịch rằng các câu lệnh trong vùng If … End If chỉđược thực hiện nếu như <điều kiện> là đúng.
<điều kiện> cĩ thể là biểu thức trả về giá trị True/False hoặc là một giá trị số. Giá trị số <> 0 tương
ứng với True, ngược lại là False.
Cấu trúc If … Then … End If cịn thiếu sĩt vì đơi khi chúng ta muốn thực hiện các câu lệnh khác khi
điều kiện khơng đúng. Lúc này, chúng ta sử dụng cấu trúc sau:
Cú pháp: If <điều kiện> Then ' Các lệnh sẽ thực hiện nếu điều kiện đúng End If If Not <điều kiện> Then ' Các lệnh sẽ thực hiện nếu điều kiện sai End If
Để thay thế cách viết trên, chúng ta cĩ cấu trúc sau: If <điều kiện> Then
' Các câu lệnh khi điều kiện đúng Else
' Các câu lệnh khi điều kiện sai End if
Trong trường hợp nhiều điều kiện, chúng ta sử dụng cấu trúc: If <điều kiện 1> Then ... ElseIf <điều kiện 2> Then ... ElseIf <điều kiện n> Then ... Else ... End If
Ghi chú: Các mệnh đề If … Then … Else cĩ thể lồng nhau.
V.1.2. Select … Case
Khi cĩ nhiều trường hợp cần xét, cĩ thể sử dụng cấu trúc chọn Select … Case với cú pháp
Cú pháp:
Select Case <biểu thức> Case <giá trị 1>
' Các lệnh thực hiện khi <biểu thức> = <giá trị 1> Case <giá trị 2>
' Các lệnh thực hiện khi <biểu thức> = <giá trị 2> Case Else
' Các lệnh thực hiện khi <biểu thức> khơng bằng giá trị nào ở trên End Select
Khối lệnh Case Else cĩ thể khơng cần viết. Tuy nhiên, người lập trình được khuyến khích dùng khối lệnh này trong cấu trúc để giảm bớt các lỗi logic.
Các giá trị dùng để so sánh cĩ thể gồm nhiều giá trị phân biệt bởi dấu phẩy (,) hoặc là một phần của biểu thức so sánh.