Most Valuable Professional


View Jan Karel Pieterse's profile on LinkedIn subscribe to rss feed
Subscribe in a reader

Subscribe to our mailing list

* indicates required

Bestand crasht Excel!!

Red mijn werkmap!
De beste tool voor Excel bestanden met problemen.

Cursussen

Excel VBA Masterclass (Engels)
Excel VBA voor Financials

Third party tools

Speed up your file

FastExcel
The best tool to optimise your Excel model!

Repair your file

Stellar Phoenix Excel Repair
Best tool to repair corrupt Excel sheets and objects
Home > Nederlandse site > Artikelen > Macro Verspreiden > Beperk toegang
This page in English

Excel-macro's geschikt maken voor anderen.

Afschermen toegang tot subs en functies

Over het algemeen kennen hulpprogramma’s verschillende subroutines, ieder met specifieke taak of taken. Het is vaak wenselijk alleen die routines zichtbaar te hebben voor de gebruiker die toegang geven tot de gebruikersinterface van het hulpprogramma.

Standaard zijn alle Subs zichtbaar in het venster "Macro" dat kan worden geopend via Extra, Macro, Macro’s of door de toets alt-F8 in te drukken. Subroutines die het huishoudelijke werk van de invoegtoepassing uitvoeren horen niet in dit lijstje thuis.

De module "private" maken

Door de tekst

Option Private Module

toe te voegen bovenaan een module (zie module modVoorbeeld04 in het bestand xlutil01.xls) worden alle subroutines in die module verwijderd uit de macro lijst. Hoewel deze subroutines nu niet meer zichtbaar zijn, kunnen ze nog wel via het macro venster worden gestart door hun naam in te typen.

De Subroutine Private maken

Private Sub OnZichtbareSub()
'Code
End Sub

Een nadeel van deze methode is, dat de subroutine niet meer toegankelijk is vanuit andere modules (kan ook gewenst zijn!).

Een optioneel argument gebruiken

Een andere methode is om alle subroutines die niet direct toegankelijk moeten zijn te voorzien van een argument:

Private Sub OnZichtbareSub(Optional bDummy As Boolean)
'Code
End Sub

Omdat het argument optioneel is, kan deze weggelaten worden bij het aanroepen:

OnZichtbareSub