150 likes | 232 Views
Informatika I. 10. Véletlen, Ciklusok. Óra anyaga. Véletlen Ciklusok IF FOR DO Form alapok. http://krea.bke.hu/VB/makro/. Véletlen szám generálása. Rnd (0 <= x < 1) -10 - +10 közötti páros számok (Int(Rnd*11)-5)*2 Randomize kulcsszó. Feladat.
E N D
Informatika I. 10. Véletlen, Ciklusok
Óra anyaga • Véletlen • Ciklusok • IF • FOR • DO • Form alapok http://krea.bke.hu/VB/makro/
Véletlen szám generálása • Rnd (0 <= x < 1) • -10 - +10 közötti páros számok • (Int(Rnd*11)-5)*2 • Randomize kulcsszó
Feladat • Készítsünk makrót, amely –6 és +7 közötti véletlen egész számokkal feltölti az A oszlopot a 2.-tól a 18. Sorig, majd a páros számok betűszínét kékre, a páratlanok háttérszínét pedig sárgára változtatja!
IF ciklus • If feltétel Then • … • Else • … • End If
FOR ciklus • For ciklusváltozó = kezdőérték To végérték Step_ lépésköz ciklusmag Next
DO ciklus • Do While feltétel ciklusmag Loop • Do ciklusmag Loop Until feltétel
Példák I. ossz = 0 For i = 1 To 10 ossz = ossz + i Next ossz = 0 i = 1 Do While i <= 10 ossz = ossz + i i = i + 1 Loop
Példák II. ossz = 0 i = 1 Do ossz = ossz + i i = i + 1 Loop Until i > 10
Példák III. For i = 1 To 10 Cells(i,1).Interior.Color = vbBlue Next Range(Cells(1,1),Cells(10,1)).Interior.Color = vbBlue
Feladatok • Készíts egy makrót, amely InputBoxban bekéri a felhasználó nevét, aztán egy MsgBoxban köszönti a felhasználót! • Egészítsük ki az előző feladatot úgy, hogy ismételje addig a név bekérését, ha a felhasználó a Cancel gombot nyomta!
Megoldás Sub udvozlet() Do nev = InputBox(”Hogy hívnak?”, ”Kérdés”) Loop Until nev <> Empty valtozo = MsgBox(”Hello ”&nev, 0, ”Üdvözlet”) End Sub
Események kezelése • Szerkesztő üzemmódban
Események • SelectionChange – ha a munkalapon mást jelölünk ki • Change – cella tartalma vagy értéke változik • BeforeDoubleClick – szerkesztő üzemmód előtt • Calculate – ha a munkalapon számítás történik • Click - kattintás • DblClick – dupla kattintás • MouseMove – egérkurzor az elem fölé kerül
Formok • Adatbeviteli eszköz • Visual Basic -> beszúrás -> UserForm • Parancsok • userForm.Show • Unload Me