Share via


Scelta tra due possibilità: istruzione If...Then

Aggiornamento: novembre 2007

In questa lezione verrà descritto come utilizzare l'istruzione If...Then per eseguire codice in base a particolari condizioni.

I programmi devono eseguire operazioni diverse in risposta a condizioni diverse. Ad esempio, un programma potrebbe dover verificare il giorno della settimana ed eseguire un'operazione diversa in base al giorno. L'istruzione If...Then consente di valutare una condizione e di eseguire sezioni di codice diverse in base ai risultati di tale condizione.

Nell'esempio riportato di seguito viene illustrato l'utilizzo dell'istruzione If...Then.

If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Monday Then
  MsgBox("Today is Monday!")
End If

Quando viene eseguito questo codice, viene valutata la condizione, ovvero la parte compresa tra le parole chiave If e Then. Se la condizione è vera, verrà eseguita la riga di codice successiva e verrà visualizzata una finestra di messaggio. Se è falsa, il codice passerà alla riga End If. In altre parole, questo codice consente di visualizzare il messaggio solo se il giorno corrente è lunedì.

Procedura

Per utilizzare l'istruzione If...Then

  1. Scegliere Nuovo progetto dal menu File.

  2. Nel riquadro Modelli della finestra di dialogo Nuovo progetto fare clic su Applicazione Windows.

  3. Digitare IfThen nella casella Nome, quindi scegliere OK.

    Verrà aperto un nuovo progetto Windows Form.

  4. Fare doppio clic sul form per aprire l'editor di codice.

  5. Nel gestore eventi Form1_Load digitare il codice riportato di seguito.

    If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Saturday Or _
      My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Sunday Then
      MsgBox("Happy Weekend!")
    End If
    
  6. Premere F5 per eseguire il programma.

    Se il giorno corrente è sabato o domenica, verrà visualizzato il testo Happy Weekend! all'interno di una finestra di messaggio. Altrimenti, non verrà visualizzata alcuna finestra di messaggio.

  7. Scegliere Termina debug dal menu Debug per terminare il programma. Tenere aperto il progetto perché nella procedura successiva "Per utilizzare la clausola Else" verrà aggiunto altro codice.

Durante l'esecuzione dell'esempio precedente, nell'istruzione If...Then è stato utilizzato l'operatore Or per valutare più condizioni, ovvero per verificare se il giorno corrente è sabato oppure (Or) domenica. Gli operatori Or e And consentono di valutare un numero qualsiasi di condizioni in una singola istruzione If...Then.

Clausola Else

Fino ad ora è stato descritto come utilizzare l'istruzione If...Then per eseguire codice se una condizione viene soddisfatta. Verrà a questo punto indicato come eseguire sezioni di codice diverse a seconda che una condizione venga soddisfatta o meno. In questo caso è possibile utilizzare la clausola Else. La clausola Else consente di specificare un blocco di codice che verrà eseguito se la condizione è falsa. Nell'esempio riportato di seguito viene illustrato l'utilizzo della clausola Else.

If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Friday Then
  MsgBox("Today is Friday!")
Else
  MsgBox("It isn't Friday yet!")
End If

In questo esempio, viene valutata l'espressione. Se la condizione viene soddisfatta (restituisce True), verrà eseguita la successiva riga di codice e verrà visualizzata la prima finestra di messaggio. Se la condizione non viene soddisfatta (restituisce False), il codice passerà alla clausola Else, verrà eseguita la riga che segue Else e verrà visualizzata la seconda finestra di messaggio.

Procedura

La procedura riportata di seguito inizia dove termina la procedura "Per utilizzare l'istruzione If...Then". Se quest'ultima non è stata completata, è necessario effettuare questa operazione prima di proseguire.

Per utilizzare la clausola Else

  1. Modificare il codice dell'istruzione If...Then come illustrato di seguito.

    If My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Saturday Or _
      My.Computer.Clock.LocalTime.DayOfWeek = DayOfWeek.Sunday Then
      MsgBox("Happy Weekend!")
    Else
      MsgBox("Happy Weekday! Don't work too hard!")
    End If
    
  2. Premere F5 per eseguire il programma. Il programma visualizzerà una finestra di messaggio contenente un testo appropriato per segnalare all'utente se il giorno corrente cade su settimana o durante il fine settimana.

    Nota:

    Per eseguire il test dell'esecuzione di entrambi i blocchi di codice, è possibile modificare il giorno della settimana facendo doppio clic sull'ora nella barra delle applicazioni di Windows, ovvero la barra che contiene il pulsante Start di Windows. Per impostazione predefinita, la barra delle applicazioni si trova nella parte inferiore del desktop e l'ora è visualizzata nell'angolo destro.

Passaggi successivi

In questa lezione è stato descritto come utilizzare l'istruzione If...Then insieme alla clausola Else per eseguire nel programma blocchi di codice diversi in base a particolari condizioni in fase di esecuzione. A questo punto è possibile scegliere se imparare a selezionare il codice da eseguire in Informazioni dettagliate: utilizzo dell'istruzione Select Case per la scelta tra più possibilità oppure proseguire con la lezione successiva Definizione del codice per la gestione degli errori.

Vedere anche

Attività

Ripetizione di azioni: utilizzo di un ciclo For...Next

Confronti: utilizzo di espressioni per il confronto di valori

Riferimenti

Istruzione If...Then...Else (Visual Basic)