Excel VBA Lussen: For Next, Do While, Do Until, For Each (met voorbeelden)

Om Excel en VBA optimaal te benutten, moet u weten hoe u lussen efficiënt kunt gebruiken.

In VBA kunt u met lussen een reeks objecten/waarden doorlopen en deze een voor een analyseren. U kunt ook specifieke taken uitvoeren voor elke lus.

Hier volgt een eenvoudig voorbeeld van het gebruik van VBA-lussen in Excel.

Voorstel dat u een dataset hebt en u wilt alle cellen in even rijen markeren. U kunt een VBA-lus gebruiken om door het bereik te gaan en elke cel rij nummer te analyseren. Als het even blijkt te zijn, geef je het een kleur, anders laat je het zoals het is.

Nu is dit natuurlijk heel eenvoudig van looping in Excel VBA (en je kunt dit ook doen met behulp van voorwaardelijke opmaak).

In het echte leven kun je veel meer doen met VBA-lussen in Excel die je kunnen helpen bij het automatiseren van taken.

Hier volgen nog enkele praktische voorbeelden waarbij VBA-lussen nuttig kunnen zijn:

  • Loop door een reeks cellen en analyseer elke cel (markeer cellen met een specifieke tekst erin).
  • Alle werkbladen doorlopen en met elk daarvan iets doen (zoals beschermen/deblokkeren).
  • Alle geopende werkmappen doorlopen (en elke werkmap opslaan of alle werkmappen behalve de actieve werkmap sluiten).
  • Alle tekens in een cel doorlopen (en het numerieke gedeelte uit een tekenreeks extraheren).
  • Alle waarden in een matrix doorlopen.
  • Alle diagrammen/objecten doorlopen (en een rand geven of de achtergrondkleur wijzigen).

Nu, om lussen in Excel VBA zo goed mogelijk te gebruiken, moet je weten welke verschillende soorten er zijn en wat de juiste syntaxis van elk is.

Het gebruik van lussen in Excel VBA - De ultieme gids

In deze handleiding laat ik verschillende soorten Excel VBA-lussen zien en geef ik een paar voorbeelden voor elke lus

Note: Dit wordt een enorme handleiding, waarin ik elke VBA-lus in detail zal proberen te behandelen. Ik raad u aan deze pagina te bookmarken voor toekomstige referentie.

Als u geïnteresseerd bent in het leren van VBA op de gemakkelijke manier, bekijk dan mijn Online Excel VBA Training.

Deze Tutorial Behandelt:

For Next Loop

De ‘For Next’ loop staat u toe een blok code te doorlopen voor het opgegeven aantal keren.

Als ik je bijvoorbeeld vraag om de gehele getallen van 1 tot 10 handmatig op te tellen, dan zou je de eerste twee getallen optellen, dan het derde getal bij het resultaat optellen, dan het vierde getal bij het resultaat optellen, enzovoort.

Is dat niet zo?

Dezelfde logica wordt gebruikt in de lus For Next in VBA.

Je geeft aan hoe vaak je de lus wilt laten lopen en je geeft ook aan wat je wilt dat de code doet elke keer dat de lus wordt uitgevoerd.

Hieronder volgt de syntaxis van de For Next-lus:

For Counter = Start To End Next 

In de For Next-lus kunt u een teller (of een willekeurige variabele) gebruiken die zal worden gebruikt om de lus uit te voeren. Met deze teller kunt u de lus een gewenst aantal keren laten lopen.

Bijv. als ik de eerste 10 positieve gehele getallen wil optellen, dan zou mijn tellerwaarde van 1 tot 10 moeten lopen.

Laten we eens naar een paar voorbeelden kijken om beter te begrijpen hoe de For Next-lus werkt.

Voorbeeld 1 – De eerste 10 positieve gehele getallen optellen

Hieronder staat de code die de eerste 10 positieve gehele getallen optelt met behulp van een For Next-lus.

