Câu lệnh điều kiện VBScript

Mô hình

Câu lệnh If...then..else
Ví dụ này trình bày cách viết câu lệnh if...then..else
Câu lệnh If...then..elseif
Ví dụ này trình bày cách viết câu lệnh if...then...elseif...
Câu lệnh Select case
Ví dụ này minh họa cách viết câu lệnh select case.

Câu lệnh điều kiện

Thường xuyên, khi chúng ta viết mã, chúng ta cần thực hiện các hành động khác nhau dựa trên các điều kiện khác nhau. Chúng ta có thể sử dụng các câu lệnh điều kiện để hoàn thành công việc này.

Trong VBScript, chúng ta có thể sử dụng ba câu lệnh điều kiện:

Câu lệnh if
Nếu bạn muốn thực hiện một loạt mã khi điều kiện là true, bạn có thể sử dụng cấu trúc này.
Câu lệnh if...then...else
Nếu bạn muốn thực hiện một trong hai bộ mã, bạn có thể sử dụng cấu trúc này.
Câu lệnh if...then...elseif
Nếu bạn muốn chọn một trong nhiều bộ mã để thực hiện, bạn có thể sử dụng cấu trúc này.
Câu lệnh select case
Nếu bạn muốn chọn một trong nhiều bộ mã để thực hiện, bạn có thể sử dụng cấu trúc này.

If....Then.....Else

Trong các trường hợp sau, bạn có thể sử dụng cấu trúc If...Then...Else:

  • Thực hiện đoạn mã nào đó khi điều kiện là true
  • Chọn một đoạn mã để thực hiện

Nếu bạn muốn chỉ thực hiện một câu lệnh khi điều kiện là true, bạn có thể viết mã trên một dòng:

if i=10 Then msgbox "Xin chào"

Trong đoạn mã trên, không có câu lệnh .else.. nào cả. Chúng ta chỉ cho phép mã được thực hiện một hành động khi điều kiện là true (khi i là 10).

Nếu bạn muốn thực hiện nhiều câu lệnh khi điều kiện là true, bạn phải viết một câu lệnh trên một dòng và sử dụng từ khóa "End If" để kết thúc câu lệnh đó:

if i=10 Then
   msgbox "Xin chào"
   i = i+1
end If

Trong đoạn mã trên, không có câu lệnh .else.. nào cả. Chúng ta chỉ cho phép mã được thực hiện khi điều kiện là true.

Nếu bạn muốn thực hiện một câu lệnh nào đó khi điều kiện là true và một câu lệnh khác khi điều kiện không phải true, bạn phải thêm từ khóa "Else":

if i=10 then
   msgbox "Xin chào"
else
   msgbox "Tạm biệt"
end If

Khi điều kiện là true, mã đầu tiên sẽ được thực hiện, khi điều kiện không thành lập, mã thứ hai sẽ được thực hiện (khi i không bằng 10).

If....Then.....Elseif

Nếu bạn muốn chọn một trong nhiều bộ mã để thực hiện, bạn có thể sử dụng cấu trúc if...then...elseif:

if payment="Cash" then
   msgbox "Bạn sẽ thanh toán bằng tiền mặt!"
 elseif payment="Visa" then
   msgbox "Bạn sẽ thanh toán bằng thẻ visa."
 elseif payment="AmEx" then
   msgbox "Bạn sẽ thanh toán bằng American Express."
 else
   msgbox "Phương thức thanh toán không biết."
end If

Select Case

Nếu bạn muốn chọn một trong nhiều đoạn mã để thực hiện, bạn có thể sử dụng câu lệnh SELECT:

select case payment
 case "Cash"
   msgbox "Bạn sẽ thanh toán bằng tiền mặt"
 case "Visa"
   msgbox "Bạn sẽ thanh toán bằng visa"
 case "AmEx"
   msgbox "Bạn sẽ thanh toán bằng American Express"
 case Else
   msgbox "Phương thức thanh toán không biết"
end select

Cách hoạt động của mã trên: Đầu tiên, chúng ta cần một biểu thức đơn giản (thường là một biến), biểu thức này sẽ được thực hiện một lần. Sau đó, giá trị của biểu thức sẽ được so sánh với giá trị trong mỗi case, nếu khớp, mã tương ứng với case được thực hiện.