Collabora Office 24.04 Hjælp
Gentager udtrykkene i blokken For...Next et angivet antal gange.
For counter=start To end [Step step]
udtryksblok
[Exit For]
udtryksblok
Next [counter]
For Each item In list
udtryksblok
[Exit For]
udtryksblok
Next [item]
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 Collabora Office 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 Collabora Office 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
I indlejrede For...Next-løkker forlades kun én løkke, hvis du ubetinget forlader en løkke med Exit For.
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