Er verschijnt dan een berichtvenster met de som van deze getallen.

Sub AddNumbers()Dim Total As IntegerDim Count As IntegerTotal = 0For Count = 1 To 10Total = Total + CountNext CountMsgBox TotalEnd Sub

In deze code wordt de waarde van Totaal op 0 gezet voordat het in de For Next-lus komt.

Als het eenmaal in de lus komt, houdt het de totale waarde vast na elke lus. Dus na de eerste lus, als Teller 1 is, wordt de waarde van ‘Totaal’ 1, en na de tweede lus wordt het 3 (1+2), enzovoort.

En tenslotte, als de lus eindigt, heeft de variabele ‘Totaal’ de som van de eerste 10 positieve gehele getallen.

Een MsgBox toont dan eenvoudig het resultaat in een berichtvak.

Voorbeeld 2 – De eerste 5 even positieve gehele getallen optellen

Om de eerste vijf even positieve gehele getallen (d.w.z. 2,4,6,8, en 10) op te tellen, hebt u een soortgelijke code nodig met een voorwaarde om alleen de even getallen in aanmerking te nemen en de oneven getallen te negeren.

Hier volgt een code die dat mogelijk maakt:

Sub AddEvenNumbers()Dim Total As IntegerDim Count As IntegerTotal = 0For Count = 2 To 10 Step 2Total = Total + CountNext CountMsgBox TotalEnd Sub

Merk op dat we de Count-waarde op 2 hebben gezet en ook ‘Stap 2’ hebben gebruikt.

Wanneer je ‘Stap 2’ gebruikt, vertelt dit de code om de ‘Count’-waarde elke keer dat de lus wordt uitgevoerd, met 2 te verhogen.

Dus de waarde Count begint bij 2 en wordt dan 4, 6, 8 en 10 terwijl de lus wordt uitgevoerd.

NOOT: Een andere manier om dit te doen zou kunnen zijn om de lus van 1 tot 10 uit te voeren en binnen de lus te controleren of het getal even of oneven is. Het gebruik van Step is in dit geval echter efficiënter, omdat de lus dan niet 10 keer hoeft te lopen, maar slechts 5 keer.

De waarde Step kan ook negatief zijn. In dat geval begint de teller op een hogere waarde en wordt hij steeds verder verlaagd met de opgegeven Step-waarde.

Voorbeeld 3 – Serienummers invoeren in de geselecteerde cellen

U kunt de lus For Next ook gebruiken om een verzameling objecten (zoals cellen of werkbladen of werkmappen) te doorlopen,

Hier volgt een voorbeeld waarmee snel serienummers in alle geselecteerde cellen worden ingevoerd.

Sub EnterSerialNumber()Dim Rng As RangeDim Counter As IntegerDim RowCount As IntegerSet Rng = SelectionRowCount = Rng.Rows.CountFor Counter = 1 To RowCountActiveCell.Offset(Counter - 1, 0).Value = CounterNext CounterEnd Sub

De bovenstaande code telt eerst het aantal geselecteerde rijen en kent deze waarde vervolgens toe aan de variabele RowCount. Vervolgens laten we de lus lopen van ‘1 tot RowCount’.

Ook moeten we opmerken dat, omdat de selectie een willekeurig aantal rijen kan zijn, we de variabele Rng hebben ingesteld op Selection (met de regel ‘Set Rng = Selection’). Nu kunnen we de variabele ‘Rng’ gebruiken om in onze code naar de selectie te verwijzen.

Voorbeeld 4 – Bescherm alle werkbladen in de actieve werkmap

U kunt de ‘For Next’-lus gebruiken om alle werkbladen in de actieve werkmap te doorlopen, en elk van de werkbladen te beschermen (of de bescherming op te heffen).

Hieronder staat de code die dit doet:

Sub ProtectWorksheets()Dim i As IntegerFor i = 1 To ActiveWorkbook.Worksheets.CountWorksheets(i).ProtectNext iEnd Sub

