Vill du lära dig hur du använder deklarationen FÖR NÄSTA VBA i Excel? Denna Excel-handledning förklarar hur du använder Excel FOR NEXT-satsen för att skapa en FOR-loop i VBA med syntax och exempel. Vi inbjuder dig att stanna:
Beskrivning av FOR NEXT VBA Statement i Excel

FOR NEXT-satsen i Microsoft Excel används för att skapa en FOR-loop så att du kan köra VBA-kod ett fast antal gånger.
FOR NEXT VBA-satsen i Excel är en funktion inbyggd i detta kontorsverktyg som klassificeras som en logisk funktion. Den kan användas som en VBA-funktion i Excel. Som en VBA-funktion kan du använda denna i makrokod som matas in via Microsoft Visual Basic Editor.
Här kan du lära dig om: Så här grupperar du en pivottabell efter månader i Excel
FÖR NÄSTA VBA Statement Syntax i Excel
Syntaxen för att skapa en FOR-loop med hjälp av FOR NEXT VBA-satsen i Excel är:
För motverka = starta Till änden [Steg ökning]
{...uttalanden...}
Nästa [motverka]
Parametrar eller argument
Bänkskiva
Slingräknarens variabel.
Start
Det initiala värdet av motverka.
Slutlig
Det slutliga värdet av motverka.
Öka
Frivillig. Värdet av det motverka ökas för varje passage genom slingan. Det kan vara ett positivt eller negativt tal. Om det inte anges, kommer det som standard till ett steg på 1 så att varje passage genom slingan ökar motverka s 1.
Deklarationer
Kodsatserna för att exekvera varje steg genom slingan.
Returnerar från FOR NEXT VBA-sats i Excel
FOR NEXT VBA-satsen i Excel skapar en FOR-loop i VBA.
Gäller:
- Excel för Office 365, Excel 2019, Excel 2016, Excel 2013, Excel 2011 för Mac, Excel 2010, Excel 2007, Excel 2003, Excel XP, Excel 2000
Funktionstyp:
- VBA-funktion (VBA)
Exempel (som en funktion FOR NEXT VBA-satsen i Excel)
FOR NEXT VBA-satssatsen i Excel kan endast användas i VBA-kod i detta kontorsverktyg.
Låt oss titta på hur man skapar en FOR-slinga i Microsoft Excel, börja med en enkel loop, dubbel loop och trippel loop, och sedan utforska hur man ändrar värdet som används för att öka räknaren för varje passage genom loopen.
Enkel slinga med FOR NEXT VBA i Excel
Den enklaste implementeringen av FOR-loopen är att använda FOR NEXT VBA-satsen i Excel för att skapa en enda loop. Detta gör att du kan upprepa VBA-koden ett fast antal gånger.
T.ex.:
Sub Single_Loop_Example
Dim LCounter Som heltal
För LCounter = 1 till 5
MsgBox (LCounter)
Nästa LCounter
End Sub
I det här exemplet styrs FOR-slingan av LRäknarvariabel. Den skulle loopa 5 gånger, med början vid 1 och sluta vid 5. Varje gång inom loopen skulle den visa en meddelanderuta med variabelns värde LCounter. Den här koden skulle visa 5 meddelanderutor med följande värden: 1, 2, 3, 4 och 5.
Single Loop – Ändra inkrement med FOR NEXT VBA i Excel
Som standard kommer FOR-slingan att öka sin loopräknare med 1, men detta kan anpassas. Du kan använda för att ändra värdet som används för att öka räknaren. FOR-slingan kan ökas och kan vara positiva värden eller negativ.STEP-ökning
Positiv ökning med FOR NEXT VBA i Excel
Låt oss först titta på ett exempel på hur man ökar räknaren för en FOR-slinga med ett positivt värde.
T.ex.:
Sub Increment_Positive_Example
Dim LCounter Som heltal
För LCounter = 1 till 9 Steg 2
MsgBox LCounter
Nästa LCounter
End Sub
I det här exemplet har steg 2 i FOR-slingan använts för att ändra inkrementet till 2. Vad detta betyder är att FOR-slingan skulle börja vid 1, öka med 2 och sluta vid 9. Koden skulle visa 5 meddelanderutor med följande värden: 1, 3, 5, 7 och 9.
Negativ ökning med FOR NEXT VBA i Excel
Låt oss nu se hur man ökar räknaren för en FOR-slinga med ett negativt värde.
T.ex.:
Sub Increment_Negative_Example
Dim LCounter Som heltal
För LCounter = 50 Till 30 Steg -5
MsgBox LCounter
Nästa LCounter
End Sub
När du ökar med ett negativt värde måste startnumret vara det högsta värdet och sluttalet vara det lägsta värdet, eftersom FOR-slingan kommer att räknas baklänges. Så i det här exemplet kommer FOR-slingan att börja vid 50, öka med -5 och sluta vid 30. Koden skulle visa 5 meddelanderutor med följande värden: 50, 45, 40, 35 och 30.
Dubbelkrets med FOR NEXT VBA i Excel
Låt oss sedan titta på ett exempel på hur man skapar en dubbel FOR-loop i Microsoft Excel.
T.ex.:
Sub Double_Loop_Example
Dim LCounter1 Som heltal
Dim LCounter2 Som heltal
För LCounter1 = 1 till 4
För LCounter2 = 8 till 9
MsgBox LCounter1 & «-» & LCounter2
Nästa LCounter2
Nästa LCounter1
End Sub
Här har vi 2 FOR-slingor. Den yttre FOR-slingan styrs av variabeln LCounter1. Den inre FOR-slingan styrs av variabeln LCounter2.
I det här exemplet kommer den yttre FOR-slingan att upprepas 4 gånger (börjar vid 1 och slutar vid 4) och den inre FOR-slingan kommer att upprepas 2 gånger (börjar vid 8 och slutar vid 9). Inne i den inre slingan skulle koden visa en meddelanderuta åt gången med värdet av LCounter1 - LCounter2. Så i det här exemplet skulle 8 meddelanderutor visas med följande värden: 1-8, 1-9, 2-8, 2-9, 3-8, 3-9, 4-8 och 4-9.
Triple Loop med FOR NEXT VBA i Excel
Låt oss sedan titta på ett exempel på hur man skapar en trippel FOR-loop i Microsoft Excel.
T.ex.:
Sub Triple_Loop_Example
Dim LCounter1 Som heltal
Dim LCounter2 Som heltal
Dim LCounter3 Som heltal
För LCounter1 = 1 till 2
För LCounter2 = 5 till 6
För LCounter3 = 7 till 8
MsgBox LCounter1 & «-» & LCounter2 & «-» & LCounter3
Nästa LCounter3
Nästa LCounter2
Nästa LCounter1
End Sub
Här har vi 3 FOR-slingor. Den yttersta FOR-slingan styrs av variabel LCounter1. Följande FOR-slinga styrs av variabel LCounter2. Den innersta FOR-slingan styrs av variabel LCounter3
I det här exemplet skulle den yttersta FOR-slingan loopa 2 gånger (börjar vid 1 och slutar vid 2), nästa FOR-loop skulle loopa 2 gånger (börjar vid 5 och slutar vid 6), och FÖR slinga innersta skulle vara loop 2 gånger (börjar vid 7 och slutar vid 8).
Inne i den innersta slingan skulle koden visa en meddelanderuta åt gången med värdet av LCounter1 - LCounter2 - LCounter3. Denna kod skulle visa 8 meddelanderutor med följande värden: 1-5-7, 1-5-8, 1-6-7, 1-6-8, 2-5-7, 2-5-8, 2- 6-7 och 2-6-8.
FÖR NÄSTA VBA Exempel 1 i Excel
I det första exemplet kommer vi att använda FOR NEXT VBA-satsen i Excel för att gå igenom produkterna i kolumn A och uppdatera lämplig applikationstyp i kolumn B.
Sub totn_for_loop_example1()
Dim LCounter som heltal
För LCounter = 2 till 4
Om Cells(LCounter, 1).Value = "Excel" Då
Cells(LCounter, 2).Value = "Kalkylblad"
ElseIf Cells(LCounter, 1).Value = "Access" Då
Cells(LCounter, 2).Value = "Databas"
ElseIf Cells(LCounter, 1).Value = "Word" Då
Cells(LCounter, 2).Value = "Ordbehandlare"
Det kommer att sluta om
Nästa LCounter
End Sub
FÖR NÄSTA VBA Exempel 2 i Excel
I det andra exemplet har vi en lista över deltagare i kolumn A och vi kommer att använda två FOR-loopar för att tilldela var och en av deltagarna till Lag A eller Lag B (växla mellan de två).
Sub totn_for_loop_example2()
Dim LCounter1 som heltal
Dim LCounter2 som heltal
För LCounter1 = 2 till 9 Steg 2
Cells(LCounter1, 2).Value = "Lag A"
Nästa LCounter1
För LCounter2 = 3 till 9 Steg 2
Cells(LCounter2, 2).Value = "Dator B"
Nästa LCounter2
End Sub
Du kan också gilla: Hur man kopierar ett Excel-ark till en annan arbetsbok – Handledning
Som du kommer att se, med dessa exempel på FOR NEXT VBA-satser i Excel kan du enkelt skapa loopar i Microsoft Visual Basic-redigeraren med denna logiska funktion. Vi hoppas att vi har hjälpt dig.
Jag heter Javier Chirinos och jag brinner för teknik. Så länge jag kan minnas var jag förtjust i datorer och tv-spel och den hobbyn hamnade i ett jobb.
Jag har publicerat om teknik och prylar på Internet i mer än 15 år, särskilt inom mundobytes.com
Jag är även expert på onlinekommunikation och marknadsföring och har kunskap om WordPress-utveckling.