120 likes | 283 Views
Visual Basic - Genomgång. (Presenteras av: ITU). Algoritmteori. Definition: instruktioner för att lösa en uppgift (inom datavetenskap).
E N D
Visual Basic- Genomgång (Presenteras av: ITU)
Algoritmteori • Definition: instruktioner för att lösa en uppgift (inom datavetenskap). • Vid programmering: serier av villkor som måste uppfyllas för att kunna gå vidare; steg som leder till ett eller flera olika slut beroende på vilka villkor som uppfylls/ej uppfylls. • En procedur och/eller funktion kan dock göra andra saker, t.ex. visa meddelanden, leta efter värden etc. • En modul: innehåller en eller flera procedurer. • En procedur: kod som finns mellan Sub och End Sub eller Function och End Function. Steg som leder till att ett problem eller uppgift löses.
Steg som skall följas • Vilket problem skall lösas? T.ex. jämförelse av två värden, skall text visas, vad ska beräknas? • Vad och vilka flikar/filer berörs? En enstaka cell i en eller flera flikar/filer? • Vad är det du ska göra? Vilken typ av beräkning? Är villkor uppställda? Vill visa text? • Tänk på vilka procedurer och funktioner som behövs. Olika funktioner/procedurer och vad de kan göra: förklaringar finns under Help och på nätet. • Börja skriva kod! Tänk på: en modul = en typ av uppgift. Lång tid att ladda upp en stor modul.
Procedur och funktion • Sub ShowSum() msgbox sumNo(3,5)End SubFunction sumNo(x, y) sumNo = x + yEnd Function
Visucal Basic • Vilken cell skall makro mata in data till? Du måste tala om adressen. • Worksheets(”test”).Range(”A1”) = ”Testar bara” • Här betecknar Worksheets (inom den röda eklipsen): Makro kommer således att mata in texten Testar bara i cell A1 i den flik som heter test i den excelfil du arbetar med för tillfället. Range kan vara en eller flera celler, t.ex. Range(”A1:C6”). Ex. 2: Range("A1, A3, A5") = “Testar igen”. Range specifierar vart i Worksheet data hamnar. Citattecknen viktiga!
Visual basic • Indrag: traditionellt sett skall den text och de funktioner som finns inom en funktion, procedur eller loop skrivas in med ett indrag; detta för att bättre åskådliggöra vilken kod som hör till vilken funktion. • Ex: Sub Kod () For i=1 To 200 Kod Next i End Sub
Visual basic • Iteration: ”loopar”. Enkla loopar: • For i=1 To 100 [KOD] Next i Next är procedurens slut; här säger vi till Excel att gå vidare till nästa i. När sista i nås (dvs. i=100) avslutas proceduren. Excel går vidare till koden under Next.
OM krav1=sant Då händer något • If Age >=18 Then Drink = "Yes" Else Drink = "No" End If • Else-klausulen måste ej finnas med, om ingen konsekvens av det falska värdet finns.
Visual Basic • Så här kan det se ut: • For i=1 To 10 If Worksheets(“Age”).Range(“A“& i) >=18 Then Worksheets(“GuestList”).Range(“B1”) = Worksheets(“GuestList”).Range(“B1”) + 1 Else Worksheets("Pfft").Range("A1") = Worksheets("Pfft").Range("A1") + 1 End If • I text: I den cell vi har valt (dvs. B1 I fliken GuestList): summan blir cellens innehåll plus 1 OM villkoret att cellen Ai I fliken Age är mer eller lika med 18. ANNARS ökar värdet I cell A1 I fliken Pfft.
Visual basic • Sub showMessage() MsgBox "Hello World!"End Sub • Det som återfinns mellan citattecknen i MsgBox kommer att visas upp som ett meddelande I Excel när du kör Makrot showMessage().
VB på Handels • Bra till: att programmera under kursens gång (del 5 i Excelövningarna). Ev. inlämningsuppgifter under kursernas gång. • Arbetslivet: ett krav om du ska kunna bli bra på Excel (ser trevligt ut på CV). • Övning 4: I uppgiften står det att du ska jämföra två aktiekurser … tänk i steg. • Framöver: om så önskas kan fler VB-genomgångar/workshops hållas.
Avslutningsvis På nätet finns enorma resurser och utbildningssidor riktade till nybörjare och mer avancerade användare av Visual Basic. Googla på ”Visual Basic Tutorials Excel”.