IT Fjernundervisning

Forms

Beskrivelse

Userforms

Userforms er et værktøj til at oprette mere avancerede brugerdialoger. En userform kunne f.eks. se sådan her ud:

Excel VBA kursus - VBA userforms - fjernundervisning

Og bruges ofte til at give brugeren mulighed for at indtaste startværdier til en model. Der ligger en smule VBA kode bag sådan en userform, der sørger for at informationerne i userformen lander det rigtige sted i regnearket/modellen.

Opret en userform

For at oprette en userform skal du skifte til VBA editoren, højreklikke på VBAProject og vælge Insert | Userform. Så kommer det til at se sådan her ud i højre side af editoren

Excel VBA kursus - VBA userform toolbox - fjernundervisning

Toolboxen indeholder forskellige elementer, der kan sættes på formen - elementerne kaldes også kontrolelementer.

Læg osgå mærke til properties vinduet nu har fået mere indhold:

Excel VBA kursus - userform egenskaber (properties) - fjernundervisning

Det er vigtigt, at du med det samme sørger for at din userform får et navn, som skrives i (Name) boksen. Ud over det kan du her styre farver, fonte mm. omkring userformen

Vis og skjul userformen

En userform er et objekt!

Og det objekt har mange metoder og egenskaber - en del af egenskaberne kan du se i Properties vinduet - og to af metoderne bruges til at vise og skjule formen:

UserForm1.Show og UserForm1.Hide    (erstat UserForm1 med det navn du har tildelt din userform)

Vil du helt af med userformen - så den er blank næste gang du kalder .Show metoden kan du skrive i stedet for .Hide

Unload Me

Husk, at der findes hændelses proceduerer til regnearket, der kan bruges, hvis man vil have ting til at ske når regnearket åbnes.

 


Øvelse

Inden vi går i gang med at sætte kontrolelementer på userformen skal vi lige prøve at oprette en userform

  1. Opret et regneark, der hedder "Userform øvelse.xls"
  2. Opret en tom userform (husk at navngive den)
  3. Sørg for at userformen kommer frem når regnearket åbnes
  4. Lav en knap i regnearket der kan få userformen til at komme frem

Send regnearket til mig.


Løsning

Se mit løsningsforslag her.

Jeg startede (efter at have oprettet et nyt regneark og trykket Alt+F11) med at højreklikke på VBA Projekt og vælge Insert userform. Når userforen dukker op kan man i egenskabsvinduet nederst til venstre give userformen navn og overskrift (og en masse andre sjove ting...)

Excel VBA kursus - Userform øvelse

Dernæst dobbeltklikkede jeg på ThisWorkbook og indsatte denne snut kode, der sørger for at userformen bliver vist når regnearket åbner (husk at man får fat i hændelsesproceduren gennem de to dropdown boxe i toppen af skærmen).

Private Sub Workbook_Open()     ThorsUserform.Show End Sub

Og til sidst højreklikkede jeg igen på VBA Projekt  og valgte Insert module. I modulet indsatte jeg denne snut kode

Sub VisUserform()     ThorsUserform.Show End Sub

Og til sidst indsatte jeg en knap i regnearket.

Brug for hjælp til VBA, VSTO eller SQL?

Scient Data tilbyder professionel IT-konsulentbistand

Kontakt Scient Data →