MENU
 
Home
Nieuwsbrief
GC in de media
SiteMap
 
 
Tips en Tricks
Excel
Word
Photoshop
PowerPoint
Surf Tips
Gmail
Android
iPad
Excel ClipTips
 
cursus Office 2016
Access
Excel
Outlook
PowerPoint
Word
 
cursus Office 2013
Excel
PowerPoint
Word
Nieuw in Excel 2013
Nieuw in Word 2013
Nieuw in PowerPoint 2013
 
cursus Office 2010
Access
Nieuw in Excel 2010
Excel automatiseren
Excel
OneNote
Outlook
PowerPoint
Word
 
cursus Office 2007
Access
Excel
Outlook
PowerPoint
Publisher
Visio
Word
 
cursus Office
2000-2002-2003-XP
Access
Excel
PowerPoint
Outlook
Word
 
cursus Photoshop
Animatie
CS6
CS5
CS4
CS2 - CS3
Lightroom 3
Elements 6
Mask Pro
Nik Collection
 
cursus Dreamweaver
CS3
 
cursus Illustrator
CS4
 
cursus Flash
CS4
 
cursus Fireworks
CS4
 
cursus Paint Shop Pro
X en X2
 
cursus Premiere
Elements 7-8
 
cursus Joomla
Joomla 1.5
 
Sociale Netwerk sites
Facebook
LinkedIn
Twitter
 
iPad
Apps
 
Diversen
Celtx
CSS
DropBox
Firefox 3.6
GIMP
Internet Explorer 9
LIME
Linux
OpenSUZE
PREZI
ProShow Producer
YouTube
 
cursus Google
Agenda
Analytics
Gmail
Zoeken
Picasa 3
SketchUp
Chrome
Street View
 
cursus Windows
Live Movie Maker
Windows 10 nieuw
Windows 8
Windows 7
XP
Vista
 
cursus Office '97
Word
Excel
 
 

 

Cursus Excel automatiseren go to : Index - vorige - volgende
       
Les 13 Besturingselementen (7)  
 
Drop-downlijst (2)

De code voor de knop "Toevoegen', de drop-downlijst, en de knop "Sluiten" heb ik reeds toegevoegd.
Laat ik deze eens overlopen.

Het onderste deel (3) is de code die moet worden uitgevoerd wanneer je de knop "Sluiten" (cmdSluiten) hebt geklikt. Dit lijkt me wel duidelijk

In het eerste deel vinden we de code terug die moet worden uitgevoerd wanneer de knop "Toevoegen" (cmdToevoegen) wordt geklikt (1).

Met de eerste lijn code ActiveWorkbook.Sheets("Afdeling").Activate, activeren we het werkblad "Afdeling".
Met de tweede lijn code Range("A1").Select, selecteren we cel A1.
Met de volgende rijen code gaan we hem een lege cel laten zoeken, heeft hij deze gevonden, dan schrijft hij de gegevens weg in de lege cellen.
Do
If IsEmpty(ActiveCell) = False Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True

ActiveCell.Value = txtNaam.Value
ActiveCell.Offset(0, 1) = cboAfdeling.Value
Range("A1").Select

Dus wat staat hier:
Als de actieve cel niet leeg is (If IsEmpty(ActiveCell) = False Then)
Dan wordt de volgende rij geselecteerd (ActiveCell.Offset(1, 0).Select)
Dit herhaalt hij tot hij een lege cel heeft gevonden (Loop Until IsEmpty(ActiveCell) = True)
Heeft hij een lege cel gevonden, dan plaatst hij de gegevens uit het vak txtNaam in de actieve cel:
ActiveCell.Value = txtNaam.Value
Vervolgens springt hij een cel naar rechts en plaatst daar de gegevens in uit het drop-downmenu:
ActiveCell.Offset(0, 1) = cboAfdeling.Value

Dan keert hij terug naar cel A1 in het werkblad. (Dit hoeft er niet in te staan, want hiermee springt hij gewoon terug naar cel A1).
Range("A1").Select

En daarna maakt hij terug alle vakken leeg (Hoeft ook niet, maar hiermee worden alle vakken netjes leeg gemaakt wanneer de gegevens zijn weggeschreven.
Me.txtNaam.Value = ""
Me.cboAfdeling.Value =""

En als laatste maakt hij een eind aan de subroutine vaar de knop cmdToevoegen
End Sub

 
En dan hebben we nog de code voor de drop-downlijst (2).
Zoals je zal hebben opgemerkt in de vorige VB-code (1) voor de knop cmdToevoegen, is er geen waarde toegekend aan het vak cboAfdeling. Het enige dat we hier hebben gedaan is voor deze waarde een cel naar rechts hebben geselecteerd ActiveCell.Offset(0, 1) = cboAfdeling.Value in ons werkblad.
Hiervoor hebben we de code die het formulier initialiseert Private Sub UserForm_Initialize()
De eerste lijn herhaalt de waarde van het vak txtNaam, of beter gezegd, deze lijn doet niks, want er is niks ingevuld als waarde.

Maar met de lijnen daaronder bepalen we de inhoud van de drop-downlijst cboAfdeling:
With cboAfdeling
.AddItem "Administratie"
.AddItem "Ontwerp"
.AddItem "Reclame"
.AddItem "Verkoop"
End With

en de waarde van het veld cboAfdeling.
cboAfdeling.Value =""

 
 
Datum
En als laatste voorbeeld dat ik ga toevoegen aan het formulier is een datum door middel van het besturingselement DTPicker (1).
Dit besturingselement is standaard niet voorzien in de werkset, maar wanneer je deze rechtsklikt verschijnt er een lijst (2) met nog tientallen andere besturingselementen.
Selecteer "Microsoft Date en Time Picker control" (3) in het lijstje, en klik OK.
In de versies 2007 en ervoor noemt dit besturingselement "Calender Control".
De lay-out zal er wel wat anders uitzien, maar de code die we moeten toevoegen aan VBA blijft gelijk.
Eénmaal de kalender is toegevoegd aan het formulier, klik je de knop "Beeld" en kies je "Programmacode".
In de VBA-code moeten we nog twee lijnen code toevoegen.
De subroutine voor de DTPicker is reeds toegevoegd.
Hier typ je de code Me.DTPicker1.Value = Date (1)
Dan moeten we nog een extra regel toevoegen aan de subroutine van de knop cmdToevoegen.
Deze dient om de geselecteerde cel een cel naar rechts te verspringen "ActiveCell.Offset(0, 2) = DTPicker1.Value" (2), hij moet namelijk deze waarde in de kolom naast de kolom van de afdeling plaatsen.
Test de code.
 
 
Index - vorige - volgende

All courses now available in English:
www.swotster.com

copyright © 2012 - Swotster Ltd - Hong Kong - China