VBA for neste - Veiledning for bruk av Excel VBA for neste uttalelse

Innholdsfortegnelse

Excel VBA for neste løkke

VBA For Next-sløyfe er en sløyfe som brukes blant alle programmeringsspråkene. I denne sløyfen er det et kriterium etter for-setningen som koden sløyfer i sløyfen til kriteriene er nådd, og når kriteriene er nådd, styrer neste setning prosedyren til neste trinn i koden.

“For Next” loop er en av de sløyfene som brukes veldig ofte enn andre sløyfer i VBA-koding. Sløyfer vil hjelpe oss å gjenta den samme typen oppgaver for spesifiserte celler til tilstanden er SANT.

FOR LOOP sløyfer gjennom celleområdet og utfører en bestemt oppgave til tilstanden er SANT. Hvis du for eksempel vil gå gjennom de første 10 cellene og sette inn serienumre inkrementert med 1, kan du bruke FOR NEXT loop.

Denne sløyfen trenger en variabel for å kjøre sløyfen. Ved å bruke denne variabelen kan vi dynamisk referere til cellene.

Den inneholder tre parametere.

For Statement = Startpunkt til sluttpunkt (Utfør noen oppgave) Neste uttalelse

Fra startpunktet vil sløyfe starte og utføre noen oppgaver etter at oppgaven er fullført, og flytte til neste sløyfe og utføre den samme oppgaven i den forskjellige cellen. Slik fortsetter den å utføre den angitte oppgaven til den når endepunktet.

Hvordan bruker jeg VBA For Next Loop?

Anta at du vil sette inn serienumre fra 1 til 10 til A1 til A10-celler. Selvfølgelig kan vi sette inn som å skrive ti kodelinjer.

Kode:

Sub For_Next_Loop_Example1 () Område ("A1"). Verdi = 1 Område ("A2"). Verdi = 2 Område ("A3"). Verdi = 3 Område ("A4"). Verdi = 4 Område ("A5") Verdi = 5 Område ("A6"). Verdi = 6 Område ("A7"). Verdi = 7 Område ("A8"). Verdi = 8 Område ("A9"). Verdi = 9 Område ("A10") .Value = 10 End Sub

Men hva om jeg vil sette inn 100 serienumre? Selvfølgelig kan jeg ikke skrive 100 kodelinjer bare for å sette inn serienumre. Det er her skjønnheten til “FOR NEXT” -sløyfen kommer inn i bildet. Følg trinnene nedenfor for å minimere koden.

Trinn 1: Først må vi definere en variabel. Jeg har erklært variabelnavnet kalt "Serial_Number" som en heltalsdatatype .

Kode:

Sub For_Next_Loop_Example2 () Dim Serial_Number Som Integer End Sub

Trinn 2: Nå bestiller jeg å bruke FOR NEXT loop, vårt mål er å sette inn serienumre fra 1 til 10, så dette betyr at loopen vår må løpe ti ganger. Så FOR LOOP-uttalelse skal være slik.

For Serial_Number = 1 til 10

Neste Serienummer

Kode:

Sub For_Next_Loop_Example2 () Dim Serial_Number Som Integer For Serial_Number = 1 til 10 Neste Serial_Number End Sub

Trinn 3: Vi har brukt løkken. Nå når løkken er brukt, må vi spesifisere hva vi må gjøre inne i løkken. Målet vårt er å sette inn serienumre fra 1 til 10. Så skriv koden som celler (Serial_Number, 1) .Value = Serial_Number.

Kode:

Sub For_Next_Loop_Example2 () Dim Serial_Number As Integer Dim Serial_Number = 1 To 10 Cells (Serial_Number, 1). Value = Serial_Number Dim Serial_Number End Sub

Trinn 4: Årsaken til at vi hadde gitt Serial_Number i CELLS-egenskapen fordi vi ikke kan spesifisere hardcore-nummeret for radreferanse her. Hver gang loop går, vil jeg sette inn det nye serienummeret i den nye cellen, ikke i den samme cellen.

Trinn 5: Kjør koden linje for linje ved å trykke på F8-tasten.

Trinn 6: Plasser en markør på variabelen Serial_Number; den viser gjeldende verdi av Serial_Number.

På dette tidspunktet er Serienummer-verdien null.

Trinn 7: Trykk en gang til på F8-tasten, den gule fargen vil flytte til neste kodelinje i VBA. Plasser nå en markør på Serial_Number.

Nå er verdien til Serial_Number lik en fordi nå loop er startet og loop vår starter fra 1, så variabelen Serial_Number verdi er lik en.

En annen interessant ting her er hvor variabelen Serial_Number er der, det er også lik 1.

Så i celleegenskapen har vi nevnt koden som:

Celler (Serienummer, 1). Verdi = Serienummer

Dette betyr celler (1, 1). Verdi = 1. (celler (1,1) betyr rad 1 og kolonne1.

Så i rad nummer 1 og kolonne nummer 1, bør verdien være 1.

Trinn 8: Trykk nå på F8 en gang til og se hva som skjer i rad 1 og kolonne1, dvs. celle A1.

Så vi fikk 1 som verdien, altså verdien av Serial_Number.

Trinn 9: Trykk nå på F8-tasten en gang til. Vanligvis skal neste kode kjøres, dvs. slutten av underhuset. Men her vil det gå tilbake til "linjen over."

Trinn 10: Husk at løkken allerede fullførte den første kjøringen. Nå kommer den tilbake for andre gang. Plasser nå en markør på variabelen Serial_Number og se hva verdien er.

Nå er variabel Serial_Number lik 2 fordi løkken allerede returneres for andre gang.

Nå, uansett hvor Serial_Number er, er det lik verdien til 2. Så linjekoden:

Celler (Serial_Number, 1) .Value = Serial_Number er lik:

Celler (2, 1). Verdi = 2. (Celler (2,1) betyr rad 2 og kolonne1, dvs. A2-celle).

Trinn 11: Kjør denne koden og se verdien i A2-cellen.

Så vi fikk den andre serienummerverdien.

Trinn 12: Trykk nå på F8-tasten. Det vil igjen gå tilbake til linjen ovenfor for å gjenta koden. Denne gangen vil Serienummer-verdien være 3.

Trinn 13: Så uansett hvor Serial_Number er, er det lik 3.

linjekoden : Cells (Serial_Number, 1) .Value = Serial_Number er lik:

Celler (3, 1). Verdi = 3. (Celler (3,1) betyr rad 3 og kolonne1, dvs. A3-celle).

Trinn 14: Trykk på F8 for å utføre den markerte linjen og se verdien i A3-cellen.

Trinn 15: Fortsett å trykke på F8. Det fortsetter å sette inn serienumrene. Momentverdien til variabelen Serial_Number er 10, den stopper looping og går ut av loop.

Interessante artikler...