Ajuda do Collabora Office 24.04
Repete as instruções entre os blocos For...Next num determinado número 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 de repetições com valor inicial atribuído à direita do sinal de igual (início). Somente variáveis numéricas são válidas. O contador de repetições aumentará ou diminuirá de acordo com a variável passo até que o valor fim é atingido.
início: variável numérica que define o valor no início da repetição.
fim: variável numérica que define o valor no fim do repetição.
passo: Define o valor pelo qual se incrementa ou decrementa o contador de iteração. Se passo não for definido, o contador é incrementado de 1. Neste caso, fim deve ser maior que início. Se desejar diminuir contador, fim deve ser menor que início, e passo deve ser um valor negativo.
O comando For...Next repete todas as instruções de acordo com o número de vezes especificado pelos parâmetros.
Quando a variável contador é decrementada, o Collabora Office Basic verifica se o valor de fim foi alcançado. Assim que contador ultrapassa o valor fim, o ciclo encerra automaticamente.
É possível aninhar 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 você especificar um incremento 0, as instruções entre For e Next serão repetidas continuamente.
Ao decrementar a variável contadora, o Collabora Office Basic verifica se há overflow ou underflow. O laço termina quando contador ultrapassa fim (valor de passo positivo) ou é menor que fim (valor de passo negativo).
Use a instrução Exit For para encerrar a repetição incondicionalmente. Essa instrução deve estar contida no comando For...Next. Use a instrução If...Then para testar a condição de saída da seguinte forma:
For...
bloco de instruções
If condition = True Then Exit For
bloco de instruções
Next
Nos comandos For...Next aninhados, se você sair de uma repetição incondicionalmente com Exit For, somente o nível atual de interação será encerrado.
O exemplo a seguir usa duas repetições aninhadas para ordenar um vetor de cadeia de caracteres com 10 elementos ( sEntry() ), que primeiro são preenchidos com diversos conteúdos:
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
Isso explora o conteúdo do vetor ao exibir cada item contido.
Sub iteracao_lista
cutlery = Array("garfo", "faca", "colher")
For Each item in cutlery
Print item
Next ' item
End Sub