Artikelen, tips en trucs
Hier vindt u nuttige (technische) artikelen en andere handige informatie om specifieke zaken in met name Excel te realiseren.
Whitepaper: Opzetten van contextafhankelijke opdrachtbalken in Excel-addins
Het toevoegen van werkbalken met opdrachtknoppen in MS Office is zo gedaan. Professionele Excel-toepassingen vereisen evenwel vaak dat opdrachtbalken zich automatisch aanpassen aan specifieke situaties. Het gestructureerd opzetten van dergelijke contextafhankelijke menubalken en werkbalken in VBA is echter een complex vraagstuk. Onderstaand artikel zet daarom uiteen hoe flexibele, robuuste en gebruiksvriendelijke opdrachtbalken kunnen worden geïmplementeerd.
Download het artikel
Download de invoegtoepassing
Tip: Excel-keuzelijst met broncellen op ander werkblad
Via gegevensvalidatie, optie Lijst kun je een celbereik definiëren met waarden waaruit een gebruiker mag kiezen. Het probleem hierbij is evenwel dat Excel niet toestaat dat een bereik buiten het huidige werkblad wordt geselecteerd. In de praktijk wil je echter niet altijd dat de brongegevens op hetzelfde werkblad staan.
Los dit op door een gedefinieerde naam te gebruiken. Door naar deze naam te verwijzen i.p.v. naar een celbereik wordt het mogelijk waarden in het keuzelijstje te tonen die in een ander werkblad staan.
Voorbeeld: =LijstLeveranciers in plaats van =$B$2:$B$6
Download het voorbeeld
Truc: Controle op aantal ingegeven decimalen in Excel
Het kan wenselijk zijn om voor een celwaarde een maximaal aantal decimalen toe te staan. Het is mogelijk dit af te vangen zonder VBA te gebruiken:- Ga naar gegevensvalidatie, optie Aangepast
- Type in de tekstbox Formule: =AFRONDEN([Waarde];[Aantal decimalen])=[Waarde]
[Waarde]: Het celadres waar de waarde wordt ingegeven
[Aantal decimalen]: Het celadres waar het maximaal aantal decimalen wordt gedefinieerd.
Download het voorbeeld
Whitepaper: Implementatie van dynamische kolombepaling
Vanuit Excel-VBA dienen specifieke kolommen te worden benaderd. De gebruiker moet echter wel kolommen kunnen toevoegen/verwijderen. Hoe zorg je dat je applicatie blijft werken?
Download het artikel
Download het voorbeeld
Truc: Versnel gegevensdump in Excel door gebruik van een array
Externe gegevens worden vaak in Excel geïmporteerd voor verdere verwerking. Een veel gebruikte techniek om via VBA een tabel te tonen in een werkblad is als volgt:Dim lRow As Long
Dim iField As iField
'Loop door de tabel
Do While Not rs.EOF
lRow = lRow + 1
For iField = 1 To rs.Fields.Count
Sheet1.Cells(lRow, iField) = rs.Fields(iField - 1).Value
Next
rs.MoveNext
Loop
Per veld wordt een cel gevuld met de veldwaarde van in dit geval een recordset.
Het nadeel hiervan is dat deze methode veel tijd kost wanneer er sprake is van veel gegevens. Beter is het daarom de te importeren tabel eerst te vertalen naar een array met identieke dimensies. Daarna kan een cellenrange met dezelfde afmetingen worden gevuld:
Dim arrData(2, 2) As Variant
arrData(0, 0) = "start"
arrData(2, 2) = "eind"
Sheet1.Range(Sheet1.Cells(1, 1), Sheet1.Cells(3, 3)) = arrData
De data-push naar Excel wordt dan met een factor 100 versneld.
In het voorbeeld hieronder wordt op deze wijze een rekenblad gevuld met Access-gegevens.
Download het voorbeeld
| Aan de gedownloade bestanden kunnen geen rechten worden ontleend. Tevens is de auteur niet aansprakelijk voor eventuele schade, van welke aard dan ook. |
![]() |
![]() |
![]() |



