VBA-besturingselementen in Excel: formulieren en ActiveX
⚡ Slimme samenvatting
VBA-besturingselementen in Excel zijn de interactieve elementen, zoals knoppen, selectievakjes en tekstvakken, die een grafische gebruikersinterface vormen. Deze pagina legt formulierbesturingselementen en ActiveX-besturingselementen uit, hoe de twee families van elkaar verschillen en geeft een stapsgewijs voorbeeld van een ActiveX-opdrachtknop.
VBA-besturingselementen: VBA-formulierbesturingselement en ActiveX-besturingselementen in Excel
VBA-formulier/GUI-besturingselementen in Excel
GUI is de afkorting voor Graphical User Interface. De GUI is het deel van het programma waarmee de gebruiker communiceert. Een GUI bestaat uit controls. Deze Excel VBA controls kunnen worden gebruikt in een Form. De volgende tabel toont enkele van de meest gebruikte GUI VBA controls.
| S / N | Controleer: | Beschrijving |
|---|---|---|
| 1 | commando | Wordt gebruikt om code uit te voeren |
| 2 | Combo Box | Wordt gebruikt om een vervolgkeuzelijst aan de gebruikers te presenteren |
| 3 | Check Box | Wordt gebruikt voor true of false waarden. Meerdere selectievakjes kunnen tegelijkertijd de true waarde hebben. |
| 4 | Lijst Box | Wordt gebruikt om een eenvoudige lijst aan de gebruikers te presenteren |
| 5 | Tekst Box | Wordt gebruikt om gebruikersinvoer te accepteren |
| 6 | Schuifbalk | Wordt gebruikt om een schuifbalk te bieden voor navigatiedoeleinden. |
| 7 | Spin-knop | Wordt gebruikt om numerieke waarden te verhogen of te verlagen door op de pijlen omhoog of omlaag te klikken die in de draaiknop verschijnen |
| 8 | Optieknop | Gebruikt voor waar of onwaar waarden. Er kan slechts één keuzerondje tegelijk een echte waarde hebben. |
| 9 | label | Wordt gebruikt om statische tekst aan de gebruiker weer te geven |
| 10 | Beeld | Wordt gebruikt om afbeeldingen weer te geven |
| 11 | Toggle-knop | Knop die ingedrukt en niet-ingedrukt heeft. |
In het VBA GUI-besturingselement:
- Klik op het tabblad Ontwikkelaar
- Klik op de vervolgkeuzeknop Invoegen
U krijgt het volgende keuzemenu te zien
Als u met de muis over VBA-formulierbesturingselementen beweegt, verschijnt de naam van het besturingselement zoals hieronder weergegeven
GUI-besturingselementen toevoegen aan een spreadsheet
We zullen nu een opdrachtknop aan onze werkmap toevoegen, daarvoor moeten we wel
- Klik op de vervolgkeuzelijst Invoegen
- Klik op de Command-knop (ActiveX-besturingselement) zoals weergegeven in de afbeelding hierboven
- Sleep en teken de knop op het blad
GUI-besturingseigenschappen instellen
We zullen nu het bijschrift van de knop instellen op iets beschrijvender
- Klik met de rechtermuisknop op de gelijkknop die we zojuist hebben gemaakt
- Selecteer het eigenschappenmenu
- U krijgt het volgende eigenschappenvenster
- Stel de eigenschap name in op btnButton. De eigenschap name wordt gebruikt om het besturingselement in het codevenster te identificeren. btn is het voorvoegsel voor de knop.
- Stel de eigenschap Bijschrift in op Klik op mij. De tekst in de caption-eigenschap is wat de gebruikers op de knop zullen zien.
Sluit het venster als u klaar bent.
U krijgt de volgende resultaten.
Verschil tussen formulierbesturingselementen en ActiveX-besturingselementen
Excel biedt twee soorten besturingselementen, en de juiste kiezen houdt een project eenvoudig. Formulierbesturingselementen zijn ingebouwd in Excel en voeren één toegewezen macro uit, terwijl ActiveX-besturingselementen programmeerbare objecten zijn die via VBA-code op meerdere gebeurtenissen reageren. De onderstaande tabel vergelijkt de twee.
| Kenmerk | Formulierbesturing | ActiveX-besturingselementen |
|---|---|---|
| Setup | Simpel; wijs één macro toe aan de besturing. | Vereist VBA-gebeurteniscode om te reageren |
| Aanbod | Beperkt aantal opties | Uitgebreid, inclusief lettertype, kleur en gedrag. |
| Evenementen | Enkele actie bij klikken | Veel gebeurtenissen zoals Klikken, Wijzigen en Focussen |
| Compatibiliteit | werkt op Windows en Mac Excel | werkt op Windows Alleen Excel |
| Meest geschikt voor | Snelle, eenvoudige werkbladopdrachten | Interactieve en dynamische gebruikersformulieren |
Kortom, gebruik een formulierbesturingselement wanneer één macro volstaat, en kies een ActiveX-besturingselement wanneer de interface uitgebreide eigenschappen vereist of moet reageren op meerdere gebruikersgebeurtenissen.
Eerste vereiste
Voordat u het ActiveX-voorbeeld bouwt, moet u de werkmap voorbereiden zodat de besturingselementen beschikbaar zijn en de macro's kunnen worden opgeslagen.
Configure
Microsoft Excel
Zoals we in de vorige zelfstudie hebben gezien, moet u ervoor zorgen dat uw lint het pictogram 'Ontwikkelaar' heeft, zoals hier weergegeven.
Hernoem nu blad1 naar "VBA Operator” zoals weergegeven in de onderstaande schermafbeelding. Sla het werkblad op als een Excel-werkblad met macro's (*.xlsm). (zie de afbeelding hieronder)
Klik daarna op de knop Opslaan.
Hoe ActiveX-besturingselement in VBA te gebruiken
Nu het werkblad klaar is, kunnen we een werkende ActiveX-knop toevoegen. In dit gedeelte over ActiveX-besturingselementen in Excel laten we zien hoe je een 'commandclick'-knop in VBA kunt integreren en een programma kunt uitvoeren met behulp van die knop.
Stap 1) Klik in deze stap op de optie "Knop invoegen" van het Active X-besturingselement. Selecteer vervolgens de opdrachtknopoptie.
Stap 2) Om “clickcommandbutton1” in te voegen, sleept u de muiscursor naar het Excel-blad.
Stap 3) Klik vervolgens met de rechtermuisknop op de opdrachtknop en selecteer de optie 'Weergave'. Code'.
Stap 4) Controleer of u op het juiste blad zit. Er wordt een code-editor geopend. Voer uw code in.
- In code hebben we bereik A1 tot A10 gedefinieerd.
- Dit bereik definieert het celnummer in het Excel-blad van 'A1 tot A10'.
- Vervolgens definiëren we de tekenreeks "Guru99 VBA-zelfstudie” in code
- Dus, wanneer je in Excel op de opdrachtknop klikt, zou het volgende moeten worden afgedrukt:Guru99 VBA-zelfstudie” in het celbereik “A1 tot A10.”
Stap 5) Sla in de volgende stap het codebestand op en sluit vervolgens de editor af. Om terug te keren naar het Excel-bestand klikt u op het Excel-bladpictogram uiterst links.
Stap 6) In het Excel-blad ziet u dat het tabblad Ontwerpmodus is ingeschakeld. Zorg ervoor dat deze op “UIT” staat, anders werkt uw code niet.
Stap 7) Als de ontwerpmodus is uitgeschakeld, is er geen groene markering te zien. Nu kunt u op de opdrachtknop klikken.
Stap 8) Klik op “CommandButton1”. Er wordt dan “ afgedrukt.Guru99 VBA-zelfstudie” in het celbereik “A1 tot A10”.
Download Excel met bovenstaande code
Veelvoorkomende ActiveX-besturingselementgebeurtenissen in VBA
Een ActiveX-besturingselement is krachtig omdat het reageert op gebeurtenissen, oftewel acties die de gebruiker op het besturingselement uitvoert. Elke gebeurtenis voert een eigen subroutine uit, waardoor dezelfde knop zich anders kan gedragen, afhankelijk van wat de gebruiker doet. De meest voorkomende gebeurtenissen worden hieronder vermeld.
- Klik – voert de code uit wanneer de gebruiker op het besturingselement klikt, de gebeurtenis die in het bovenstaande voorbeeld wordt gebruikt.
- Veranderen – wordt uitgevoerd wanneer de waarde van een besturingselement verandert, bijvoorbeeld typing in een tekstvak of door een item in een keuzelijst te selecteren.
- GotFocus / LostFocus – wordt uitgevoerd wanneer het besturingselement focus krijgt of verliest, handig voor het valideren van invoer.
- Toets indrukken – wordt uitgevoerd wanneer de gebruiker een toets indrukt terwijl de bediening actief is.
- Muisbeweging – wordt uitgevoerd wanneer de muiswijzer over het besturingselement beweegt.
- Dubbelklikken – wordt uitgevoerd wanneer de gebruiker dubbelklikt op het besturingselement.
Om code toe te voegen voor een gebeurtenis, schakelt u de ontwerpmodus in, klikt u met de rechtermuisknop op het besturingselement en kiest u 'Weergave'. Codeen selecteer de gebeurtenis uit de vervolgkeuzelijst bovenaan het codevenster.

















