Bab4 penyataan kawalan
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Bab4 penyataan kawalan

on

  • 777 views

 

Statistics

Views

Total Views
777
Views on SlideShare
777
Embed Views
0

Actions

Likes
0
Downloads
8
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Bab4 penyataan kawalan Document Transcript

  • 1. BAB EMPAT: PENYATAAN KAWALANPERNYATAAN KEPUTUSAN DAN SYARATPernyataan keputusan merupakan struktur kawalan logik yang akan menyelesaikan masalahberdasarkan suatu syarat yang telah ditentukan. Proses akan dilaksanakan sekiranya ia memenuhisyarat yang ditetapkan (syarat adalah benar) dan sekiranya syarat adalah palsu, proses yangsebaliknya akan dilaksanakan. Terdapat tiga bentuk struktur kawalan yang melibatkan pemilihaniaitu If…Then, If…Then...Else dan Case akan dibincangkan di dalam ini.Pernyataan If…ThenIa hanya melibatkan pengujian ke atas satu syarat sahaja dan mempunyai satu pilihan tindakan yangakan dilaksanakan. Sekiranya syarat adalah benar maka pernyataan selepas Then akandilaksanakan. Palsu Benar berjaya? Tahniah!Bentuk Am: If <syarat> Then Tindakan End If
  • 2. Penyataan KawalanContoh: If Anda Berjaya Then Tahniah!!! End IfPernyataan If…Then…ElseStruktur kawalan ini melibatkan dua tindakan yang akan dilaksanakan bergantung kepada syaratyang akan ditentukan sama ada benar atau palsu. Palsu Benar Cuaca baik? Duduk dirumah Keluar berjalanBentuk Am: If <syarat> Then Tindakan 1 Else Tindakan 2 End IfContoh: If cuaca baik Then ‘syarat Keluar berjalan-jalan ‘dilaksanakan jika benar Else Duduk dirumah ‘dilaksanakan jika palsu End IfMohd Farid Jaafar 45JSM, FSKTM, UPM
  • 3. Penyataan KawalanPernyataan If BersarangTerdapat juga syarat yang melebihi dari satu bagi membolehkan suatu tindakan dilaksanakan.Pernyataan ini dipanggil pemyataan If Bersarang (Nested If). IntSuhu>20? Palsu Benar lbIKomen.Caption = "SEJUK!" IntSuhu>40? Palsu Benar lbIKomen.Caption = lbIKomen.Caption = "SEDERHANA SAJA!” "PANAS!"Bentuk Am: If <syarat 1> Then If <syarat 2> Then Tindakan 1 Else Tindakan 2 End If Else Tindakan 3 End IfBerdasarkan bentuk di atas, pengujian bagi Syarat pertama akan dilakukan terlebih dahulu. Jikaianya adalah benar, pengujian bagi Syarat kedua akan dilaksanakan. Tetapi, jika pengujian bagiSyarat1 adalah palsu, maka Tindakan3 yang akan dilaksanakan. Pada pengujian Syarat2, jikaianya benar, maka Tindakan1 akan dilaksanakan. Jika Palsu, Tindakan2 yang akan dilaksanakan.Mohd Farid Jaafar 46JSM, FSKTM, UPM
  • 4. Penyataan Kawalan Contoh: If cuaca baik Then ‘syarat pertama If Rajin Then ‘syarat kedua Keluar naik basikal ‘dilaksanakan jika benar Else Keluar naik kereta ‘dilaksanakan jika palsu End If Else Duduk diam-diam ‘dilaksanakan jika palsu End If Contoh: If intSuhu > 20 Then If intSuhu <= 20 Then If intSuhu > 40 Then lbIKomen.Caption = "SEJUK!" lbIKomen.Caption = "PANAS!" Else Else If intSuhu > 40 Then lbIKomen.Caption = lbIKomen.Caption = "PANAS!" "SEDERHANA SAJA!" Else End If lbIKomen.Caption = "SEDERHANA Else SAJA!" lbIKomen.Caption = "SEJUK!" End If End If End If optLelaki.Value? txtUmur.Text<21? txtUmur.Text<21?Tokok 1 pada Tokok 1 pada Tokok 1 pada Tokok 1 pada intLelaki1 intLelaki2 intWanita1 intWanita2 Mohd Farid Jaafar 47 JSM, FSKTM, UPM
  • 5. Penyataan KawalanContoh:If optLelaki.Value = True Then If Val (txtUmur.Text) < 21 Then intLelaki1 = intLelaki1 + 1 Else intLelaki2 = intLelaki2 + 1 End IfElse If Val (txtUmur.Text) < 21 Then intWanita1 = intWanita1 + 1 Else int intWanita2 = int intWanita2 + 1End IfSyaratPengujian bagi pemyataan If adalah berdasarkan 6 operator perbandingan berikut. Keputusandaripada perbandingan adalah sama ada Benar atau Palsu. Operator Nilai Contoh Val (txtAmaun.Text) > mcurLimit > Lebih besar daripada frmMain.Tinggi > mcurSaiz Val(txtJuaIan. Text) < 10000 < Lebih kecil daripada txtNama.Text < strNama txtKatakunci.Text = "101" = Bersamaan dengan optArahanl.Value = True txtKatakunci.Text <> "101" <> Tidak bersamaan dengan optArahanl.Value <> True Lebih besar daripada VaI(txtJualan.Text) >= 10000 >= dan sama dengan frmMain.Tinggi >= 500 Lebih kecil daripada <= txtNamal.Text <= txtNama2.Text dan sama denganMohd Farid Jaafar 48JSM, FSKTM, UPM
  • 6. Penyataan KawalanOPERASI PERBANDINGAN NUMERIKApabila melakukan operasi perbandingan ke atas numerik, tanda + dan - akan diambil kira.Contohnya, -20 adalah kurang daripada 10 dan -2 adalah kurang daripada -1. Bagi pengekodanberikut: If Val (txtHarga.Text) = curMaksimum ThenTanda = di atas bermaksud adakah nilai numerik di dalam txtHarga.Text sama dengan nilai yangdisimpan oleh curMaksimum?Contoh: intAlpha intBravo intCharlie 5 4 -5 Syarat Keputusan intAlpha = intBravo Palsu intCharlie < 0 Benar intBravo > intAlpha Palsu intCharlie <= intBravo Benar intAlpha >= 5 Benar intAlpha <> intCharlie BenarPerbandingan StringPerbandingan antara String boleh dilakukan dengan membandingkan setiap aksara (character)yang terdapat di dalam pembolehubah String. Kaedah untuk menentukan kedudukan aksara didalam perwakilan komputer ialah menggunakan ASCII Code (American Standard Code forInformation Interchange). ASCII Code mengandungi kod bagi semua huruf, nombor dan aksarakhas. Berdasarkan jadual ASCII Code, huruf besar lebih kecil dari huruf kecil, nombor lebih kecildari huruf dan ’blank space adalah yang paling kecil.Mohd Farid Jaafar 49JSM, FSKTM, UPM
  • 7. Penyataan KawalanContoh: txtPerson1.Text txtPerson2.Text JOHN JOANSekiranya pernyataan txtPerson1.Text < txtPerson2.Text dilakukan, ia memberikan keputusanFALSE. Ini kerana A di dalam JOAN lebih rendah kedudukan kodnya dari H di dalam JOHN.Sekiranya pernyataan txtWordl.Text < txtWord2.Text dilakukan, ia akan memberikan keputusanTrue. Apabila satu string pendek dibanding dengan string yang panjang, ia akan membandingkankedudukan ruang kosong (blank space) yang terdapat pada string tersebut. Oleh kerana ruangkosong lebih rendah kedudukan kodnya maka dianggap string tersebut lebih kecil. lblCar1.Text lblCar2.Text 300ZX PorscheSekiranya penyataan lblCarl.Text < lblCar2.Text dilakukan, ia akan memberikan keputusanTrue. Nombor 3 adalah lebih kecil kedudukan kod dari huruf P. txtWord1.Text txtWord2.Text HOPE HOPELESSPerbandingan Kandungan Property Text bagi Text BoxApabila membandingkan Property Text bagi Text Box dengan satu nilai, kita perlu berhati-hatikerana Property Text boleh bertindak seperti variant. Sekiranya kita menggunakan nilai text boxsebagai string maka ia akan bertindak sebagai string, sekiranya ia sebagai nombor, ia akanbertindak seperti nombor.Mohd Farid Jaafar 50JSM, FSKTM, UPM
  • 8. Penyataan KawalanASCII Code Character ASCII Code Character ASCII Code Character 32 Space (blank) 64 @ 96 ‘ 33 ! 65 A 97 a 34 “ 66 B 98 b 35 # 67 C 99 c 36 $ 68 D 100 d 37 % 69 E 101 e 38 & 70 F 102 f 39 ‘ 71 G 103 g 40 ( 72 H 104 h 41 ) 73 I 105 i 42 * 74 J 106 j 43 + 75 K 107 k 44 , (koma) 76 L 108 l 45 - 77 M 109 m 46 . 78 N 110 n 47 / 79 O 111 o 48 0 80 P 112 p 49 1 81 Q 113 q 50 2 82 R 114 r 51 3 83 S 115 s 52 4 84 T 116 t 53 5 85 U 117 u 54 6 86 V 118 v 55 7 87 W 119 w 56 8 88 X 120 x 57 9 89 Y 121 y 58 : 90 Z 122 z 59 ; 91 [ 123 { 60 < 92 124 | 61 = 93 ] 125 } 62 > 94 ^ 126 ~ 63 ? 95 _ 127 Del Jadual ASCII CodeMohd Farid Jaafar 51JSM, FSKTM, UPM
  • 9. Penyataan Kawalan Untuk memastikan kita mendapat nilai yang terutamanya nombor, fungsi Val bolehdigunakan. Pastikan tiada ruang kosong antara nombor kerana fungsi Val akan menukarkan ruangkosong kepada tiada nilai (kosong, bukan 0). Contoh: 10 1.12 -> 101.12Contoh:txtFirst.Text txtSecond.Text txtFirst.Text > txtSecond.Text Val(txtFirst.Text)> Val(txtSecond.Text) 1 +1 True False 2 100 True False +100 -100 False True 0 (blank) True FalsePerbandingan Aksara Huruf Besar (Uppercase) dan Huruf Kecil (Lowercase)Apabila kita membandingkan String, jenis huruf (kecil atau besar) adalah penting. Sebagaicontohnya Y adalah tidak sama dengan y. Salah satu kaedah untuk mengelakkan penggunamemasukkan kombinasi huruf besar dan kecil ialah menggunakan fungsi UCase atau LCase. UCase (string) LCase (string)Contoh: txtWord.Text UCase(txtWord.Text) LCase(txtWord.Text) Basic BASIC basic PROGRammING PROGRAMMING programming Robert Jones ROBERT JONES robert jones hello HELLO HelloMohd Farid Jaafar 52JSM, FSKTM, UPM
  • 10. Penyataan KawalanBerikut ialah contoh pemilihan syarat menggunakan fungsi UCase: If UCase(txtOne.Text) = “BASIC” Then ‘Lakukan operasi End IfApabila menukarkan kandungan txtOne.Text kepada huruf besar, kita mesti membandingkandengan "BASIC" untuk memastikan ianya True.Syarat Maimuk (Compound Conditions)Kita boleh menggunakan syarat majmuk untuk menguji lebih dari satu syarat. Syarat majmukdibina menggunakan kombinasi syarat dengan operator logik. Operator logik ialah Or, And danNot.Operator Logik Maksud Contoh And Kedua-dua syarat mesti benar, barulah txtNumber.Text > 0 And _ pernyataan syarat adalah benar txtNumber.Text < 10 Or Jika syarat pertama benar atau syarat kedua 1blNumber.Caption = 1 Or _ benar, maka pernyataan syarat adalah benar lblNumber.Caption = 2 Not Jika syarat adalah benar maka pernyataan Not lblNumber.Caption = 0 tidak benarContoh: If optMale.Value = True And Val (txtAge.text) < 21 Then mintMinorMaleCount = mintMinorMaleCount + 1 End If If optJunior.Value = True Or optSenior.Value = True Then mintUpperCiassmanCount = mintUpperClassmanCount + 1 End IfMohd Farid Jaafar 53JSM, FSKTM, UPM
  • 11. Penyataan KawalanApabila menggunakan syarat majmuk, pastikan setiap syarat bagi operator logik adalah lengkap.Contoh berikut merupakan syarat operator logik yang salah: optJunior.Value Or optSenior.Value = TrueMenggabungkan Penggunaan And dan OrSyarat majmuk boleh dibina menggunakan beberapa And dan Or. Apabila menggunakangabungan And dan Or, pernyataan And akan dilaksanakan dahulu. Bagaimanapun turutantersebut boleh ditukar dengan menggunakan parenthesis (), di mana pernyataan di dalamparenthesis akan dilaksanakan dahulu. Contoh:If curSale > 1000 Or optDiscount.Value = True And UCase(txtState.Text) <> "CA" Then ‘(Calculate the Discount)End If curSales optDiscount.Value UCase(txtState.Text) Condition Evaluates 1500 False CA True 1000 True OH True 1000 True CA False 1500 True NY True 1000 False CA FalseMohd Farid Jaafar 54JSM, FSKTM, UPM
  • 12. Penyataan KawalanPernyataan Select CasePernyataan Select Case digunakan bagi menguji beberapa nilai dan lebih mudah digunakanberbanding dengan pernyataan If tersarang. Select Case expression Case constant list [statement(s)] [Case constant list [statement(s)]] . . [Case Else] [statement(s)] End SelectExpression biasanya terdiri dari pembolehubah atau property yang akan diuji.Constant list ialah nilai yang akan dipadankan, mungkin nombor, string, had nilai (range of value)atau pernyataan bersyarat (relational condition).Contoh: Select Case intScore Case Is >= 100 lblMessagel.Caption = "Cemerlang" lbIMessage2.Capttion = "Anda sememangnya bijak!" Case 80 To 99 lblMessagel.Caption = "Bagus" lbIMessage2.Capttion = "Anda patut berbangga dengan diri awak!" Case 60 To 79 lblMessage1.Caption = "Sederhana" lbIMessage2.Capttion = "Tingkatkan usaha anda" Case Else lblMessage1.Caption = "Lemah"Mohd Farid Jaafar 55JSM, FSKTM, UPM
  • 13. Penyataan Kawalan lbIMessage2.Capttion = "Anda harus berusah lebih gigih" End Select**Apabila menggunakan operator hubungan (contoh: Is >= 100), perkataan Is mesti digunakan.Jika menggunakan had nilai, gunakan perkataan To (contoh: 80 To 99). Sekiranya hendakmenguji nilai String, gunakan quotation marks (" ").Contoh: Select Case txtNamaHaiwan.Text Case “Harimau” (berikan kod Harimau) Case “Kucing” (berikan kod kucing) Case Else (berikan mesej “Tiada dalam senarai”) End SelectContoh:Description: This project calculates the amount due based on the customer selection‘ and accumulates summary data for the day.Option ExplicitDim mcSubtotal As CurrencyDim mcTotal As CurrencyDim mcGrandTotal As CurrencyDim miCustomerCount As IntegerConst cCAPUCINO_PRICE As Currency = 2Const cESPRESSO_PRICE As Currency = 2.25Const cLATTE_PRICE As Currency = 1.75Const cICED_PRICE As Currency = 2.5Mohd Farid Jaafar 56JSM, FSKTM, UPM
  • 14. Penyataan KawalanCalculate and display the current amounts, add to totalsPrivate Sub cmdCalculate_Click()Dim cPrice As CurrencyDim iQuantity As IntegerDim cTax As CurrencyDim cItemAmount As CurrencyConst cTAX_RATE As Currency = 0.08Find the priceIf optCappuccino.Value = True Then cPrice = cCAPPUCCINO_PRICEElself optESPRESSO_PRICE.Value = True Then cPrice = cESPRESSO_PRICEElseIf optLATTE_PRICE.Value = True Then cPrice = cLATTE_PRICEElseIf optIcedCappuccino.Value = True Or optIcedLatte.Value = True Then CPrice = cICED_PRICEElse MsgBox “Please Make Drink Selection", vbExclamation, "Oops"End If‘Add the price multiply quantity to price so farIf IsNumber(txtQuantity.Text) Then iQuantity = Val(txtQuantity.Text) cItemAmount = cPrice * iQuantity mcSubTotal = mcSubtotal + cItemAmount If chkTax.Value = Checked Then cTax = mcSubtotal + cTAX_RATE End If mcTotal = mcSubtotal + cTax lblItemAmount. Caption = Format$(cltemAmount, "Currency") lblSubTotal.Caption = Format$(mcSubtotal, "Currency") lblTax.Caption = Format$(cTax, "Currency") lblTotal.Caption = Format$(mcTotal, "Currency")ElseMohd Farid Jaafar 57JSM, FSKTM, UPM
  • 15. Penyataan Kawalan Msgbox "Quantity must be numeric", vbExclamation, "Oops" txtQuantity.SetFocusEnd IfEnd SubSub cmdClear_Click()‘Clear appropriate controlsoptCappuccino.Value = True Make first button selected to beginoptEspresso.V alue = FalseoptLatte.Value = FalseoptlcedLatte.Value = FalseoptlcedCappuccino.Value = FalselblItemAmount.Caption = ""chkTax.Enabled = False Allow change for new order onlyWith txtQuantity .Text = "” .SetFocusEnd WithEnd SubPrivate Sub cmdExit_Click()‘Terminate the projectEndEnd SubPrivate Sub cmdNewOrder_Click()‘Clear the current order and add to totalscmdClear_ClickIblSubTotal.Caption = “”IblTax.Caption = “”Add to TotalsmcGrandTota! = mcGrandTotal + mcTotalmcSubtotal = 0Mohd Farid Jaafar 58JSM, FSKTM, UPM
  • 16. Penyataan KawalanmcTotal = 0 reset for next customermiCustornerCount = miCustomerCount + 1Clear appropriate display items and enable check boxWith chkTax .Enabled = True .Value = FalseEnd WithEnd SubPrivate Sub cmdSummary Click()Calculate the average and Display the totalsDim cAverage As CurrencyDim stMessageString As StringDim stFormattedAvg As StringIf miCustomerCount > 0 Then If mcTotal <> 0 Then cmdNewOrder_Click Make sure last order is counted End If cAverage = mcGrandTotal / miCustomerCount Format the numbers stFormattedAvg = Format$(cAverage, “Currency”) ‘Concatenate the massage string stMessageString = "Number Orders: " & miCustomerCount & vbCrLf & _ "Average Sale: " & stFormattedAvg MsgBox stMessageString, vbInformation, "Coffee Sales Summary"Else MsgBox "No data to summarize", vbExclamation, "Coffee Sales Summary"End IfEnd SubMohd Farid Jaafar 59JSM, FSKTM, UPM
  • 17. Penyataan KawalanPERNYATAAN ULANGANGegelung (Loops) digunakan untuk mengulang pernyataan berdasarkan jumlah ulangan yangdikehendaki. Pernyataan ulangan adalah berdasarkan syarat, sekiranya telah dipenuhi, barulahdibenarkan keluar dari gegelung tersebut Terdapat beberapa jenis gelung seperti Do…Loop,For…Next, Nested For…Next dan For Each…Next. Setiap perlaksanaan bagi satu gelungdipanggil sebagai satu lingkaran (iteration).Do / LoopGegelung Do bermula dengan kata kunci Do dan berakhir dengan Loop. Pemyataan akan diulangsekiranya syarat While adalah benar atau syarat Until adalah benar dan gelung akan berhentisekiranya syarat adalah palsu. Do (While | Until) Condition Do pernyataan di dalam Loop pernyataan di dalam Loop Loop Loop (While | Until} ConditionPengujian syarat bagi gegelung Do boleh diletakkan di awal gegelung Do atau di akhir gegelungDo. Sekiranya syarat diletakkan di awal Do, pernyataan di dalam Do tidak akan dilaksanakansekiranya syarat tersebut tidak dipenuhi, ia dikenali sebagai pretest. Sekiranya syarat diletakkandi akhir gegelung Do, pernyataan di dalam gegelung Do akan dilaksanakan sekurang-kurangnya sekali, ia dikenali sebagai posttest.Contoh: Do Until intItemIndex = lstItemIndex.ListCount – 1 ‘Pernyataan di dalam loop Loop Do While curAmount >= 10 And curAmount <= 20 ‘Pernyataan di dalam loop LoopMohd Farid Jaafar 60JSM, FSKTM, UPM
  • 18. Penyataan Kawalan Do ‘Pernyataan di dalam loop Loop Until intTotal > 0 Pretest Loop Pretest Loop While Until Benar Palsu Syarat Loop Syarat Loop Palsu Pernyataan di Benar Pernyataan di dalam Loop dalam Loop Lengkap Loop Lengkap Loop Posttest Loop Pretest Loop While Until Pernyataan di Pernyataan di dalam Loop dalam Loop Benar Palsu Syarat Loop Syarat Loop Palsu Benar Lengkap Loop Lengkap LoopMohd Farid Jaafar 61JSM, FSKTM, UPM
  • 19. Penyataan KawalanFor / Next LoopGegelung For…Next digunakan untuk membuat ulangan apabila jumlah bilangan ulangandiketahui. Untuk menggunakan gegelung For, isytiharkan satu pembolehubah yang akanmemegang nilai indeks (Loop Index), biasanya berjenis nombor. Loop Index akan menentukanbilangan pernyataan di dalam loop yang akan dilaksanakan. For LoopIndex = InitialValue To TestValue [Step Increment] Pemyataan yang akan dilaksanakan Next [Loopindex]Loop Index mestilah pembolehubah numerik. Manakala Nilai awal (Initial Value), Test Valueboleh terdiri daripada pemalar tetap, pembolehubah, nilai numerik atau expression. Pilihan Stepdigunakan sebagai tambahan nilai kepada Loop Index bagi setiap lingkaran (iteration). Sekiranyastep tidak diletakkan, nilai tambahan dianggap 1.Carta Alir bagi For / Next Loop Berikan nilai pembolehubah index Palsu Akhir limit? Pernyataan di dalam Loop Benar Tambah Loop indexMohd Farid Jaafar 62JSM, FSKTM, UPM
  • 20. Penyataan KawalanContoh: For intindex = 2 To 100 Step 2 For intCount = intStart To intEnding Step intlncrement For intCounter = 0 To cboCoffeeType.1-istCount –1 For intNumber = (intNumberCorrect - 5) To intTotalPossible For curRate = .05 To .25 Step .05 For intCountDown = 10 to 0 Step –1Peningkatan Nilai Secara Negatif atau Secara Unduran(Negative Increment or Counting Backward)Nilai negatif juga boleh digunakan pada Step untuk tujuan mengurangkan nilai Loop Index.Apabila nilai Step adalah negatif, VB akan menguji nilai yang kurang dari test value. Contoh: For intCount = 10 To 1 Step –1 `Kiraan secara Unduran Print intCount Next intCountBeberapa Contoh Pengaturcaraan yang Lemah Loop yang tidak terlaksana intFinal = 5 For intlndex = 6 To intFinal Perlaksanaan pernyataan dalam loop tidak akan dilaksanakan Next intlndex Contoh salah - Penukaran nilai kawalan pembolehubah intFinal = 10 intIncrease = 2Mohd Farid Jaafar 63JSM, FSKTM, UPM
  • 21. Penyataan Kawalan For intlndex = 1 To intFinal Step intIncrease intFinal = 25 intIncrease = 5 Next intlndex Pengaturcaraan yang sangat lemah For intlndex = 1 To 10 Step 1 intlndex = intlndex + 5 Next intlndex Pengaturcaraan yang tidak akan berakhir For intlndex = 1 To 10 Step 1 intlndex = 1 Next intlndexKeluar daripada For/Next LoopAda ketikanya kita pertu keluar awal sebelum Loop Index sampai ke nilai akhir. VB menyediakanpernyataan Exit For untuk tujuan ini. Biasanya Exit For adalah sebahagian daripada pemyataan If.Ia akan menamatkan gelung For dengan segera.Contoh: For intLooplndex = 1 To 10 If txtlnput.Text = "” Then Tiada nilai input pada textbox MsgBox "Anda mesti masukkan satu nilai" Exit for End If ‘Pernyataan di dalam loop Next intLoopIndexMohd Farid Jaafar 64JSM, FSKTM, UPM
  • 22. Penyataan KawalanFor / Next Loop BersarangBerikut merupakan contoh di mana pernyataan di dalam loop akan dilaksanakan 12 kali bagisetiap elemen strName. Dim intRow As Integer Dim intCol As Integer For intRow = 1 To 3 For intColumn = 1 To 4 strName (intRow, intColumn) = "” Next intColumn Next intRowFor Each / NextGegelung For Each…Next biasanya digunakan untuk membina langkauan (stepping) bagi semuaelemen di dalam tatasusunan (array) atau koleksi. Isytiharkan pembolehubah Variant untukmemegang setiap elemen tatasusunan. Bagi koleksi objek, isytiharkan pembolehubah Variantatau pembolehubah untuk jenis objek yang khusus. Di dalam gelung, pembolehubah akan memegang objek atau elemen semasa. Kelebihanmenggunakan For Each…Next ialah kita tidak perlu memanipulasi index atau menguji bilanganelemen.Contoh: For Each VariableName In {ArrayName | CollectionName} Pemyataan yang akan dilaksanakan di dalam loop NextMohd Farid Jaafar 65JSM, FSKTM, UPM
  • 23. Penyataan Kawalan Dim intltem As Variant For Each intltem In MyArray Debug.Print intltem Next Dim objForm As Form For Each objForms In Forms Debug.Print objForm.Name, objForm.Caption NextMohd Farid Jaafar 66JSM, FSKTM, UPM