Het gebruik van Besturingselementen
Inhoud
- Inleiding
- Waar zijn de besturingselementen te vinden
- Twee groepen elementen; het verschil
- Het invoegen van de elementen
- Overzicht van de soorten elementen
- Gedetailleerde beschrijving van de elementen
- De interactie tussen de elementen en uw werkblad
- Conclusie
Inleiding
Naast invoercellen die zijn gekoppeld aan cellen met formules, beschikt Excel over nog meer mogelijkheden om een werkblad interactief te maken. Zo is het mogelijk om aan een werkblad keuzerondjes, selectievakjes, tekstvakjes en dergelijke toe te voegen. Deze elementen worden ook wel besturingselementen genoemd, omdat ze de gebruiker in staat stellen Excel te "besturen". Dit artikel laat zien hoe deze elementen gebruikt kunnen worden.
Waar zijn de besturingselementen te vinden
Het tabblad Ontwikkelaars tonen
Om met controls te werken is het handig om het tabje "Ontwikkelaars" zichtbaar te maken in het lint. Dit gaat als volgt:
- Klik op de Bestand tab, dan op Opties en activeer vervolgens de tab "Lint aanpassen".
- zet het vinkje aan naast "Ontwikkelaars":
Afb. 1: Het tabblad ontwikkelaars weergeven in de opties voor Excel 2007.
- Nadat dit vinkje is geplaatst vindt u op de nieuwe tab "Ontwikkelaars"
onder de groep "Besturingselementen" een knop "Invoegen" met daarop
de diverse beschikbare elementen:
Afb. 2: De besturingselementen op de tab ontwikkelaars.
Er zijn twee groepen controls:
- Formulier controls
Dit zijn de simpelste en meest betrouwbare controls - Active-X Besturingselementen
Deze controls hebben meer mogelijkheden maar ook meer problemen.
Twee groepen elementen; het verschil
Zoals al duidelijk is geworden zijn er twee groepen elementen te onderscheiden: De elementen uit de Formulieren groep en de elementen uit de werkset besturingselementen (ActiveX besturingselementen genoemd in Excel 2007 en latere versies).
Voor en nadelen
Onderstaand staatje geeft een overzicht van voor- en nadelen van beide sets:
- Eenvoudig in het gebruik
- Te gebruiken op grafieken
- Gemakkelijk aan een macro te koppelen
- Weinig problemen
- Veel instelmogelijkheden
- Veel mogelijke events (VBA)
- Veel opmaak mogelijkheden
- Lijsten geven als resultaat de geselecteerde waarde, niet een index
- Lijsten geven een index als resultaat, niet de waarde
- Lastig om 1 macro te gebruiken voor meerdere elementen
- Soms oorzaak van problemen met bestanden
Welke te gebruiken
U zult zich afvragen welke soort de voorkeur heeft. In het algemeen is het aan te bevelen om de elementen van de formulieren set te gebruiken. Hebt u echter specifieke wensen op het gebied van de formattering die niet bereikt kunnen worden met deze set, neem dan de elementen uit de werkset besturingselementen (ActiveX elementen).
Het invoegen van de elementen
Invoegen van een besturingselement is eenvoudig: Klik het gewenste element aan (zie afbeelding 2 en 4 op deze pagina) en teken een rechthoek op het werkblad of op het grafiekblad waar u het element wilt plaatsen. U kunt ook klikken (dus niet slepen) op de plek waar u het element wilt, dan zal Excel standaard afmetingen voor dat element instellen.
Houdt tijdens het klikken op het werkblad de alt toets ingedrukt en het besturingselement wordt uitgelijnd met het cellen raster. Ook tijdens het verslepen van één van de hoeken van een element kunt u de alt toets gebruiken om de randen van het element te laten uitlijnen op het rooster. Op deze manier is het eenvoudig mogelijk om meerdere elementen te maken die netjes zijn uitgelijnd en dezelfde afmetingen hebben.
Dubbelklik op een besturingselement op een werkbalk om meerdere besturingselementen van hetzelfde type te tekenen. Klik nogmaals op dat element (of op een andere) om dit weer uit te schakelen.
Overzicht van de soorten elementen
De onderstaande tabel geeft een korte beschrijving van de beschikbare elementen en de manier waarop u die kunt gebruiken.
Gedetailleerde beschrijving van de elementen
Label
Dit is het eenvoudigste element. Gebruik dit element om uitleg toe te kunnen voegen voor één van de andere elementen.
TIP: U kunt de weergegeven tekst laten afhangen van de waarde in een cel door het tekstvak te selecteren en vervolgens in de formulebalk te klikken en een celadres in te voeren; zie afbeelding 5.
Afbeelding 5: De tekst op een label afhankelijk maken van een cel.
Groepsvak
Het groepsvak kan gebruikt worden om een duidelijke groepering aan te geven tussen elementen met een soortgelijke functie. Daarnaast heeft het groepsvak een aparte functie bij keuzerondjes van de formulieren groep (zie de paragraaf keuzerondjes). U dient eerst een groepsvak te tekenen alvorens u de te groeperen elementen toevoegt aan het groepsvak. Dit doet u door deze elementen binnen de kaders van het groepsvak te tekenen. Zorg dus dat u het groepsvak voldoende groot maakt, u kunt het altijd later nog verkleinen:
Afbeelding 6: Het groepsvak met daarin drie keuzerondjes.
Knop (opdrachtknop)
Knoppen of opdrachtknoppen worden gebruikt om een macro te starten. Zodra u een opdrachtknop van de formulieren set invoegt zal Excel vragen om een macro aan te wijzen die moet worden gestart als er op de knop wordt gedrukt (afbeelding 7). Als u de macro nog moet schrijven, dan kunt u de naam van de te schrijven macro intypen en op "Nieuw" klikken:
Afbeelding 7: Excel vraagt welke macro u wilt toekennen aan een knop.
TIP: Als u een element van de werkset besturingselementen wilt bewerken, dan moet u het werkblad in "ontwerp modus" zetten. U doet dit mat de betreffende knop op het lint, tab "Ontwikkelaars", groep "Besturingselementen". Als u het besturingelement wilt gebruiken, dan moet u de ontwerpmodus uitschakelen met diezelfde knop.
Selectievakje
Een selectievakje wordt gebruikt om de mogelijkheid te geven iets aan of uit te schakelen, bijvoorbeeld een bepaalde optie, of Ja of Nee te antwoorden. Dit besturingselement geeft u ook de mogelijkheid meerdere keuzes te maken uit een lijst van voorkeuren.
Keuzerondje
Het keuzerondje lijkt wat op het selectievakje, met als belangrijkste verschil dat er in een serie keuzerondjes nooit meer dan 1 rondje ingevuld kan zijn. Als u niets doet, dan zal Excel alle keuzerondjes op een werkblad als één groep behandelen, er kan er nooit meer dan 1 actief zijn. Wilt u meerdere sets keuzerondjes hebben op één werkblad, dan kan dit, de werkwijze verschilt echter voor de beide soorten rondjes.
Keuzerondje uit de werkbalk Formulieren
Om deze rondjes te groeperen tekent u eerst een groepsvak en plaatst vervolgens de keuzerondjes binnen het groepsvak;
zie afbeelding 8: Afbeelding 8 : keuzerondjes in groepsvakken.
Ook hoe u de keuzerondjes aan een cel moet koppelen hangt af van de soort die u hebt gebruikt. Van de formulieren set hebben alle keuzerondjes binnen een groepsvak dezelfde gekoppelde cel. De waarde in de cel wordt dan een indexgetal van het geselecteerde rondje. Let op dat u de keuzerondjes in de volgorde plaatst waarin u ze op het werkblad heeft gezet, de volgorde waarin de rondjes zijn toegevoegd bepaalt namelijk de waarde in de cel.
Om een formulier besturingselement te selecteren (bijvoorbeeld met het doel om deze te verplaatsen) klikt u er met de rechtermuisknop op. Wilt u meerdere elementen tegelijk selecteren, houdt dan de control toets ingedrukt terwijl u ze met de muis aanklikt.
Groepeer de elementen die u binnen een groepsvak heeft getekend (of die u gezamenlijk wilt kunnen verplaatsen) door ze allemaal te selecteren en vervolgens in het rechtsklik menu te kiezen voor Groeperen, Groeperen.
Keuzerondje uit de werkset besturingselementen
Het keuzerondje uit de werkset besturingselementen (ActiveX) heeft een speciale eigenschap waarmee u kunt aangeven welke keuzerondjes samenwerken. Deze eigenschap heet de "Groupname" eigenschap. Zie afbeelding 9:
Afbeelding 9: Groupname van keuzerondje instellen.
Laat u deze eigenschap ongewijzigd, dan zullen de keuzerondjes op 1 werkblad altijd als één groep werken.
Keuzerondjes van de werkset besturingselementen moeten ieder aan hun eigen cel worden gekoppeld. De waarde in de cel is dan WAAR of ONWAAR.
TIP: Toon het eigenschappen venster door op een besturingelement rechts te klikken en te kiezen voor eigenschappen. U kunt ook op de desbetreffende knop klikken van de werkbalk besturingselementen. In Excel 2007 en in latere versies kunt u onder het tabje ontwikkelaars, binnen de groep besturingselementen, op de knop "Eigenschappen" drukken.
Keuzelijst
Een keuzelijst gebruikt u wanneer u de gebruiker de mogelijkheid wil geven een optie uit een lijst te kiezen. U zou hier ook een set keuzerondjes voor kunnen gebruiken, maar die zijn lastig dynamisch te maken, bijvoorbeeld als de lijst moet worden uitgebreid. Bij een klein aantal vaste opties hebben keuzerondjes de voorkeur. Gebruik de keuzelijst als het aantal keuzes niet te groot is, bij een groter aantal heeft de keuzelijst met invoervak de voorkeur.
U kunt de lijst die moet worden getoond direct uit een reeks cellen laten halen, of de keuzes middels VBA code toevoegen. Als de lijst op een ander werkblad staat, dan moet u deze lijst eerst een bereiknaam geven. Selecteer hiertoe de lijst en druk op control+F3 (In Excel 2007 en latere versies moet u daarna nog op "Nieuw" klikken) en voer een naam in voor de lijst. Vervolgens kunt u deze naam invullen in de betreffende eigenschap van het besturingselement.
De tweede belangrijke eigenschap is de LinkedCell, deze cel zal het resultaat van de selectie ontvangen:
Afbeelding 10, Twee belangrijke opties van het ActiveX keuzelijst element.
Afbeelding 11: Twee belangrijke opties van het keuzelijst element uit de formulieren set.
Merk op, dat de formulier keuzelijst in de gekoppelde cel het indexgetal weergeeft en NIET de geselecteerde waarde. U kunt een formule zoals deze gebruiken om de gekozen waarde te achterhalen:
=INDEX(LijstVoorKeuzeLijst;C1)
Indien u de keuzelijst op Meervoudig of Uitbreiden hebt gezet, dan kan de gebruiker meer dan één keuze maken. De gekoppelde cel blijft dan altijd 0 weergeven (#N/B bij de keuzelijst uit de werkset besturingselementen) en u dient VBA code te gebruiken om de gekozen waarden uit te lezen.
Keuzelijst met invoervak
De keuzelijst met invoervak is geschikt voor de wat grotere hoeveelheden gegevens. Met dit invoervak (mits u de ActiveX variant gekozen heeft) is het ook mogelijk -middels VBA- om nieuwe waarden te laten toevoegen aan de keuzelijst indien een waarde wordt ingevoerd die niet in de lijst voorkomt. Dit kan niet met de keuzelijst uit de Formulieren set.
De twee belangrijke eigenschappen LinkedCell (Koppeling met Cel) en ListFillRange (Invoerbereik) werken op exact dezelfde manier als hierboven omschreven bij de keuzelijst. Bijkomend voordeel van de keuzelijst met invoervak is dat na de keuze alleen de gekozen waarde wordt getoond.
Schuifbalk
De schuifbalk is vooral geschikt om snel een waarde te veranderen. De gebruiker kan de schuif verslepen met de muis, naast de schuif klikken om met grotere stappen te gaan of op de pijltjes klikken om de waarde met kleine stapjes te veranderen.
Afbeelding 12: Schuifbalk met eraan gekoppelde cel
Een vertikaal geplaatste schuifbalk werkt t.o.v. een kringveld tegengesteld.: als u bij de schuifbalk op het pijltje omhoog klikt, dan wordt de waarde in de cel verlaagd. Bij het kringveld is het andersom en meer conform de verwachting van de gebruiker: pijltje omhoog betekent verhogen van de waarde. Wilt u de pijltjes "vertikaal" hebben staan, gebruik dan liever een kringveld.
Bij een schuifbalk kunt u de stapgrootte op twee manieren instellen: via de pijltjes "Stapsgewijze wijziging" of door te klikken naast de schuif, "Paginawijziging", zie afbeelding 13:
Afbeelding 13, de stapgrootte is instelbaar op twee niveaus.
Deze instellingen heten anders voor de schuifbalk van de werkset besturingselementen (ActiveX), respectievelijk "SmallChange" en "LargeChange", zie afbeelding 14:
Afbeelding 14, instellingen van de schuifbalk van de ActiveX elementen.
Schuifbalken kennen slechts gehele getallen. Het bereik ligt bij de schuifbalk van de formulieren balk van 0 to 30.000. De ActiveX schuifbalk kent een hogere maximum waarde: 666.666.
Heeft u stapjes nodig die kleiner dan 1 zijn, gebruik dan een berekening. Bijvoorbeeld, als u met en stapgrootte wilt werken van 0,5, deel dan de waarde van de schuifbalk gewoon door 2.
Kringveld
Het kringveld is een uitermate geschikt element om snel een waarde met stapjes te veranderen.
Afbeelding 15: De kringvelden.
Het instellen van de stapgrootte gaat op dezelfde manier als bij de schuifbalk, waarbij een kringveld werkt op basis van kleinere stapjes.
Tekstvak
Alleen de werkset besturingselementen (ActiveX) kent een tekstvak. Het tekstvak heeft in Excel slechts een beperkt nut, omdat u natuurlijk even goed de waarde direct in een cel kunt laten invoeren.
Wisselknop
Het laatste element dat hier wordt besproken is de wisselknop. Alleen de werkset besturingselementen (ActiveX) kent de wisselknop. Dit is een knop die een status aan kan geven maar ook een actie: U zou deze knop kunnen gebruiken om een werkblad te schakelen tussen landschap en portret instelling. Een groot nadeel van deze knop is dat de status aanduiding kan conflicteren met de actie aanduiding, vooral als de twee toestanden een verschillende naam hebben.
Stel u wilt een wisseling tussen portret en landschap mogelijk maken en u gebruikt daarvoor een wissel knop, waarbij u het opschrift aanpast nadat er op geklikt is. Geeft het opschrift van de knop de huidige status weer, of de status nadat u er op heeft gedrukt? Wat gebeurt er als u op de onderstaande knop zou drukken?
Afbeelding 16: bij de wisselknop is niet duidelijk of de tekst op de knop de huidige status weergeeft of de status die ontstaat NA drukken op de knop.
Door deze mogelijke verwarring is deze knop is in feite alleen geschikt om een aan- of uit status weer te geven. Hiervoor is een selectievakje ook een uitstekend middel. Wilt u de gebruiker de keuze geven uit twee opties, gebruik dan twee keuzerondjes, of eventueel een keuzelijst.
De interactie tussen de elementen en uw werkblad
Ieder element kan aan een cel worden gekoppeld en zo (door deze cel te gebruiken in formules) zorgen voor interactiviteit. Bij de besturingselementen van de formulieren set vindt u deze mogelijkheid door op het element rechts te klikken en te kiezen voor "Besturingselement opmaken". De verschillende elementen bieden hierbij verschillende mogelijkheden, allemaal te vinden op het tabje "Besturingselement"(zie afbeeldingen 11 en 13). Op soortgelijke wijze stelt u de opties van de elementen van de werkset besturingselementen (ActiveX) in door het eigenschappen venster te openen zoals reeds eerder beschreven.
Conclusie
Excel is een uitermate flexibel instrument om analyses te doen en wat-als scenario’s door te rekenen. U gebruikt formules met één of meer invoer cellen om verschillende situaties door te rekenen. Om het werken met verschillende waarden en/of keuze opties te vergemakkelijken kunt u besturingselementen toevoegen aan uw bestand, waarmee het kiezen van de parameters van uw model aanmerkelijk wordt vereenvoudigd voor de gebruiker van uw bestand.
Met hulp van de besturingselementen kunt u het de gebruiker ook gemakkelijk maken bij het invoeren van gegevens en er tegelijk voor zorgen dat er minder kans op invoerfouten is. Voor "dagelijks" gebruik zijn de elementen van de formulieren balk het meest geschikt. Hebt u bepaalde opties nodig die niet met deze set mogelijk zijn, dan kunt u daarnaast gebruik maken van de elementen van de werkset besturingselementen.
Vragen, suggesties en opmerkingen
Al het commentaar over deze pagina:
Commentaar van: Mellanie Djorai (1-3-2011 04:00:02) deeplink naar dit commentaar
Geachte heer, mevrouw,
Ik ben bezig met een formulierbesturingselement, maar ik wil graag dat de tekst alleen te zie is in het element en in in andere cellen. Hoe kan ik dit doen?
Mvg,
Mellanie Djorai
Commentaar van: Jan Karel Pieterse (1-3-2011 05:26:24) deeplink naar dit commentaar
Hallo Mellanie,
Ik begrijp denk ik de vraag niet helemaal: Waar zou de tekst dan NIET zichtbaar moeten zijn?
Commentaar van: Hanneke (21-9-2011 02:49:43) deeplink naar dit commentaar
Ik heb een keuzelijst gemaakt en wil deze kopieren naar alle volgende regels/cellen in mijn excellijst. De koppeling met de cel wordt meegekopieerd en blijft verwijzen naar de cel waarmee oorspronkelijk gekoppeld is. Dit moet echter de volgende onderliggende cel zijn (dus van A4 naar A5, A5 naar A6 enz.) Nu ben ik handmatig per keuzelijst de koppeling met cel aan het wijzigen. met een lijst van bijna 300 regels is dit nogal tijdsintensief. Hoe kan ik de keuzelijst kopieren dat de koppeling met cel ook wijzigt?
Met vriendelijke groet,
Hanneke
Commentaar van: Jan Karel Pieterse (22-9-2011 00:18:12) deeplink naar dit commentaar
Hallo Hanneke,
Daar kan je het beste een macrootje voor gebruiken.
Maar 300 keuzelijsten op een werkblad werkt niet erg goed, kan je niet beter gebruik maken van gegevens validatie met de lijst optie? Dan hoeft de gebruiker ook niet steeds met de muis op de keuzelijsten te klikken, maar kan hij/zij gewoon de pijltjes toetsen gebruiken.
Commentaar van: Hakan Erol (25-10-2011 06:03:34) deeplink naar dit commentaar
Beste
Ik zou graag het verschil willen weten tussen veldcodes en Activex-Besturingselementen in MS Word.. Komen deze 2 opties niet op hetzelfde neer??
Wachtend op een dringende antwoord
MvG
Hakan Erol
Commentaar van: Jan Karel Pieterse (26-10-2011 03:02:35) deeplink naar dit commentaar
Hallo Hakan,
Helaas weet ik niet zo veel van de Word formulier elementen!
Commentaar van: Marcel (11-9-2012 09:43:42) deeplink naar dit commentaar
Hallo,
ik wil graag afbeeldingen koppelen aan de keuze in een combo box. Kan iemand mij vertellen hoe ik dit in excel 2010 aan moet pakken?
Alvast bedankt.
Groeten Marcel
Commentaar van: Jan Karel Pieterse (11-9-2012 09:47:22) deeplink naar dit commentaar
Hallo Marcel,
Kijk eens of dit artikel helpt:
https://jkp-ads.com/Articles/ShowPicture00NL.asp
Commentaar van: John (22-11-2012 12:20:41) deeplink naar dit commentaar
Hallo,
is het ook mogelijk om deze elementen te gebruiken in word, ik heb ze daar namelijk ingezet in een formulier, maar blijkbaar werken de keuzerondjes allemaal samen ookal heb ik ze onder verschillende tabellen gezet, eenmaal de actieve inhoude ingeschakeld vallen de tabellen uit elkaar en kun je niet afzonderlijk per tabel één keuzerondje invullen..enig idee?
gegroet
John
Commentaar van: Jan Karel Pieterse (22-11-2012 15:02:09) deeplink naar dit commentaar
Hoi John,
Bij de activex besturingselementen moet je de option buttons die samen moeten werken voorzien van dezelfde GroupName eigenschap. Form controls moet je in een frame plaatsen om ze te laten samenwerken.
Commentaar van: Edward (5-12-2012 12:16:57) deeplink naar dit commentaar
Beste,
Ik heb als voorbeeld 3 selectievakjes. Bij aanvinken komt er een tekst te staan in een bepaalde cel (met macro).
Vraag: Hoe krijg ik de teksten (wanneer ik alle vakjes heb aangevinkt) naast elkaar in die ene cel (dus niet overschreven wordt, maar toegevoegd wordt).
Groet,
Edward
Commentaar van: Jan Karel Pieterse (5-12-2012 12:55:05) deeplink naar dit commentaar
Hoi Edward,
Dat kan ook zonder macro, met formule, als je de selectievakjes aan cellen koppelt. Stel je hebt ze aan A1, A2 en A3 gekoppeld, dan kan je een formule als deze gebruiken om de tekst weer te geven:
Commentaar van: Bart (29-12-2012 13:03:49) deeplink naar dit commentaar
Goedemiddag,
Ik probeer in excel 2007 met besturingselementen te werken. Mijn probleem is dat ik wil dat de vinkjes opgeteld worden bij mekaar. het is voor een lijst die ik wil bijhouden.
Als ik nu op een vinkje druk staat er waar of onwaar ik zou graag willen dat als ik een vinkje aandruk er dan 1 komt te staan en als ik meer vinkjes stuur dan 2 of 3 enz.
Ik hoop dat u me hierbij kan helpen...?
Met vriendelijke groet,
Bart van der Weijden
Commentaar van: Jan Karel Pieterse (29-12-2012 16:53:16) deeplink naar dit commentaar
Hallo Bart,
Je zou met SOM.ALS kunnen werken en het aantal WAAR waarden kunnen tellen in de aan de vinkjes verbonden cellen.
Commentaar van: Wim de Moor (17-9-2013 19:47:20) deeplink naar dit commentaar
In een werkblad heb ik enkele besturingselementen gezet. Hoe kan ik deze verwijderen???
Commentaar van: Jan Karel Pieterse (18-9-2013 10:19:02) deeplink naar dit commentaar
Hallo Wim,
Als je op het tabblad ontwikkelaar design modus inschakelt kan je de controls selecteren en via de delete knop verwijderen.
Commentaar van: W. Th. de Moor (18-9-2013 14:07:47) deeplink naar dit commentaar
Hoi Jan Karel
Bedankt, voor de snelle reactie, het is gelukt, weer wat geleerd
Wim de Moor
Commentaar van: jos melsen (29-9-2013 10:04:20) deeplink naar dit commentaar
kan ik in excel 2007 met macro 2 of meer niet aaneen gesloten geselecteerde cellen tegelijk verplaatsen?
Commentaar van: Jan Karel Pieterse (30-9-2013 10:17:20) deeplink naar dit commentaar
Hallo Jos,
Niet tegelijk, maar wel na elkaar natuurlijk. Als het toch in een macrootje staat maakt het niet echt uit of dat in 1 of in meer stappen gaat, toch?
Commentaar van: Jan Fransen (16-1-2014 16:29:03) deeplink naar dit commentaar
Bij het maken van een userform kies ik ook een 'Keuzelijst' als besturingselement. In het Eigenschappen-venster zou dan ook de 'Linked Cell' -tag moeten staan. Maar die is onzichtbaar.
Hoe kan dat? Ik kan nu niet de keuzelijst 'vullen' met de te kiezen mogelijkheden.
Bij voorbaat dank.
Commentaar van: Jan Karel Pieterse (16-1-2014 17:38:34) deeplink naar dit commentaar
Hallo Jan,
Het is ook beter die linkedcell eigenschap niet te gebruiken op een userform, beter is het om event code te gebruiken die de waarde van de control direct naar de juiste lokatie schrijft.
Commentaar van: Arnold van der Staak (2-3-2014 11:57:19) deeplink naar dit commentaar
In het besturingslint van excel heb ik een aantal formulierbesturingselementen geplaatst. Nu blijven zij Grijs en blijkt dat ik ze niet kan gebruiken. Hoe kan ik deze icoontjes activeren zodat ze wel bruikbaar zijn en ook werken.
Ik hoop dat jullie mij aan kunnen geven hoe ik dat doe of waar ik kan vinden hoe ik ze activeer.
Vriendelijke groeten,
Arnold
Commentaar van: Jan Karel Pieterse (3-3-2014 07:15:10) deeplink naar dit commentaar
Hallo Arnold,
Zijn de controls op het werkblad "grijs" of in het lint?
Commentaar van: Hans (11-2-2015 08:01:13) deeplink naar dit commentaar
Hallo, een vraagje..
Ik gebruik in een cel een formulierbesturingselement, nl.
een keuzelijst met invoervak.
Vraag : Ik wil dit besturingselement verwijderen. Hoe pak je dit aan?
Bedankt en groeten
Hans
Commentaar van: Jan Karel Pieterse (11-2-2015 10:18:16) deeplink naar dit commentaar
Hoi Hans,
Je kan rechts-klikken op dat besturingselement en dan knippen kiezen. Je kunt ook control+klikken en dan op de delete knop drukken.
Commentaar van: Paula Verstelle (20-3-2015 16:43:28) deeplink naar dit commentaar
Ik heb een keuzelijst gemaakt en op meervoudig gezet. Ik moet nu een VBA code gebruiken om het uit te lezen. Ik zou graag willen dat de gekozen waarden allemaal in de gekoppelde cel worden weergegeven. Hoe doe ik dat? Kunt u een vb geven van de vba code?
Dus bv Lijst: appel, peer, banaan. Appel en banaan worden aangeklikt. Ik wil dan in de gekoppelde cel zien: appel,banaan.
Met vriendelijke groeten
Commentaar van: Jan Karel Pieterse (20-3-2015 16:54:45) deeplink naar dit commentaar
Hallo Paula,
Als het gaat om een listbox van de eerste rij elementen, wijs dan een macro toe aan de listbox:
[code]Sub ListBox1_Change()
Dim sValues As String
Dim lCT As Long
With ActiveSheet.ListBoxes(Application.Caller)
For lCT = 1 To .ListCount
If .Selected(lCT) Then
sValues = sValues & .List(lCT) & ", "
End If
Next
Range(.LinkedCell).Value = sValues
End With
End Sub
[/code]
Commentaar van: WILLEMS (19-10-2015 22:03:59) deeplink naar dit commentaar
Mevrouw, Mijnheer,
Ik wil een een macro automatisch laten uitvoeren in EXCEL, wanneer er in een bepaalde cel een waarde wordt ingeschreven. Als dit zou kunnen, hoe moet dit dan geprogrammeerd worden.
Dank bij voorbaat
Marcel
Commentaar van: Jan Karel Pieterse (20-10-2015 10:07:15) deeplink naar dit commentaar
Hallo Marcel,
Dat kan zeker.
Rechts-click op het tabblad in kwestie en kies "Programmacode weergeven".
Bovenaan het code-venster dat opent zie je twee keuzelijsten. Kies uit de linker keuzelijst "Worksheet" en uit de rechter "Change".
Je krijgt:
End Sub
BEwerk dit door de naam van je macro ertussen te zetten:
NaamVanJouwMacro
End Sub
Om de code alleen te laten lopen als er in kolom A iets is ingevoerd:
If Intersect(Target,Range("A:A")) is Nothing Then Exit Sub
NaamVanJouwMacro
End Sub
Commentaar van: Christian (18-4-2016 12:40:52) deeplink naar dit commentaar
Ik heb een keuzelijst met invoervak via besturingselement gekoppeld aan een tabel met namen, adressen enz...
Ik heb nu deze keuzelijst niet langer nodig (ik haal de gegevens nu met andere formules uit deze tabel) maar bij het opslaan van het bestand zie ik dat deze keuzelijst er thans 5x onder elkaar op staat en dat ik er slechts één van kan verwijderen door erop rechts te klikken en knippen te selecteren. Ik krijg de 4 andere vakjes er gewoon niet meer af (ook al delete ik de gegevens van het besturingselement)
Hoe krijg ik deze vakjes definitief weg?
Thanks
Commentaar van: Jan Karel Pieterse (18-4-2016 14:50:07) deeplink naar dit commentaar
Hoi Christian,
Klik op de home tab (Start) en klik op de verrekijker. Selecteer de onderste optie. Nu kan je alle objecten op je blad zien en als je op eentje in de lijst klikt kan je die verwijderen.
Commentaar van: Christian (18-4-2016 15:19:11) deeplink naar dit commentaar
Ik werk met Excel op een Mac.
Ik zie geen verrekijker onder het tabblad 'Start'
Probleem heb ik intussen opgelost door het gehele tabblad te vervangen door een oudere versie en er de nieuwe formules in over te brengen.
Commentaar van: Jan Karel Pieterse (18-4-2016 17:42:09) deeplink naar dit commentaar
Hoi Christian,
Ai, Excel op een Mac. Toch een tweederangs besturingssysteem als je met Excel echt wil werken. :-)
Commentaar van: Cas (25-1-2017 21:50:34) deeplink naar dit commentaar
Hallo.
Graag antwoord of het mogelijk is om 2 macro's te verbinden aan één selectievakje? Zo ja, hoe?
Commentaar van: Jan Karel Pieterse (26-1-2017 09:51:33) deeplink naar dit commentaar
Hoi Cas,
Ja, dat is heel eenvoudig. Verbind de eerste macro aan het selectievakje, laten we zeggen dat die EersteMacro heet. ROep de tweede (TweedeMacro) aan vanuit de eerste:
'Hier de code van je eerste macro
TweedeMacro
End Sub
Sub TweedeMacro()
'De code van je tweede macro
End Sub
Commentaar van: Ruud (20-3-2017 17:58:26) deeplink naar dit commentaar
Beste Jan karel,
Ik heb net een besturtingselement toegevoegd op basis van een vragenlijst (en hier aan gekoppeld een waarde per antwoord); bijvoorbeeld: antwoord geen = 1, antwoord zeer groot = 4. Deze uitkomsten wil ik direct doorlinken naar een grafiek: hoe kan ik dit toepassen?
Ben erg benieuwd of u mij hierbij kan helpen.
Groeten,
Ruud
Commentaar van: Jan Karel Pieterse (21-3-2017 09:49:43) deeplink naar dit commentaar
Hallo Ruud,
Je kan de besturingselementen aan een cel koppelen zodat hun waarde in die cel verschijnt. Daar kan je dan eenvoudig een grafiek van maken uiteraard.
Commentaar van: Roel (2-6-2017 12:53:00) deeplink naar dit commentaar
Hallo Ruud,
Ik heb een Formulier gemaakt waarvan de uitkomsten worden weergegeven in een database. In dit formulier wil ik nu graag Radiobuttons gebruiken om de optie weer te geven tussen: "Afslag" en "Opbod+Afslag" (gaat over de prijsopbouw van objecten die geveild worden op een vastgoedveiling)
Ik heb de radiobuttons toegevoegd en de namen aangepast naar "Afslag" en "Opbod+Afslag", echter wordt in de database nu waar en onwaar weergegeven.
In plaats van Waar of Onwaar wil ik hier ook graag "Afslag" of "Opbod+Afslag" weergeven.
Hoe is dit mogelijk/ welke vba codes gebruik ik hiervoor?
Ik hoop dat u me hiermee verder kan helpen.
Mvg, Roel
Commentaar van: Jan Karel Pieterse (3-6-2017 16:40:17) deeplink naar dit commentaar
Hoi Roel,
Je kunt die selectievakjes aan een cel koppelen en dan met een ALS functie de waarde an die cel gebruiken in een andere cel om jouw tekstwaarde weer te geven.
Commentaar van: Matthijs (12-7-2017 17:07:48) deeplink naar dit commentaar
Beste,
Ik wil een opdrachtknop invoegen en hier een marco aankoppelen met als opdracht het laten verschijnen van een tekstvak.
Hoe moet ik deze macro aanmaken ?
Commentaar van: Jan Karel Pieterse (13-7-2017 11:34:16) deeplink naar dit commentaar
Hoi Matthijs,
ALs je de knop invoegt dan krijg je automatisch de vraag welke macro eraan gekoppeld moet worden. Je kan dan op "Nieuw" klikken en dan zal Excel een macro voor je invoegen die je vervolgens kunt gaan voorzien van de juiste programmacode.
Commentaar van: Paul (27-9-2017 09:42:20) deeplink naar dit commentaar
Ik heb keuzevakjes in mijn werkblad geplaatst, gekoppeld aan een cel. Maar nu stel ik vast dat de koppeling wel stand houd, maar de plaats van het keuzevakje in die cel ligt blijkbaar niet vast. Als andere gebruikers het blad bekeken hebben, dan staan de vakjes niet meer in de betreffende cellen. hoe kan ik het keuzevakje in de cellen houden?
Commentaar van: Jan Karel Pieterse (27-9-2017 10:30:30) deeplink naar dit commentaar
Hoi Paul,
Controls hebben inderdaad de vervelende neiging niet op hun plaats te blijven. De enige work-around die ik ken is op de 1 of andere manier vastleggen waar ze horen te staan en ze bij openen van het bestand op hun plaats zetten.
Commentaar van: Tony (8-11-2017 08:43:51) deeplink naar dit commentaar
betreft keuzelijst met invoervak
Beste,
Kan een keuzelijst enkel gelinkt worden met één bepaalde cel of kan je, op moment van gebruik, zelf bepalen waar die gegevens moeten komen ?
Waarschijnlijk via een event control.. maar vind het niet echt.
mvg
Tony
Commentaar van: Jan Karel Pieterse (9-11-2017 08:49:30) deeplink naar dit commentaar
Hoi Tony,
De keuzelijst kent twee "koppelingen". De ene bevat de brongegevens voor de lijst zelf, de andere is de cel waar de gekozen waarde verschijnt. Beide werken twee kanten op: de lijst werkt de cel bij en de cel werkt ook de keuzelijst bij. In geval van de formulieren keuzelijst geeft de resultaat-cel het volgnummer van het gekozen item en heb je VERT.ZOEKEN nodig om die waarde op te halen. Bij de ActiveX keuzelijst krijg je direct de gekozen waarde in de cel en heb je VERGELIJKEN nodig als je moet weten welk element uit de lijst was gekozen kwa volgorde.
Commentaar van: Tony (9-11-2017 17:08:38) deeplink naar dit commentaar
Hey Jan,
Jouw uitleg heeft me al een schoon inzicht gegeven in het geheel, dat is zeker. Waarvoor dank.
Mijn vraag (probleem/uitdaging) is in feite het manipuleren van het doel-cel in de Activex Keuzelijst met invoerbox. Ttz. .. bijvoorbeeld - Eerst de selectie van de Keuzelijst laten wegschrijven in doel-cel A1, dan in A2, dan in A3, enz....
mvg
Tony
Commentaar van: Jan Karel Pieterse (9-11-2017 17:45:08) deeplink naar dit commentaar
Hoi Tony,
Dat zou je middels het Worksheet_Change event kunnen regelen. Welke soort keuzelijst heb je gebruikt?
Commentaar van: Tony (9-11-2017 17:49:03) deeplink naar dit commentaar
een ActiveX-besturingselement - keuzelijst met invoervak
Commentaar van: Jan Karel Pieterse (10-11-2017 13:52:34) deeplink naar dit commentaar
Hoi Tony,
Stel Excel in op ontwikkelmodus (ontwikkelaars tab) en dubbel-klik op de activeX control. Ervan uitgaande dat de control zich bovenop de cel bevindt die bewerkt dient te worden. De VBA editor opent. Plak deze code erin (pas de naam van je control aan in de onderstaande code):
Dim mbNoEvent As Boolean
Private Sub ComboBox1_Change()
If mbNoEvent Then Exit Sub
ComboBox1.TopLeftCell.Value = ComboBox1.Value
ComboBox1.Top = ComboBox1.TopLeftCell.Offset(1).Top
mbNoEvent = True
ComboBox1.ListIndex = -1
mbNoEvent = False
End Sub
Commentaar van: Job (14-11-2017 15:52:48) deeplink naar dit commentaar
Dag,
Al tijden ben ik op zoek naar hoe ik het FONT van de tekst naast het keuzerondje van Excel kan veranderen.
In mijn sheet staan er duidelijk twee verschillende fonts, maar hoe kan ik die wijzigen? (Excel 2013)
Commentaar van: Jan Karel Pieterse (15-11-2017 09:08:06) deeplink naar dit commentaar
Hoi Job,
Dit kan alleen met de keuzerondjes van de ActiveX groep.
Commentaar van: Robby (13-2-2018 15:08:37) deeplink naar dit commentaar
Ik wil met keuzelijst met invoervak een cel kunnen selecteren waarin er een hyperlink staat om deze automatisch te openen.
Commentaar van: Jan Karel Pieterse (13-2-2018 17:33:49) deeplink naar dit commentaar
Hoi Robby,
Ik begrijp niet precies wat je hiermee bedoelt, kan je iets meer info geven?
Commentaar van: Robby (14-2-2018 07:53:44) deeplink naar dit commentaar
Ik heb in excel een lijst met hyperlinks die allemaal een nummer hebben. Ik zou graag via een zoekfunctie op nummer de hyperlink kunnen openen of naar de cel gaan waarde hyperlink staat (deze staan allen in kolom A). Bijkomend zou ik oog graag als ik een word van de naam van de hyperlink intik, een lijst krijgen van alle cellen waar dit woord in voorkomt (deze staan in kolom c)
Commentaar van: Jan Karel Pieterse (14-2-2018 15:29:54) deeplink naar dit commentaar
Hoi Robby,
Zou je dat niet kunnen regelen via de normale filter functionaliteit?
Commentaar van: robby (15-2-2018 13:06:10) deeplink naar dit commentaar
Dat zou kunnen maar ik dacht dat het ook kon met een keuzelijst met invoervak. Heb dit al geprobeerd met de zoeken, maar dan neemt hij de hyperlink niet over, alleen maar de inhoud.
Commentaar van: Jan Karel Pieterse (19-2-2018 10:16:55) deeplink naar dit commentaar
Hoi Robby,
Kan wel, maar alleen middels een macro. Plaats je vraag anders eens op www.eileenslounge.com, daar wordt je zeker geholpen!
Commentaar van: Karel (28-2-2018 23:00:30) deeplink naar dit commentaar
Op mijn pc thuis is bij VBA (Excel) bij het menu Extra - Extra besturingselementen het element "Microsoft Date en Time Picker Control" niet te vinden, op het werk heb ik die wel.
Ik gebruik Excel 2013, is hij daar niet beschikbaar of is er iets anders mis?
Commentaar van: Jan Karel Pieterse (1-3-2018 08:45:45) deeplink naar dit commentaar
Hoi Karel,
Kan inderdaad zijn dat deze niet op je systeem staat want die is verwijderd van Office. Er staat in dit artikel een verwijzing naar een goed alternatief:
https://jkp-ads.com/articles/treeview.asp
Zoek naar het kopje "Other controls".
Commentaar van: Karel (1-3-2018 19:00:42) deeplink naar dit commentaar
Jan Karel,
Dank. Dan heeft upgraden naar Office2016 dus ook geen oplossing.
Is een heel verhaal en lijkt nog niet zo simpel, maar ik ga er later eens rustig voor zitten. Toch vreemd dat MS zelf zo'n mooie functie weggehaald heeft om in een formulier datum en tijd te kiezen.
Nogmaals dank voor je reactie.
Groet,
Karel
Commentaar van: Christof (6-6-2018 16:17:38) deeplink naar dit commentaar
Beste ik heb 6 selectie vakjes aangemaakt en elk een aparte cel toegewezen. Nu wil een soort van voorrangsregels inbouwen. Bv als ik vakje één en twee aanduid dan mag drie niet aangevinkt kunnen worden als dit toch aangegevinkt was dan moet dit automatisch uitgevinkt worden iemand een idee hoe ik dit kan fixen? alvast bedankt
Groetjes Christof
Commentaar van: Jan Karel Pieterse (6-6-2018 21:59:30) deeplink naar dit commentaar
Hoi Christof,
Kan je dan niet beter (combinaties) van keuzerondjes gebruiken?
Commentaar van: Mensink (15-1-2020 17:41:00) deeplink naar dit commentaar
GoedenmiddaG!
Het is mogelijk om (zowel in Excel als ActiveX) meerdere keuzes te selecteren in een keuzelijst. Kun je dat ook automatisch uitvoeren naar een andere cel door LinkedCell (Koppeling met Cel)? Of kan dat alleen wanneer er gebruik gemaakt wordt van een enkele keuzemogelijkheid? Alvast dank!
Vriendelijke groet,
Jaap
Commentaar van: Jan Karel Pieterse (17-1-2020 12:35:00) deeplink naar dit commentaar
Hoi Jaap,
Linked cell kan maar 1 cel zijn en er kan slechts 1 waarde in terecht komen. Dat gezegd hebbende, je kunt wel een macro toewijzen aan een forms listbox die vervolgens alle items afloopt en checkt welke geselecteerd zijn en daar dan vervolgens iets mee doen:
Dim Ct As Long
With ActiveSheet.ListBoxes(Application.Caller)
For Ct = 1 To .ListCount
If .Selected(Ct) Then
MsgBox .List(Ct)
End If
Next
End With
End Sub
Commentaar van: Kees Baltus (9-3-2020 22:43:00) deeplink naar dit commentaar
Ik heb drie keuzerondjes in een groepsvak in Excel en deze gekoppeld aan macros; werkt goed. (Helaas kan ik de naam niet wijzigen omdat Eigenschap alleen info geeft over het werkblad, niet over knoppen etc.)
Bij het opstarten van het programma wil ik dat "Keuzerondje 2" geactiveerd wordt (dus een regel in Sub workbook_open()).
In VB zou ik dat doen met Setfocus, maar hoe doe ik dat in VBA?
Commentaar van: Jan Karel Pieterse (10-3-2020 10:26:00) deeplink naar dit commentaar
Hoi Kees,
Als je je blad in ontwerpmodus zet kan je een control selecteren en dan bij de eigenschappen van die control.
Deze code activeert OptionButton3:
Commentaar van: tasha (17-6-2021 19:53:00) deeplink naar dit commentaar
Hoe koppel ik het keuzerondje aan een cel
Commentaar van: Jan Karel Pieterse (18-6-2021 11:34:00) deeplink naar dit commentaar
Hoi Tasha,
Rechts-klik op het keuzerondje en kies Eigenschappen.
Is het een ActiveX keuzerondje, zet dan de sheet in ontwikkelmodus (knop op tabblad ontwikkelaars) en klik op de eigenschappen knop en klik dan op het keuzerondje.
Commentaar van: Marcel Eggen (21-5-2023 10:27:00) deeplink naar dit commentaar
Ik heb recent in een Dashboard een tweetal ActiveX labels toegepast waarmee ik via MouseMove in staat ben om een shape te tonen/verbergen zodra ik met de muis over het label ga. In het begin werkte dat prima maar opeens geeft het bestand een fout en zegt Excel dat het bestand gerepareerd moet worden. Opstarten doet het bestand nu niet meer. Ik heb een oudere versie moeten terugzetten en de labels maar verwijderd. Lijkt me een voorbeeld van problemen met het gebruik van ActiveX objecten. Valt hier iets aan te doen ?
Commentaar van: Jan Karel Pieterse (21-5-2023 11:23:00) deeplink naar dit commentaar
Hoi Marcel,
Wat ik wel eens doe is een hyperlink toevoegen aan een gewone shape, of zelfs gewoon aan een cel. Ik vul dan een tekst in bij de scherminfo. Zie dit artikel: https://jkp-ads.com/Articles/ExcelDataEntryWithValidationHelpnl.asp
Commentaar van: Marcel Eggen (22-5-2023 07:27:00) deeplink naar dit commentaar
Hoi Jan Karel,
Dank voor deze tip. Heb ik nooit eerder gebruikt of aan gedacht om te gebruiken. Ga ik gewoon eens uitproberen.
Commentaar van: Hans de Jong (18-8-2023 15:45:00) deeplink naar dit commentaar
Ik wil een activeX keuzelijst voor de keuze JA/NEE koppelen aan een macro die een kolom filtert op waarde 1 bij JA en op 2 bij NEE. Ik krijg steeds een foutmelding 1004: methode autofilter klasse range is mislukt. Heb je suggesties?
Ik weet dat je een formulier besturingselement makkelijker kunt koppelen aan een macro maar die verbergt niet als ik cel rijen verberg door het filter te activeren.
Commentaar van: Jan Karel Pieterse (18-8-2023 15:49:00) deeplink naar dit commentaar
Hallo Hans,
Ik denk dat je deze vraag beter hier kunt stellen: https://excelexperts.nl/forum/index.php
Heeft u vragen, suggesties of opmerkingen? Gebruik dan dit formulier.
Mocht uw vraag niet direct relevant zijn voor deze pagina, maar een algemene Excel vraag betreffen, dan adviseer ik om deze hier te stellen: excelexperts.nl/forum/index.php.