De bovenstaande code telt het aantal werkbladen met behulp van ActiveWorkbook.Worksheets.Count. Dit vertelt VBA hoe vaak de lus moet worden uitgevoerd.

In elk geval wordt verwezen naar het Ie werkboek (met behulp van Worksheets(i)) en wordt het beschermd.

U kunt deze zelfde code ook gebruiken om werkbladen te deprotecteren. Verander gewoon de regel Worksheets(i).Protect in Worksheets(i).UnProtect.

Geneste ‘For Next’ lussen

Je kunt geneste ‘For Next’ lussen gebruiken om complexere automatiseringen in Excel uit te voeren. Een geneste ‘For Next’-lus betekent dat er een ‘For Next’-lus binnen een ‘For Next’-lus is.

Ik zal u aan de hand van een voorbeeld laten zien hoe u dit kunt gebruiken.

Voorstel dat ik 5 werkmappen in mijn systeem heb openstaan en dat ik alle werkbladen in al deze werkmappen wil beveiligen.

Hieronder staat de code die dit zal doen:

Sub ProtectWorksheets()Dim i As IntegerDim j As IntegerFor i = 1 To Workbooks.CountFor j = 1 To Workbooks(i).Worksheets.CountWorkbooks(i).Worksheets(j).ProtectNext jNext iEnd Sub

Het bovenstaande is een geneste For Next-lus, omdat we een For Next-lus binnen een andere hebben gebruikt.

‘EXIT For’-statements in For Next-lussen

Met het ‘Exit For’-statement kunt u de ‘For Next’-lus volledig afsluiten.

U kunt het gebruiken in gevallen waarin u wilt dat de For Next-lus eindigt als aan een bepaalde voorwaarde is voldaan.

Laten we een voorbeeld nemen waarin u een reeks getallen in kolom A hebt en u alle negatieve getallen in een rood lettertype wilt markeren. In dit geval moeten we elke cel analyseren op zijn waarde en vervolgens de kleur van het lettertype dienovereenkomstig veranderen.

Maar om de code efficiënter te maken, kunnen we eerst controleren of er negatieve waarden in de lijst staan of niet. Als er geen negatieve waarden zijn, kunnen we het ‘Exit For’-statement gebruiken om gewoon uit de code te komen.

Hieronder staat de code die dit doet:

Sub HghlightNegative()Dim Rng As RangeSet Rng = Range("A1", Range("A1").End(xlDown))Counter = Rng.CountFor i = 1 To CounterIf WorksheetFunction.Min(Rng) >= 0 Then Exit ForIf Rng(i).Value < 0 Then Rng(i).Font.Color = vbRedNext iEnd Sub

Wanneer je het ‘Exit For’-statement gebruikt binnen een geneste ‘For Next’-lus, komt het uit de lus waarin het wordt uitgevoerd en gaat het verder met het uitvoeren van de volgende regel in de code na de ‘For Next’-lus.

Bijv. in de onderstaande code haalt het ‘Exit For’ statement je uit de binnenste lus, maar de buitenste lus zou blijven werken.

Sub SampleCode()For i = 1 To 10For j = 1 to 10Exit ForNext JNext iEnd Sub

Do While-lus

Een ‘Do While’-lus stelt u in staat een voorwaarde te controleren en de lus uit te voeren terwijl aan die voorwaarde wordt voldaan (of WAAR is).

Er zijn twee soorten syntaxis in de Do While-lus.

Do Loop

en

DoLoop 

Het verschil tussen deze twee is dat in het eerste geval eerst de While voorwaarde wordt gecontroleerd voordat een codeblok wordt uitgevoerd, en in het tweede geval eerst het codeblok wordt uitgevoerd en dan pas de While voorwaarde wordt gecontroleerd.

