Her lærer du hvordan du legger til kontroller i en VBA UserForm, gir dem meningsfulle navn og justerer noen av egenskapene deres. Før du kan gjøre noen av disse tingene, må du ha et brukerskjema, som du får ved å velge Sett inn → Brukerskjema i VBE. Når du legger til et brukerskjema, sørg for at riktig prosjekt er valgt i prosjektvinduet (hvis mer enn ett prosjekt er tilgjengelig).
Legger til kontroller
Merkelig nok har ikke VBE menykommandoer som lar deg legge til kontroller i en dialogboks. Du må bruke den flytende verktøykassen for å legge til kontroller. Normalt dukker verktøykassen opp automatisk når du aktiverer et brukerskjema i VBE. Hvis den ikke gjør det, kan du vise verktøykassen ved å velge Vis → Verktøykasse.
Følg med for å legge til en kontroll i brukerskjemaet:
Klikk på Verktøykasse-verktøyet som tilsvarer kontrollen du vil legge til.
Klikk i brukerskjemaet, og dra for å størrelse og posisjonere kontrollen.
Alternativt kan du ganske enkelt dra en kontroll fra verktøykassen til brukerskjemaet for å lage en kontroll med standarddimensjonene. Her er et brukerskjema som inneholder noen få kontroller: To alternativknapper (inne i en ramme), en kombinasjonsboks, en avmerkingsboks, en rullelinje og en kommandoknapp.
Et brukerskjema i VBE, med noen få kontroller lagt til.
Et brukerskjema kan inneholde vertikale og horisontale rutenettlinjer, som hjelper til med å justere kontrollene du legger til. Når du legger til eller flytter en kontroll, festes den til rutenettet. Hvis du ikke liker denne funksjonen, kan du slå av rutenettene ved å følge disse trinnene:
Velg Verktøy → Alternativer i VBE.
I dialogboksen Alternativer velger du kategorien Generelt.
Angi ønskede alternativer i delen Form Grid Settings.
Vi introduserer kontrollegenskaper
Hver kontroll du legger til i et UserForm har egenskaper som bestemmer hvordan kontrollen ser ut og oppfører seg. Du kan endre egenskapene til en kontroll på følgende to ganger:
-
På designtidspunktet - når du utformer UserForm. Du gjør det manuelt ved å bruke vinduet Egenskaper.
-
På kjøretid - mens makroen din kjører. Det gjør du ved å skrive VBA-kode. Endringer som gjøres under kjøring er alltid midlertidige; de er laget til kopien av dialogboksen du viser, ikke til det faktiske UserForm-objektet du designet.
Når du legger til en kontroll i et UserForm, må du nesten alltid gjøre noen design-tidsjusteringer av egenskapene. Du gjør disse endringene i vinduet Egenskaper. (For å vise vinduet Egenskaper, trykk F4.) Her er Egenskaper-vinduet, som viser egenskaper for objektet som er valgt i brukerskjemaet – som tilfeldigvis er en kontrollboks.
Bruk Egenskaper-vinduet til å foreta designtidsendringer i en kontrolls egenskaper.
For å endre en kontrolls egenskaper under kjøring, må du skrive VBA-kode. For eksempel vil du kanskje skjule en bestemt kontroll når brukeren klikker på en avmerkingsboks. I et slikt tilfelle skriver du kode for å endre kontrollens Visible-egenskap.
Hver kontroll har sitt eget sett med egenskaper. Alle kontroller har imidlertid noen vanlige egenskaper, som navn, bredde og høyde. Her er noen av de vanlige egenskapene som er tilgjengelige for mange kontroller.
Eiendom |
Hva det påvirker |
Akselerator |
Bokstaven er understreket i kontrollens bildetekst. Brukeren
trykker på denne tasten sammen med Alt-tasten for å velge
kontrollen. |
Auto størrelse |
Hvis True, endrer kontrollen seg selv automatisk basert på
teksten i bildeteksten. |
Baksidefarge |
Kontrollens bakgrunnsfarge. |
Baksidestil |
Bakgrunnsstilen (gjennomsiktig eller ugjennomsiktig). |
Bildetekst |
Teksten som vises på kontrollen. |
Venstre og Topp |
Verdier som bestemmer kontrollens posisjon. |
Navn |
Kontrollens navn. Som standard er en kontrolls navn
basert på kontrolltypen. Du kan endre navnet til et hvilket som helst gyldig
navn, men hver kontrolls navn må være unikt i
dialogboksen. |
Bilde |
Et grafikkbilde å vise. Bildet kan være fra en grafikkfil
, eller du kan velge egenskapen Bilde og lime inn et bilde
du kopierte til utklippstavlen. |
Verdi |
Kontrollens verdi. |
Synlig |
Hvis False, er kontrollen skjult. |
Bredde og Høyde |
Verdier som bestemmer kontrollens bredde og
høyde. |
Når du velger en kontroll, vises egenskapene til den kontrollen i vinduet Egenskaper. For å endre en egenskap, velg den i Egenskaper-vinduet og foreta endringen. Noen eiendommer gir deg litt hjelp. For eksempel, hvis du trenger å endre TextAlign-egenskapen, viser Egenskaper-vinduet en rullegardinliste som inneholder alle gyldige egenskapsverdier.
Endre noen egenskaper ved å velge fra en rullegardinliste med gyldige egenskapsverdier.