Word VBA

Nemt at komme igang.
Hurtige og gode svar på øvelser og spørgsmål.

Sune Jeppson, Arbejdernes Landsbank

Word VBA

Super hurtig tilbagemelding på løste opgaver. Det passer mig fint at kunne følge kurset i mit eget tempo.

Og igen igen

Ikke utænkeligt at jeg "springer" på et af de andre kurser

Stig Ulriksen, HTH

Word VBA

Jeg er total overrasket over den korte svartid. Det er et KÆMPE plus hvis man selv til tider arbejder under tidspres og ved man kun har en kort tid at arbejde på en opgave.

Der er heller aldrig slinger i valsen på spørgsmål; altid kort og præcis svar retur. 

At kunne lave opgaverne når det passede mig var helt fantastisk. 

Tina Eriksen, Skandinavisk Service Partner

Excel VBA

Godt med muligheden for sparring med underviser og forslag til andre løsningsmetoder end mine egne - selvom mine også fungerede.

Godt med muligheden for ingen tidsbegræsning for kurset. Havde jeg - pga. arb. situation, brug for.

Anja Hansen, TDC

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 VSTO

Det har naturligvis været rigtig godt, at kunne gennemgå kursus i sit eget tempo, hvilket har betydet meget for mig, da jeg så har kunne få det daglige arbejde til at passe ind.

I modsætning til en traditionel undervisningsform, hvor kurset er berammet til en fast tid og man derfor bliver nødt til, at sætte en tidsgrænse for de praktiske opgaver, har jeg kunne nørde lige så længe jeg vil, og dermed afprøve nogle flere teknikker, end der normalt er tid til.

Ved at køre kurset over flere uger, har jeg også haft tid til, at lade de nye informationer bundfælde og sætte sig bedre fast.

En rigtigt god ting har været, at jeg har kørt hele kurset på min egen (firmaet) maskine, med min egen opsætning. Har alt for ofte været på kurser ude af huset, på andre maskiner og når man så kom tilbage til ens egen pc, var det en anden opsætning, en anden version, eller andet der gjorde, at man ikke lige kunne komme igang med det man havde lært.

Jeg har kunne bruge mine hverdagsopgaver som opgaverne i kurset, hvilket jeg syntes er bedere end de normale "Hello World" opgaver.

Og så er jeg meget imponeret over den hurtige response der har været på indsendte opgaver og spørgsmål. Dejligt at jeg ikke skulle vente dage med, at kunne komme videre, men ofte i løbet af minutter eller timer.

Jan Amdi Letvad, PFA Pension

Excel VBA

At jeg kan fordybe når jeg har tid og lyst, er super.

Virkelig hurtig respons fra underviseren - næsten døgnet rundt :)

Øvelserne indeholdt hvad jeg skulle bruge, for at komme videre med egne vba-projekter.

At man kunne sammenligne egne løsninger med underviserens var lærerigt.

Henrik Boss, Marel Bornholm

Excel VBA

Det er rart at kunne tage kurset i sit eget tempo, når det lige passer ind, men det giver også en risiko for at det lige bliver langstrækt nok, men så er det godt underviseren kan holde én lidt i ørerne med mails wink

Eva Bonne Alkærsig, EBA InterrimControlling

< >
Se flere referencer

De første VBA programmer

Vi skal til at skrive de første programmer, men før vi går i gang skal vi se lidt på det værktøj vi bruger når vi koder VBA - VBA Editoren. Den ser sådan her ud (kommer frem når du trykker ALT+F11):

Billedet indeholder 6 vinduer som jeg har sat det op her:

  • Project- En oversigt de dokumenter der er åbne og den VBA kode der ligger i de åbne filer.
  • Properties- Et vindue, der skifter afhængigt af hvad man laver i "arbejdes området" (højre del af skærmen)
  • Document 1 - NewMacros (code)- Det er i sådan et vindue her vi skal skrive vores VBA programmer om lidt
  • Document 1 - Userform1 (userform)- En userform - sådan én skal vi lære meget mere om senere
  • Toolbox- Bruges sammen med userformen
  • Immediate- Et vindue, der kan bruges når man debugger (finde fejl i) sine programmer

Vi skal nok komme tilbage til de enkelte elementer i løbet af kurset.


Når man åbner et nyt dokument og trykker ALT+F11 ser VBA editoren sådan her ud:


For at komme til at skrive et program skal du højre klikke på "Microsoft Word Objects" og vælge Insert | Module - så kommer det til at se sådan her ud:

Moduler er en slags kodekasser (nej ikke rodekasser!) så du kan strukturere dine programmer. Du kan i Properties vinduet skifte navnet på modulet. NU er vi ved at være klar til at skrive programmer!

Procedurer og funktioner

Der er to slags programmer vi kan skrive - procedurer og funktioner. En funktion minder om de funktioner du kender fra Excel som Sum(), Middel() etc. der kan bruges til at lave beregninger og returnere et resultat. En procedure returnerer ikke noget resultat, men kan også lave beregninger for os.

I nedenstående billede er der en funktion og en procedure - kan du regne ud hvad de laver?
Proceduren kan du skrive direkte ind i VBA og se hvad der sker når du kører den. Det er måske ikke helt oplagt hvad funktionen gør. Du må gerne gå let hen over den i første omgang - så kan du i mit løsningsforslag se, hvordan den kan bruges.

Procedurer
Svarer til de makroer du tidligere har optaget. De står i makrobilledet, hvis du vælger Funktioner | Makro | Makroer...

Funktioner
Funktioner bruges primært som hjælpeværktøjer til andre makroer man skriver - det gør koden mere overskuelig.

Tips og trix i VBA editoren

Automatisk fuldførelse

Når du skriver f.eks. sub HelloWorld og trykker på enter så skriver vba editoren automatisk () og End Sub samt ændrer sub til Sub.

Det er derfor en god idé altid at skrive med små bogstaver - så vil du kunne se om det er ord VBA editoren genkender ved at den ændrer dem til at have stort begyndelsesbogstav.

Et trix mere i den kategori er når du skal skrive selection kan nøjes med at skrive se og trykke på CTRL + Mellemrum så giver VBA editoren dig en liste over ord den kender der begynder med se. Vælg Selection og tryk på TAB.

Egenskaber og metoder

Når man har skrevet navnet på et objekt bruger man et punktum til at adressere objektets metoder og egenskaber. Når du skriver Selection. dukker der en liste over alle metoder og egenskaber til Selection objektet op. Du vælger den metode eller egenskab du skal bruge fra listen (bemærk, at du kan skrive de første bogstaver i navnet og bladre i listen på den måde). Når du har fundet den ønskede metode eller egenskab trykker du TAB for at komme videre.

Dette er en rigtig god måde at lære de forskellige metoder og egenskaber at kende.

Hjælpe funktionen

VBA editoren har en rigtig god hjælpefunktion, som du kan få fat i ved at trykke på F1. Prøv at stille markøren i ordet Range og tryk F1 - du skulle så gerne få en side, der beskriver Range objektet.

Nyttige genvejstaster

CTRL+Mellemrum Auto fuldførelse
F1 Hjælp
F5 Kør makro
F8 Debug makro (kommer vi til senere)
ALT+F11 Start VBA editoren

Der er naturligvis mange flere genvejstaster, men disse er de vigtigste.

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.