VB scripts uitgebreid
Hallo allemaal!In deze tutorial ga ik je alles leren over VBS, de scripting versie van VBA. Een makkelijke scripttaal voor beginners omdat de syntax simpel is. Let's start!
We schrijven ons script in kladblok. Daar kom je door naar start > uitvoeren te gaan, en notepad.exe in te typen. Als je je script hebt geschreven en wil opslaan, ga je naar Bestand > Opslaan en sla je je bestand op als "<bestandsnaam>.vbs" (MET aanhalingstekens). Na het opslaan kan je je net aangemaakte vbs-bestand openen om het resultaat van je script te bekijken; het script hoeft niet gecompileerd te worden.
Hoofdstukken:
1. Output
2. Variabelen
3. Input
4. If-statement
5. Select-statement
6. For-loop
7. Do while-loop
8. Arrays
1. Output
In andere scripttalen geef je vaak met 'echo' of 'print' iets op het scherm weer. In VBS doe je dat officieel met:
WScript.Echo "Hello world!"Let op dat je bij VBS geen puntkomma achter het eind van de regel doet!
2. Variabelen
Variabelen zijn een soort van namen waar je gegevens in op kunt slaan, en die later weer kunt weergeven.
Met Dim declareer je een variabele. Het is in VBS niet verplicht om te declareren, maar het is wel zo netjes.
Dim variabele1
Dim variabele2Of, als je minder wilt typen, kan je meerdere variabelen op één regel declareren door ze met een komma te scheiden:
Dim variabele1, variabele2Na het declareren kan je natuurlijk ook waardes aan die variabelen meegeven, anders heb je er tenslotte niets aan
Dim str1, int1
str1 = "DigitalPlace.nl"
int1 = 2004Een string zet je tussen aanhalingstekens, een integer (alleen een getal) niet.
Je kan de waardes van de net aangemaakte variabelen natuurlijk ook weer weergeven. Variabelen moeten altijd buiten quotes! In vbs scheid je een variabelen van de rest met een komma:
Dim str1, int1
str1 = "DigitalPlace.nl"
int1 = 2004
WScript.Echo str1 ," is in ", int1 ," opgericht, en bestaat bij het schrijven van deze tutorial bijna 4 jaar!"Wat er nu wordt weergegeven is: "DigitalPlace.nl is in 2004 opgericht, en bestaat bij het schrijven van deze tutorial bijna 4 jaar!".
3. Input
Een makkelijk hoofdstuk. Een voorbeeld:
Dim a
a = inputbox("Wie is dit?")De gebruiker krijgt nu een inputbox met de tekst 'Wie is dit?' en wat er in wordt gevuld, wordt in de variabele 'a' opgeslagen. Met die variabele 'a' kan je alles doen wat je wilt; aanpassen, weergeven...
4. If-statement
Met het if-statement kan je kijken of aan een bepaalde voorwaarde is voldaan, bijvoorbeeld of een variabele gelijk is aan een waarde. Als het klopt ondernemen we een actie, als dit niet zo is ondernemen we een andere actie of gaan we door met de code.
Een makkelijk voorbeeld:
Dim string
string = "Thisegzz"
If string = "Thisegzz" Then
WScript.Echo "De waarde van string is Thisegzz!"
Else
WScript.Echo "De waarde van string is niet Thisegzz!"
End IfLijkt me duidelijk. Algemeen is het if-statement dus:
If voorwaarde Then
actie
Else
andere actie
End IfHet is ook mogelijk om meerdere voorwaardes na te gaan. Dat doe je zo:
Dim string
string = "Thisegzz"
If string = "Thisegzz" Then
WScript.Echo "De waarde van string is Thisegzz!"
ElseIf string = "Henk" Then
WScript.Echo "De waarde van string is Henk!"
Else
WScript.Echo "De waarde van string is geen Henk en ook geen Thisegzz!"
End If5. Select-statement
In PHP en andere scripttalen heet dit het switch-statement, maar in VBS is dit 'select'.
Om even terug te gaan naar ElseIf, daarmee kan je een string meerdere keren op waardes controleren. Met het select-statement gaat dit makkelijker.
We geven één variabele op, die we op waardes gaan controleren. Zo zit het in elkaar:
Select Case variabele
Case voorwaarde1
actie
Case voorwaarde2
actie
Case voorwaarde3
actie
Enz...
End SelectEn een voorbeeld om het e.e.a. te verduidelijken:
Dim var1
var1 = 10
Select Case var1
Case 1
WScript.Echo "Var is 1"
Case 5
WScript.Echo "Var is 5"
Case 10
WScript.Echo "Var is 10"
End SelectDe variabele waar we in het voorbeeld mee werken is 'var1', die geven we op bij de 'select case'. Vervolgens gaan we kijken of deze 1 is, en zo ja, weergeven. Zo niet, gaan we door met controleren of het 5 is. En zo gaat het verder tot de laatste 'case'.
Je kan ook een Else instellen, dat wordt geactiveerd als alle andere cases niet kloppen.
Dim var1
var1 = 20
Select Case var1
Case 1
WScript.Echo "Var is 1"
Case 5
WScript.Echo "Var is 5"
Case 10
WScript.Echo "Var is 10"
Case Else
WScript.Echo "Var is geen 1, 5 of 10"
End Select6. For-loop
Met de for-loop kan je een actie meerdere keren herhalen, zodat je niet telkens hoeft te copy-pasten. Bij deze loop geef je een variabele, beginwaarde en eindwaarde op. De for-loop controleert of er al aan de eindwaarde is voldaan, en zo niet, telt hij één bij de variabele op of trekt hij één eraf.
Een voorbeeld:
Dim i
For i = 1 To 10
WScript.Echo i,"e keer"
NextBij het uitvoeren van het script krijg je 10 keer de melding 'xe keer', waarbij de x een getal is.
7.Do while-loop
De do while-loop van VBS lijkt veel op die van andere scripttalen, zoals PHP.
Je zegt aan welke voorwaarde moet worden voldaan, en zolang hier niet aan is voldaan blijft de loop doorgaan. Een voorbeeld:
Dim i
i = 1
Do While i < 10
WScript.Echo i,"e keer"
i = i + 1
LoopDe loop herhaalt zich tot 'i' boven de 10 is. Zoals je misschien al wel hebt gezien kan je met de do while-loop een oneindige lus maken, iets wat met de for-loop onmogelijk is.
8. Arrays
Een array is een variabele die meerdere gegevens kan bevatten. Dit kan handig zijn bij het opslaan van ingevulde gegevens, zodat je niet telkens opnieuw een script moet openen maar de gegevens automatisch kan laten opslaan in een array met bijvoorbeeld een loop.
Een array declareren doe je zo:
Dim rij(10)
Dim rij_twee(5)Hier kan 'rij' 10 gegevens bevatten, 'rij_twee' maar 5.
Een voorbeeld van een array:
Dim rij(5)
rij(1) = "hallo"
rij(2) = "hey"
rij(3) = "hoi"
rij(4) = "hi"
rij(5) = "hee"
WScript.Echo rij(1)
WScript.Echo rij(2)
WScript.Echo rij(3)
WScript.Echo rij(4)
WScript.Echo rij(5)Lijkt me duidelijk. Je stopt 5 gegevens in 'rij' en geeft die later allemaal weer.
Slot
Zo, dit was de tutorial over scripten in VBS. Ik hoop dat je er wat van hebt geleerd. Vragen kunnen op 't forum worden gesteld, of in een reactie bij deze tutorial worden geplaatst. Bedanken kan door door te doneren. Bedankt voor het lezen van deze tutorial!
Reacties (1)
Dat van arrays lijkt op dit moment wat onhandig hé...
Aangezien je nog steeds alles handmatig ingeeft.
Eventueel een For/DoWhile adden bij output nadat je het aantal arrays hebt gedefinieerd...
Voor de rest een leuke tutorial!
Aangezien je nog steeds alles handmatig ingeeft.
Eventueel een For/DoWhile adden bij output nadat je het aantal arrays hebt gedefinieerd...
Voor de rest een leuke tutorial!
Plaats reactie
Alleen leden kunnen reacties plaatsen. Ga naar de inlogpagina of word gratis lid van DigitalPlace.nl.
Details
Jouw mening
Updates
Opties




Bucky208