Bài giảng Lập trình VB - Phần 2
1. If.Then
Cấu trúc một dòng lệnh:
If <điều kiện> Then
Cấu trúc nhiều dòng lệnh:
If <điều kiện> Then
End If
Điều kiện ở đây là một biểu thức Logic trả về kết quả True / False.
Bài giảngCấu trúc lệnh điều khiểnI. Cấu trúc chọn1. If...Then Cấu trúc một dòng lệnh: If Then Cấu trúc nhiều dòng lệnh: If Then End IfĐiều kiện ở đây là một biểu thức Logic trả về kết quả True / False.Ví dụ: nhập vào một số, kiểm tra xem số đú cú phải là chẵn khụng? In thụng bỏoSub InputNum()Dim A as byteA=inputbox(“nhap vao so a”) If (A MOD 2) = 0Then msgbox “A la một số chẵn” End IfEnd Sub2. If ...Then...Else Cú pháp : If Then [ Khối lệnh 1] [ ElseIf Then [khối lệnh 2]........... [Else] [khối lệnh n] End If Ví dụ 1If tuoi [Case [khối lệnh 1] ] [ Case [khối lệnh 2] ] ...................... [Case Else [khối lệnh n] ] End Select Select Case State Case "Michigan" Case "Minnesota" Message = "A wonderful state to visit if you enjoy fresh-water lakes." Case "Virginia" Message = "A wide variety of historical landmarks and beautiful mountains” Case "Arizona" Message = "A wonderful getaway for those who love heat with low humidity." Case "Colorado" Message = "Virtually unsurpassed for its majestic mountains and rivers." Case Else Message = "No specific information is available about this state."End Select II. Vũng lặp xỏc định1. For ...NextDùng kiểu vòng lặp này khi ta biết trước số lần lặp. Ta dùng biến đếm tăng dần hoặc giảm dần trong vòng lặp.Cú pháp: For = To [Step ] [Exit For]Next [ ] Trong đó: biến đếm, điểm đầu, điểm cuối và bước nhảy có kiểu dữ liệu số. Bước nhảy là tuỳ chọn và có thể dương hoặc âm. Nếu bước nhảy là số dương, điểm đầu phải nhỏ hơn hoặc bằng điểm cuối. Nếu không, khối lệnh sẽ không được thi hành. Ngược lại, nếu bước nhảy âm, điểm đầu phải lớn hơn điểm cuối. Nếu Step không được chỉ ra, mặc định bước nhảy là 1. Vớ dụ: tớnh tổng cỏc số lẻ từ 1 đến 100Dim I, S as integerS=0For I= 1 to 100 step 2 S=S+INext IMsgbox “Tong cac so le trong khoang 1-100 la:” & str(S)2. For Each...NextTương tự như For...Next , nhưng nó lặp khối lệnh theo số phần tử của một tập hợp các đối tượng hay một mảng thay và số lần lặp xác định. Vòng lặp này tiện lợi khi ta không biết chính xác có bao nhiêu phần tử trong tập hợp.Cú pháp: For Each In [ Exit For]Next Để dùng For Each ...Next:ã Phần tử trong tập hợp chỉ có thể là biến Variant, biến Object, hoặc đối tượng trong Object Browser.ã Phần tử trong mảng chỉ có thể là biến VariantLưu ý Không dùng For Each ... Next với mảng chứa kiểu ký tự định nghĩa vỡ Variant không chứa kiểu ký tự định nghĩa. Vớ dụ:Sub ListTableDefs() Dim objDb As Database Dim MyTableDef As TableDef Set objDb=OpenDatabase(“c:\vb\biblio.mdb”, True, False) For Each MyTableDef In objjDb.TableDefs() List1.AdddItem MyTableDef . Name Next MyTableDefEnd Sub III. Vũng lặp khụng xỏc định1.Vòng lặp Do...LoopThi hành khối lệnh với số vòng lặp không xác định trước, trong đó có một biểu thức điều kiện dùng để so sánh và quyết định vòng lặp có tiếp tục nữa không. Có thể thoát khỏi vòng lặp nhờ câu lệnh Exit Do.Kiểu 1: Lặp trong khi điều kiện là True. Do While [Exit Do] Loop Vi dụ:Again = TrueDoubleIt = 1Do While Again = TrueIf MsgBox ("Current total is " & DoubleIt & ". Double it again ?", vbYesNo) = vbYes Then DoubleIt = DoubleIt * 2Else Again = FalseEnd IfLoop ã Kiểu 2: Vòng lặp luôn có ít nhất một lần thi hành khối lệnh Do Loop While ã Kiểu 3: Lặp trong khi điều kiện là False Do Until [Exit Do ] Loop Ví dụ: Trong ví dụ trên nếu ta dùng vòng lặp Do Until ...Loop thỡ ta có mã như sau:Again = TrueDoubleIt = 1Do Until Again = False If MsgBox("Current total is " & DoubleIt & ". Double it again ?", vbYesNo) = vbYes Then DoubleIt = DoubleIt * 2 Else Again = False End IfLoop Kiểu 4: Lặp trong khi điều kiện là False và có ít nhất một lần được thi hành khối lệnh. cỳ phỏp: Do Loop Until Vớ dụ:I=2DoI=I*2Loop Until I>1000 2. Vòng lặp While... Wend Tương tự như vòng lặp Do... While, nhưng ta không thể thoát khỏi vòng lặp bằng lệnh Exit. Vỡ vậy vòng lặp này chỉ thoát khỏi khi biểu thức điều kiện là sai.Cỳ phỏp:While WendVí dụ: While sPassword “vitti” sPassword=InputBox$ (“Enter Password”) Wend
File đính kèm:
- BAI GIANG VB2.ppt