Ajuda do LibreOffice 26.2
Repete as instruções contidas no bloco For...Next um número especificado de vezes.
For counter=start To end [Step step]
bloco de instruções
[Exit For]
bloco de instruções
Next [counter]
For Each item In list
bloco de instruções
[Exit For]
bloco de instruções
Next [item]
contador: O contador do ciclo contador é inicialmente atribuído ao valor à direita do sinal de igual (início). Apenas são válidas variáveis numéricas. O contador do ciclo aumenta ou diminui de acordo com a variável passo até que fim seja ultrapassado.
start: Variável numérica que define o valor inicial no início do ciclo.
end: Variável numérica que define o valor final no final do ciclo.
step: Define o valor pelo qual o contador do ciclo deve ser aumentado ou diminuído. Se step não for especificado, o contador do ciclo é incrementado em 1. Neste caso, end deve ser maior do que start. Se pretender diminuir counter, end deve ser menor do que start e deve ser atribuído um valor negativo a step.
O ciclo For...Next repete todas as instruções no ciclo durante o número de vezes especificado pelos parâmetros.
À medida que a variável counter vai diminuindo, o LibreOffice Basic verifica se o valor end foi atingido. Assim que o counter ultrapassar o valor end, o ciclo termina automaticamente.
É possível imbricar instruções For...Next. Se não especificar uma variável a seguir à instrução Next, Next consulta automaticamente a instrução For mais recente.
Se especificar um incremento de 0, as instruções entre For e Next repetem-se continuamente.
Ao fazer a contagem decrescente da variável contador, o LibreOffice Basic verifica se há overflow ou underflow. O ciclo termina quando contador excede end (valor positivo de Step) ou é inferior a end (valor negativo de Step).
Utilize a instrução Exit For para terminar o ciclo incondicionalmente. Esta instrução terá de estar num ciclo For...Next. Utilize a instrução If...Then para testar a condição de fim como se segue:
For...
bloco de instruções
If condition = True Then Exit For
bloco de instruções
Next
Em loops For...Next aninhados, se sair de um loop incondicionalmente com Exit For, apenas um loop é abandonado.
Exemplos
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
Isto analisa o conteúdo de um array para apresentar cada elemento que este contém.
Sub list_iteration
talheres = Array("garfo", "faca", "colher")
Para cada peça de talheres
Imprimir item
Próximo « item
Fim do Sub