Fejlfinding i VBA – Når tingene ikke virker
Fejlfinding i VBA – Når tingene ikke virker

Du har skrevet din første VBA-kode, trykker på Kør… og så sker der enten ingenting – eller noget helt forkert 😅
Bare rolig. Fejl er en helt normal del af processen, og i dette indlæg viser jeg dig, hvordan du nemt spotter og retter dem.
🧰 Brug dine vigtigste værktøjer
Her er tre måder, du kan finde ud af, hvad der foregår i din kode:
1. MsgBox – Vis hvad der sker undervejs
Brug MsgBox til at vise værdier, så du kan følge med i, hvad din kode gør.
Praktisk fx midt i et loop – så du kan se, hvor langt du er kommet.
2. Debug.Print – Skriv til “Immediate Window”
Lidt mere diskret end MsgBox, men super effektiv:
Du kan se output i Immediate-vinduet (Ctrl + G i VBA-editoren).
3. Breakpoints – Sæt kode på pause
Vil du se præcis hvad koden laver, linje for linje? Klik i venstre margen i editoren – så sætter du et breakpoint 🔴
Når du kører koden, stopper den ved punktet, og du kan bruge F8 til at gå igennem koden én linje ad gangen. Supergodt til at finde præcis hvor noget går galt.
🚨 De mest almindelige fejl
Her er de klassikere, som (næsten) alle støder på i starten:
❌ “Subscript out of range”
Du prøver at referere til et ark, som ikke findes.
🔍 Tjek navnet i Sheets("Navn") – det skal matche 100% med det, der står i fanen.
❌ “Object required”
Du mangler at definere et objekt, fx en celle eller et ark.
🔍 Brug Set når du arbejder med objekter:
❌ “Type mismatch”
Du forsøger at regne med tekst eller sammenligne en tom værdi med et tal.
🔍 Brug IsNumeric(), IsEmpty() eller CStr()/CInt() for at konvertere eller tjekke typen.
🧹 Strukturer din kode – så du nemmere finder fejl
God struktur gør det nemmere både at læse og fejlfinde din VBA-kode.
💡 Gode vaner:
-
Navngiv variabler beskrivende:
-
Kommentér din kode – især i loops og logik:
-
Del koden op i små “Sub”/funktioner i stedet for én lang blok.
✨ Bonus: Lav din egen fejlmeddelelse
I stedet for at lade Excel vise en mærkelig fejl, kan du fange den og vise noget mere brugervenligt:
💭 Afslutning
Fejl er frustrerende – men også det sted, hvor du lærer allermest. Og når du begynder at forstå, hvad der går galt, kan du hurtigt rette det og få VBA til at gøre præcis det, du vil.
👉 Sidder du fast i en fejl og har brug for hjælp? Så tøv ikke med at skrive – jeg tilbyder hurtig fejlfinding, sparring og opsætning af automatiseringer i Excel.
