Indhold
Indholdsfortegnelse 🔎︎

# For...Next-udtryk

Repeats the statements between the For...Next block a specified number of times.

## Syntaks:

    For counter=start To end [Step step]
        statement-block
        [Exit For]
        statement-block
    Next [counter]

      For Each item In list
          statement-block
      [Exit For]
          statement-block
      Next [item]

## Variable:

tæller: Gennemløbs-counter i begyndelsen tildelt værdien til højre for lighedstegnet (start). Kun numeriske værdier er gyldige. Gennemløbstælleren øges eller mindskes i følge variablen step indtil end passeres.

start: Numerisk variabel, som definerer startværdien i begyndelsen af gennemløbet.

end: Numerisk variabel, der bestemmer slutværdien i afslutningen af gennemløbet.

step: Sætter den værdi, som gennemløbstælleren øges eller mindskes med. Hvis step ikke er specificeret, forøges gennemløbstælleren med 1. I dette tilfælde skal end være større end start. Hvis du vil formindske counter, skal end være mindre end start og step skal tildeles en negativ værdi.

Løkken For...Next gentager alle sætningerne i løkken antallet af gange, som bliver angivet af parametrene.

Efterhånden som variablen counter formindskes, tjekker LibreOffice Basic, om værdien end er nået. Så snart som counter passerer værdien end, afbrydes gennemløbet automatisk.

Det er muligt at indlejre For...Next sætninger. Hvis du ikke angiver en variabel efter sætningen Next, henviser Next automatisk til den seneste For sætning.

Hvis du angiver et trin på 0, vil sætningerne mellem For og Next blive gentaget fortløbende.

Når der tælles ned på tæller-variablen, tjekker LibreOffice Basic for overflow eller underflow. Gennemløbet slutter, når counter overstiger end (positiv Step-værdi) eller er mindre end end (negativ Step-værdi).

Brug sætningen Exit For for at forlade løkken ubetinget. Denne sætning skal være indenfor en For...Next løkke. Brug sætningen If...Then for at teste afslutningsbetingelsen på følgende måde:

      For...
          statement-block
          If condition = True Then Exit For
          statement-block
      Next

I indlejrede For...Next-gennemløb forlades kun ét gennemløb, hvis du ubetinget forlader et gennemløb med Exit For.

## Examples

Dette eksempel bruger to indlejrede løkker til at sortere et strengmatrix med 10 elementer (sEntry() ), som fyldes med forskelligt indhold.

    Sub ExampleSort
    Dim sEntry(9) As String
    Dim iCount As Integer, iCount2 As Integer
    Dim sTemp As String
        sEntry = Array("Jerry","Patty","Kurt","Thomas","Michael",_
                     "David","Cathy","Susie","Edward","Christine")
        For iCount = 0 To 9
            For iCount2 = iCount + 1 To 9
                If sEntry(iCount) > sEntry(iCount2) Then
                    sTemp = sEntry(iCount)
                    sEntry(iCount) = sEntry(iCount2)
                    sEntry(iCount2) = sTemp
                End If
            Next iCount2
        Next iCount
        For iCount = 0 To 9
            Print sEntry(iCount)
        Next iCount
    End Sub

This explores the content of an array to display each item it contains.

      Sub list_iteration
          cutlery = Array("gaffel", "kniv", "ske")
          For Each item in cutlery
              Print item
          Next ' item
      End Sub