Dit betekent dat als de ‘While’-voorwaarde in beide gevallen False is, de code in het tweede geval toch ten minste één keer wordt uitgevoerd (omdat de ‘While’-voorwaarde wordt gecontroleerd nadat de code één keer is uitgevoerd).

Nu volgen enkele voorbeelden van het gebruik van Do While-lussen in VBA.

Voorbeeld 1 – De eerste 10 positieve gehele getallen optellen met behulp van VBA

Voorstel dat je de eerste tien positieve gehele getallen wilt optellen met behulp van de Do While-lus in VBA.

Om dit te doen, kun je de Do While-lus gebruiken totdat het volgende getal kleiner is dan of gelijk is aan 10. Zodra het getal groter is dan 1o, stopt de lus.

Hier volgt de VBA-code die deze Do While-lus uitvoert en het resultaat in een berichtenvenster laat zien.

Sub AddFirst10PositiveIntegers()Dim i As Integeri = 1Do While i <= 10Result = Result + ii = i + 1LoopMsgBox ResultEnd Sub

De bovenstaande lus blijft werken totdat de waarde van ‘i’ 11 wordt. Zodra de waarde 11 wordt, wordt de lus beëindigd (omdat de While-conditie False wordt).

In de lus hebben we een Result-variabele gebruikt die de uiteindelijke waarde bevat Zodra de lus is voltooid, toont een message box de waarde van de ‘Result’-variabele.

Voorbeeld 2 – Data voor de huidige maand invoeren

Let op: u wilt alle data van de huidige maand in een kolom van het werkblad invoeren.

Dat kunt u doen met de volgende Do While-luscode:

Sub EnterCurrentMonthDates()Dim CMDate As DateDim i As Integeri = 0CMDate = DateSerial(Year(Date), Month(Date), 1)Do While Month(CMDate) = Month(Date)Range("A1").Offset(i, 0) = CMDatei = i + 1CMDate = CMDate + 1LoopEnd Sub

De bovenstaande code zou alle data in de eerste kolom van het werkblad invoeren (beginnend bij A1). De lussen gaan door totdat de maandwaarde van de variabele ‘CMDate’ overeenkomt met die van de huidige maand.

Exit Do Statement

U kunt het Exit Do statement gebruiken om uit de lus te komen. Zodra de code de regel ‘Exit Do’ uitvoert, komt hij uit de Do While-lus en geeft de controle door aan de volgende regel direct na de lus.

Als u bijvoorbeeld alleen de eerste 10 datums wilt invoeren, dan kunt u de lus verlaten zodra de eerste 10 datums zijn ingevoerd.

Onderstaande code doet dit:

Sub EnterCurrentMonthDates()Dim CMDate As DateDim i As Integeri = 0CMDate = DateSerial(Year(Date), Month(Date), 1)Do While Month(CMDate) = Month(Date)Range("A1").Offset(i, 0) = CMDatei = i + 1If i >= 10 Then Exit DoCMDate = CMDate + 1LoopEnd Sub

In de bovenstaande code wordt het IF statement gebruikt om te controleren of de waarde van i groter is dan 10 of niet. Zodra de waarde van ‘i’ 10 wordt, wordt het Exit Do statement uitgevoerd en eindigt de lus.

Do Until Loop

‘Do Until’-lussen lijken erg op de ‘Do While’-lussen.

In ‘Do While’ loopt de lus tot aan de opgegeven voorwaarde is voldaan, terwijl in ‘Do Until’ de lus loopt tot aan de opgegeven voorwaarde is voldaan.

Er zijn twee soorten syntaxis in de Do Until-lus.

Do Loop

en

DoLoop 

Het verschil tussen deze twee is dat in het eerste geval eerst de Until-conditie wordt gecontroleerd voordat een codeblok wordt uitgevoerd, en in het tweede geval eerst het codeblok wordt uitgevoerd en dan pas de Until-conditie wordt gecontroleerd.

