Istruzioni condizionali

From Apache OpenOffice Wiki
Jump to: navigation, search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Utilizzate le istruzioni condizionali per limitare l'esecuzione di un blocco di codice finché non è soddisfatta una particolare condizione.

If...Then...Else

L'istruzione condizionale più comune è l'istruzione If come illustrato nell'esempio seguente:

If A > 3 Then
  B = 2
End If

L'assegnazione B = 2 si verifica solo quando il valore della variabile A è maggiore di tre. Una variazione dell'istruzione If è la clausola If/Else:

If A > 3 Then
  B = 2
Else
  B = 0
End If

In questo esempio, alla variabile B viene assegnato il valore 2 se A è maggiore di 3; in caso contrario a B viene assegnato il valore 0.

Per dichiarazioni più complesse, è possibile inserire a cascata l'istruzione If, ad esempio:

If A = 0 Then
  B = 0
ElseIf A < 3 Then
  B = 1
Else 
  B = 2
End If

Se il valore della variabile A è uguale a zero, a B viene assegnato il valore 0. Se A è minore di 3 (ma diverso da 0), a B viene assegnato il valore 1. In tutti gli altri casi (ovvero, se A è maggiore o uguale a 3), a B viene assegnato il valore 2.

Select...Case

L'istruzione Select...Case è un'alternativa all'utilizzo di una serie di istruzioni If ed è utilizzata quando occorre verificare un valore a fronte di diverse condizioni:

Select Case DayOfWeek
  Case 1:
    NameOfWeekday = "Sunday"
  Case 2: 
    NameOfWeekday = "Monday"
  Case 3: 
    NameOfWeekday = "Tuesday"
  Case 4:
    NameOfWeekday = "Wednesday"
  Case 5:
    NameOfWeekday = "Thursday"
  Case 6:
    NameOfWeekday = "Friday"
  Case 7:
    NameOfWeekday = "Saturday"
End Select

In questo esempio, il nome del giorno della settimana corrisponde a un numero, così che alla variabile DayOfWeek è assegnato il valore 1 per Sunday, il valore 2 per Monday e così via.

Il comando Select non è limitato alle semplici assegnazioni 1:1. Potete specificare anche operatori di confronto o elenchi di espressioni in una clausola Case. L'esempio seguente elenca la varianti di sintassi di maggiore importanza:

Select Case Var
  Case 1 To 5                   
    ' ... Var is between the numbers 1 and 5
  Case 6, 7, 8                  
    ' ... Var is 6, 7 or 8
  Case Var > 8 And Var < 11     
    ' ... Var is greater than 8 and less than 11
  Case Else
    ' ... all other instances
End Select
Content on this page is licensed under the Public Documentation License (PDL).


Personal tools