Excel VBA

Det har været rart at man selv kan bestemme tempoet og hvornår man laver opgaverne. Man kan også få hjælp til at få løst opgaverne anderledes, samt få hjælp til andre opgaver. Jeg synes også det har været sjovt at man ikke får det hele serveret, men skal søge lidt information selv.

Laila Jensen, Statens Serum Institut

Excel VBA

Det har været et supergodt kursus, hvor man ikke bare fik resultaterne leveret, der skulle tænkes meget !

Materialet har været rigtig godt, og det er da utroligt så tit der har været hjælp at hente, har set at underviseren var online, også om aftenen og tidlig morgen, rigtig rart, og der kom lynhurtigt respons tilbage på div. spørgsmål og besvarelser.

Helt sikkertet kursus og kursusform, jeg vil anbefale til andre.

Margit Solveig Kristoffersen, Socialpædagogerne Sydjylland

Excel VBA

Hurtig response på opgaver.

Udfordrende opgaver.

Flemming Pedersen, Semco Maritime

Excel VBA

Super form for kursus, har været perfekt at jeg kunne koncentrere mig om kurset når jeg havde tid.

Hurtig tilbagemelding på øvelser og altid hurtigt svar tilbage når man havde brug for hjælp.

Lækkert at man får dine løsningsforslag så man kan få ideer til at skrive scriptet på en anden måde.

Henrik Madsen, Alfa Laval Kolding A/S

Excel VBA

Det har bestemt været pengene værd. Jeg kender flere, som har taget VBA kursus on-site i et par dage eller deromkring , og de har slet ikke fået det samme ud af det som jeg har via denne side. Jeg har allerede udviklet små og større modeller til min arbejdsplads, og modellerne bruges allerede internationalt, det havde jeg ikke kunnet uden dette kursus.

Det er kanon, at man får personlig feedback og det går som regel tilmed hurtigt. Dygtig læremester, som sætter sig ind i mine specifikke problemstillinger - det er et stort plus. Den personlige kontakt er max vigtig.

Jeg vil anbefale dette til andre, der spørger til dette.

Michael Mortensen, DLH

< >
Se flere referencer

VBA kode omkring userforms

Det sidste vi mangler at lave omkring userforms er at kode hændelsesprocedurer, så der også kommer til at ske noger når brugeren trykker på knappen.

Hændelsesprocedure til knap

Hvis man dobbeltklikker på en knap i en userform bliver der oprettet en hændelsesprocedure til knappen. Det ser sådan her ud (når knappen hedder opret):

Excel VBA kursus - userform hændelsesprocedure - fjernundervisning

I hændelsesproceduren kan du skrive al den VBA kode du har lært. De kontrolelementer der er på userformen er objekter, der kan adresseres med deres navn. Findes der en tekstbox på userformen, der hedder txtNavn kan indholdet trækkes ud og afleveres i regnearket med koden:

Range("A1").Value = txtNavn.Value

Og på samme måde kan man også hente værdier ud af de øvrige kontrolelementer. Dog er det lidt specielt, hvis man skal hente værdier ud af en listbox, hvor multiselect egenskaben er sat true - så kan brugeren jo vælge flere elementer i listen. Her følger lidt kode, der kan bruges som inspiration for det tilfælde:

For i = 0 To ListBox1.ListCount - 1
  If ListBox1.Selected(i) = True Then
    MsgBox ListBox1.List(i, 0)
  End If
Next

Hændelsesprocedurer på userformen selv

I toppen af arbejdsvinduet er der to dropdown bokse. Vælger man UserForm i den første kan man vælge forskellige hændelsesprocedurer i den anden.

Excel VBA kursus - userform eventhandler - fjernundervisning

Initilize hændelsesprocedurern kan bruges til at få kode afviklet når UserFormen bliver vist første gang - det kunne f.eks. være at fylde indhold på en dropdownkontrol. Det kunne se sådan her ud (forudsat dropdownkontrollen hedder cboGruppe)

Private Sub UserForm_Initialize()
  cboGruppe.AddItem "Vælg gruppe"
  cboGruppe.AddItem "PC"
  cboGruppe.AddItem "Skærm"
  cboGruppe.ListIndex = 0
End Sub

Hændelsesprocedurer på de øvrige kontrolelementer (datavalidering)

De enkelte kontrolelementer har også hændelsesprocedurer, der f.eks. kan bruges til at validere de data brugeren indtaster/vælger. Vælg kontrollen i venstre dropdownkontrol og Exit i den højre - så får du den viste hændelsesprocedure:

Excel VBA kursus - userform validering - fjernundervisning

Bemærk, at der overføres en parameter Cancel, der kan bruges til at styre om brugeren må komme videre. Det kan bruges til validering - det kunne se sådan her ud:

Private Sub txtAntal_Exit(ByVal Cancel As MSForms.ReturnBoolean)
  If Not IsNumeric(txtAntal.Value) Then
    MsgBox "Her skal du skrive et tal" 
    Cancel = True 
  End If
End Sub

Luk userform

Når du gerne vil lukke userformen efter brugeren har indtastet de ønskede informationer og du har placeret dem i regnearket skriver du

Unload Me

 

Når du har betalt for kurset får du adgang til øvelser til hver lektion. Og når du har fået godkendt din besvarelse får du desuden adgang til mine løsningsforslag med ekstra tips og trix.