Dit betekent dat als de Until-conditie in beide gevallen TRUE is, de code in het tweede geval toch ten minste één keer wordt uitgevoerd (omdat de Until-conditie wordt gecontroleerd nadat de code één keer is uitgevoerd).

Nu gaan we enkele voorbeelden bekijken van het gebruik van Do Until-lussen in VBA.

Note: Alle voorbeelden voor Do Until zijn hetzelfde als die van Do While. Deze zijn aangepast om te laten zien hoe de Do Until-lus werkt.

Voorbeeld 1 – De eerste 10 positieve gehele getallen optellen met behulp van VBA

Voorstel dat je de eerste tien positieve gehele getallen wilt optellen met behulp van de Do Until-lus in VBA.

Om dit te doen, moet je de lus laten lopen totdat het volgende getal kleiner is dan of gelijk is aan 10. Zodra het getal groter is dan 1o, stopt de lus.

Hier volgt de VBA-code waarmee deze lus wordt uitgevoerd en het resultaat in een berichtenvenster wordt getoond.

Sub AddFirst10PositiveIntegers()Dim i As Integeri = 1Do Until i > 10Result = Result + ii = i + 1LoopMsgBox ResultEnd Sub

De bovenstaande lus blijft werken totdat de waarde van ‘i’ 11 wordt. Zodra die 11 wordt, eindigt de lus (omdat de voorwaarde ‘Tot’ Waar wordt).

Voorbeeld 2 – Data voor de huidige maand invoeren

Let op: u wilt alle data van de huidige maand in een kolom van een werkblad invoeren.

Dat kunt u doen met de volgende Do Until-luscode:

Sub EnterCurrentMonthDates()Dim CMDate As DateDim i As Integeri = 0CMDate = DateSerial(Year(Date), Month(Date), 1)Do Until Month(CMDate) <> Month(Date)Range("A1").Offset(i, 0) = CMDatei = i + 1CMDate = CMDate + 1LoopEnd Sub

De bovenstaande code zou alle datums in de eerste kolom van het werkblad invoeren (beginnend bij A1). De lus gaat door totdat de maand van variabele CMDate niet gelijk is aan die van de huidige maand.

Exit Do Statement

U kunt het ‘Exit Do’-statement gebruiken om uit de lus te komen.

Zodra de code de ‘Exit Do’-regel uitvoert, komt hij uit de Do Until-lus en geeft de controle door aan de volgende regel direct na de lus.

Wilt u bijvoorbeeld alleen de eerste 10 data invoeren, dan kunt u de lus verlaten zodra de eerste 10 data zijn ingevoerd.

Onderstaande code doet dit:

Sub EnterCurrentMonthDates()Dim CMDate As DateDim i As Integeri = 0CMDate = DateSerial(Year(Date), Month(Date), 1)Do Until Month(CMDate) <> Month(Date)Range("A1").Offset(i, 0) = CMDatei = i + 1If i >= 10 Then Exit DoCMDate = CMDate + 1LoopEnd Sub

In bovenstaande code wordt, zodra de waarde van ‘i’ 10 wordt, Exit Do statment uitgevoerd en de lus beëindigd.

For Each

In VBA kunt u met behulp van de ‘For Each’ lus door een reeks verzamelingen lopen.

Hier volgen enkele voorbeelden van verzamelingen in Excel VBA:

  • Een verzameling van alle geopende werkmappen.
  • Een verzameling van alle werkbladen in een werkmap.
  • Een verzameling van alle cellen in een bereik van geselecteerde cellen.
  • Een verzameling van alle grafieken of vormen in de werkmap.

Met behulp van de ‘For Each’-lus kunt u door elk van de objecten in een verzameling lopen en er een actie op uitvoeren.

U kunt bijvoorbeeld alle werkbladen in een werkmap doorlopen en deze beveiligen, of u kunt alle cellen in de selectie doorlopen en de opmaak wijzigen.

Met de ‘For Each’-lus (ook wel de ‘For Each-Next’-lus genoemd) hoeft u niet te weten hoeveel objecten er in een verzameling zitten.

