For...Next-udtryk

Gentager udtrykkene i blokken For...Next et angivet antal gange.

Syntaks:

Diagram over udtrykket For


For counter=start To end [Step step]
    udtryksblok
    [Exit For]
    udtryksblok
Next [counter]

Diagram over udtrykket For Each


  For Each item In list
      udtryksblok
  [Exit For]
      udtryksblok
  Next [item]

Variable:

t√¶ller: Loop-counter i begyndelsen tildelt v√¶rdien til h√łjre for lighedstegnet (start). Kun numeriske v√¶rdier er gyldige. L√łkke-t√¶lleren √łges eller mindskes i f√łlge variablen step indtil end passeres.

start: Numerisk variabel, som definerer startv√¶rdien i begyndelsen af l√łkken.

end: Numerisk variabel, der bestemmer slutv√¶rdien i afslutningen af l√łkken.

step: S√¶tter den v√¶rdi, som l√łkke-t√¶lleren √łges eller mindskes med. Hvis step ikke er specificeret, for√łges l√łkke-t√¶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 l√łkken 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. L√łkken afsluttes, 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...
      udtryksblok
      If condition = True Then Exit For
      udtryksblok
  Next
note

I indlejrede For...Next-l√łkker forlades kun √©n l√łkke, hvis du ubetinget forlader en l√łkke med Exit For.


Eksempler

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

Dette udforsker indholdet i en matrix for at vise hvert element, den indeholder.


  Sub list_iteration
      bestik= Array("gaffel", "kniv", "ske")
      For Each element i bestik
          Print element
      Next ' element
  End Sub

St√łt os venligst!