De ‘For Each’-lus zou automatisch door elk object gaan en de opgegeven actie uitvoeren. Als u bijvoorbeeld alle werkbladen in een werkmap wilt beveiligen, zou de code hetzelfde zijn, of u nu een werkmap met 3 werkbladen of met 30 werkbladen hebt.

Hier volgt de syntaxis van de lus For Each-Next in Excel VBA.

For Each element In collectionNext 

Nu gaan we eens kijken naar een paar voorbeelden van het gebruik van de lus For Each in Excel.

Voorbeeld 1 – Doorloop alle werkbladen in een werkmap (en beveilig deze)

Voorstel dat u een werkmap hebt waarin u alle werkbladen wilt beveiligen.

De onderstaande For Each-Next-lus kan dit gemakkelijk doen:

Sub ProtectSheets()Dim ws As WorksheetFor Each ws In ActiveWorkbook.Worksheetsws.ProtectNext wsEnd Sub

In de bovenstaande code hebben we de variabele ‘ws’ gedefinieerd als een werkbladobject. Dit vertelt VBA dat ‘ws’ in de code moet worden geïnterpreteerd als een werkbladobject.

Nu gebruiken we het ‘For Each’-statement om door elke ‘ws’ (dat een werkbladobject is) te gaan in de verzameling van alle werkbladen in het actieve werkboek (gegeven door ActiveWorkbook.Worksheets).

Merk op dat in tegenstelling tot andere lussen waarin we hebben geprobeerd alle werkbladen in een werkmap te beschermen, we ons hier geen zorgen hoeven te maken over hoeveel werkbladen er in de werkmap zijn.

We hoeven deze niet te tellen om de lus uit te voeren. De lus For Each zorgt ervoor dat alle objecten een voor een worden geanalyseerd.

Voorbeeld 2 – Doorloop alle open werkmappen (en sla ze allemaal op)

Als u met meerdere werkmappen tegelijk werkt, kan het handig zijn om al deze werkmappen in een keer te kunnen opslaan.

Onderstaande VBA-code kan dit voor ons doen:

Sub SaveAllWorkbooks()Dim wb As WorkbookFor Each wb In Workbookswb.SaveNext wbEnd Sub

Merk op dat je in deze code geen prompt krijgt die je vraagt om de werkmap op een specifieke locatie op te slaan (als je hem voor de eerste keer opslaat).

Hij slaat hem op in de standaardmap (in mijn geval was dat de map ‘Documenten’). Deze code werkt het beste als deze bestanden al zijn opgeslagen en u wijzigingen aanbrengt en snel alle werkmappen wilt opslaan.

Voorbeeld 3 – Doorloop alle cellen in een selectie (Markeer negatieve waarden)

Met behulp van de ‘For Each’ lus, kunt u alle cellen in een specifiek bereik of in het geselecteerde bereik doorlopen.

Dit kan handig zijn wanneer u elke cel wilt analyseren en op basis daarvan een actie wilt uitvoeren.

Voorbeeld, hieronder staat de code die alle cellen in de selectie doorloopt en de cel kleur van de cellen met negatieve waarden in rood verandert.

Sub HighlightNegativeCells()Dim Cll As RangeFor Each Cll In SelectionIf Cll.Value < 0 ThenCll.Interior.Color = vbRedEnd IfNext CllEnd Sub

(Merk op dat ik Cll heb gebruikt als een korte variabele naam voor Cel. Het is raadzaam om geen objectnamen zoals Sheets of Range als variabele namen te gebruiken)

In de bovenstaande code gaat de lus For Each-Next door de verzameling cellen in de selectie. IF-instructie wordt gebruikt om te bepalen of de celwaarde negatief is of niet. Als dat het geval is, krijgt de cel een rode kleur aan de binnenkant, anders gaat hij naar de volgende cel.

In het geval dat je geen selectie hebt, en in plaats daarvan wilt dat VBA alle gevulde cellen in een kolom selecteert, beginnend bij een specifieke cel (net zoals we Control + Shift + Pijl omlaag gebruiken om alle gevulde cellen te selecteren), kun je de onderstaande code gebruiken:

Sub HighlightNegativeCells()Dim Cll As RangeDim Rng As RangeSet Rng = Range("A1", Range("A1").End(xlDown))For Each Cll In RngIf Cll.Value < 0 ThenCll.Interior.Color = vbRedEnd IfNext CllEnd Sub

In het bovenstaande voorbeeld maakt het niet uit hoeveel gevulde cellen er zijn. Het begint bij cel A1 en analyseert alle aaneengesloten gevulde cellen in de kolom.

Je hoeft ook cel A1 niet geselecteerd te hebben. U kunt elke verafgelegen cel selecteren en wanneer de code wordt uitgevoerd, worden nog steeds alle cellen in kolom A (beginnend bij A1) bekeken en de negatieve cellen gekleurd.

‘Exit For’-statement

U kunt het ‘Exit For’-statement in de lus For Each-Next gebruiken om uit de lus te komen. Dit wordt meestal gedaan als aan een bepaalde voorwaarde is voldaan.

Bijvoorbeeld in Voorbeeld 3, waar we door een reeks cellen gaan, kan het efficiënter zijn om te controleren of er negatieve waarden zijn of niet. Als er geen negatieve waarden zijn, kunnen we de lus eenvoudig verlaten en wat VBA-verwerkingstijd besparen.

Hieronder staat de VBA-code die dit zal doen:

Sub HighlightNegativeCells()Dim Cll As RangeFor Each Cll In SelectionIf WorksheetFunction.Min(Selection) >= 0 Then Exit ForIf Cll.Value < 0 ThenCll.Interior.Color = vbRedEnd IfNext CllEnd Sub

Waar plaats je de VBA-code

Vraagt u zich af waar de VBA-code in uw Excel-werkmap moet komen?

Excel heeft een VBA-achterkant die de VBA-editor wordt genoemd. U moet de code kopiëren en plakken in het VB-editor module code venster.

Hier zijn de stappen om dit te doen:

  1. Ga naar het Developer tabblad.IF Then Else in Excel VBA - Developer Tab in ribbon
  2. Klik op de Visual Basic optie. Hierdoor wordt de VB-editor in de backend geopend.Klik op Visual Basic
  3. In het deelvenster Project Explorer in de VB-editor klikt u met de rechtermuisknop op een object voor de werkmap waarin u de code wilt invoegen. Als u de Project Explorer niet ziet, gaat u naar het tabblad Beeld en klikt u op Project Explorer.
  4. Ga naar Invoegen en klik op Module. Hierdoor wordt een moduleobject voor uw werkmap ingevoegd.VBA Lussen - module invoegen
  5. Kopieer en plak de code in het modulevenster.VBA Lussen - module invoegen

Je vindt de volgende Excel Tutorials misschien ook leuk:

  • Hoe neem je een macro op in Excel.
  • Hoe maak je door de gebruiker gedefinieerde functies in Excel.
  • Excel VBA Msgbox
  • Hoe voer je een Macro uit in Excel.
  • Hoe maak en gebruik je invoegtoepassingen in Excel.
  • Excel VBA Gebeurtenissen – Een gemakkelijke (en volledige) gids.
  • Hoe sorteer je gegevens in Excel met behulp van VBA (Een stap-voor-stap handleiding).
  • 24 Nuttige Excel Macro Voorbeelden voor VBA Beginners (Gebruiksklaar).
  • Hoe Excel VBA InStr Functie te gebruiken (met praktische VOORBEELDEN).
  • Excel Persoonlijke Macro Werkmap | Opslaan & Macro’s gebruiken in alle werkmappen.
  • Zaak selecteren gebruiken in Excel VBA.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *