Dichiarazione VBA If - Then - Else in Excel (4 esempi)

  • Condividi Questo
Hugh West

Gli enunciati condizionali vengono utilizzati per eseguire una serie di azioni a seconda della condizione specificata nei linguaggi di programmazione. In questo articolo vi mostreremo che cosa si intende per Se - Allora - Altri dichiarazione condizionale in VBA Excel è e come si usa.

Scarica il libro di lavoro

È possibile scaricare la cartella di lavoro Excel gratuita da qui.

Se-Allora-Else in VBA.xlsm

Introduzione all'istruzione If - Then - Else in VBA

VBA If - Then - Else L'istruzione condizionale viene utilizzata principalmente per decidere il flusso di esecuzione delle condizioni. Se la condizione è vera, viene eseguito un certo insieme di azioni, mentre se la condizione è falsa viene eseguito un altro insieme di azioni.

  • Sintassi
 If condition Then [dichiarazioni] [Else else_statements] 

Oppure,

 If condizione Then [dichiarazioni] [Else [else_statements]] End If 

Qui,

Argomento Richiesto/ Facoltativo Descrizione
condizione Richiesto Un'espressione numerica o un'espressione di stringa che valuta se l'espressione è Vero o Falso . se il condizione è nullo, viene considerato Falso .
dichiarazioni Opzionale Un modulo a riga singola che non ha Altro Una o più dichiarazioni devono essere separate da due punti. Se la clausola condizione è Vero , viene eseguita questa istruzione.
altre_dichiarazioni Opzionale Vengono eseguite una o più dichiarazioni se non ci sono precedenti condizione è Vero .

4 esempi di utilizzo dell'istruzione VBA If - Then - Else in Excel

In questa sezione si apprenderà come utilizzare Se-Allora-Else in VBA codice con 4 esempi.

1. Trovare il numero più grande tra due numeri con l'istruzione If - Then - Else

Se si hanno due numeri e si vuole scoprire quale sia il più grande (o il più piccolo), si può usare il metodo Se-Allora-Else dichiarazione in VBA .

Passi:

  • Stampa Alt + F11 sulla tastiera o andare alla scheda Sviluppatore -> Visual Basic per aprire Editor Visual Basic .

  • Nella finestra del codice a comparsa, dalla barra dei menu, fare clic su Inserire -> Modulo .

  • Copiare il codice seguente e incollarlo nella finestra del codice.
 Private Sub BiggestNumber() Dim Num1 As Integer Dim Num2 As Integer Num1 = 12345 Num2 = 12335 If Num1> Num2 Then MsgBox "Il primo numero è maggiore del secondo numero" ElseIf Num2> Num1 Then MsgBox "Il secondo numero è maggiore del primo numero" Else MsgBox "Il primo numero e il secondo numero sono uguali" End If End Sub 

Il codice è ora pronto per essere eseguito.

Qui stiamo confrontando due numeri 12345 e 12335 Questo processo è di solito perfetto per trovare grandi numeri in un grande insieme di dati.

  • Stampa F5 sulla tastiera o dalla barra dei menu selezionare Esegui -> Esegui Sub/UserForm È anche possibile fare clic sul pulsante piccola icona Play nella barra dei menu secondari per eseguire la macro.

Il risultato viene visualizzato nella finestra di Excel MsgBox

Nel nostro caso, il numero 12345 - memorizzato nella variabile Num1 - è maggiore del numero 12335 , Num2 Quindi l'MsgBox ci mostra che il file Il 1° numero è maggiore del 2° numero .

Per saperne di più: Formula di Excel per generare numeri casuali (5 esempi)

2. Controllare il risultato dello studente usando le istruzioni If - Then - Else in VBA

È possibile verificare se uno studente passa o non passa un esame con questa dichiarazione nel file VBA codice.

Passi:

  • Allo stesso modo di prima, aprire Editor Visual Basic dal Sviluppatore e Inserire a Modulo nella finestra del codice.
  • Nella finestra del codice, copiare il codice seguente e incollarlo.
 Sub CheckResult() If Range("D5").Value> 33 Then MsgBox "John's Result is Pass" Else MsgBox "John's Result is Fail" End If End Sub 

Il codice è ora pronto per essere eseguito.

Questo codice controlla se la cella D5 ha un valore maggiore di 33 Se lo fa, mostrerà un'uscita, se non lo fa, mostrerà qualcos'altro.

  • Correre la macro e si otterrà il risultato in base al codice.

Osservate il set di dati di cui sopra con il risultato, Cella D5 prese 95 che è certamente più di 33 , per cui viene visualizzata la dicitura Il risultato è Pass Ma se eseguiamo il codice per Cell D7 (22), allora verrebbe visualizzato il contrario.

Per saperne di più: Come utilizzare la dichiarazione di caso in VBA (13 esempi)

Letture simili

  • Come utilizzare la funzione Log in Excel VBA (5 esempi)
  • Utilizzare la funzione VBA LTrim in Excel (4 esempi)
  • Come usare la funzione VBA FileDateTime in Excel (3 usi)
  • Utilizzare l'operatore VBA Mod (9 esempi)
  • Funzione VBA EXP in Excel (5 esempi)

3. Aggiornare i commenti nel voto degli studenti utilizzando più istruzioni If - Then - Else in VBA

Avete imparato come estrarre se uno studente passa o no con un singolo Se-Allora-Else ma questa volta imparerete a conoscere Più If-Then-Else con il seguente esempio.

Eseguiremo un VBA per compilare i codici Commento in base a più condizioni.

Passi:

  • Allo stesso modo di prima, aprire Editor Visual Basic dal Sviluppatore e Inserire a Modulo nella finestra del codice.
  • Nella finestra del codice, copiare il codice seguente e incollarlo.
 Sub UpdateComment() For Each grade In Range("D5:D10") If grade = "A" Then grade.Offset(0, 1).Value = "Great Work" ElseIf grade = "B" Then grade.Offset(0, 1).Value = "Keep It Up" ElseIf grade = "C" Then grade.Offset(0, 1).Value = "Needs Improvement" Else grade.Offset(0, 1).Value = "Parents-Teacher Meeting" End If Next grade EndSub 

Il codice è ora pronto per essere eseguito.

Questo codice stampa i commenti in base al voto ottenuto dagli studenti.

  • Correre Questo codice viene visualizzato nell'immagine seguente, dove le caselle di commento sono riempite dai risultati appropriati.

4. Dichiarazione If-Then-Else per aggiornare le direzioni cardinali in base al codice in Excel

È inoltre possibile utilizzare la funzione Se-Allora-Else Guardate l'immagine seguente, dove scopriremo le direzioni cardinali in base alle iniziali che sono state date.

Passi:

  • Aperto Editor Visual Basic dal Sviluppatore e Inserire a Modulo nella finestra del codice.
  • Nella finestra del codice, copiare il codice seguente e incollarlo.
 Sub UpdateDir() For Each iDirection In Range("B5:B8") If iDirection = "N" Then iDirection.Offset(0, 1).Value = "North" ElseIf iDirection = "S" Then iDirection.Offset(0, 1).Value = "South" ElseIf iDirection = "E" Then iDirection.Offset(0, 1).Value = "East" Else iDirection.Offset(0, 1).Value = "West" End If Next iDirection EndSub 

Il codice è ora pronto per essere eseguito.

  • Correre questo codice e si otterranno i nomi delle direzioni nelle rispettive celle.

Se invece volete trovare solo una direzione in base al codice, potete usare il codice qui sotto.

 Sub UpdateDirections() Dim iDirection As String Dim iDirectionName As String iDirection = Range("B5").Value If iDirection = "N" Then iDirectionName = "North" ElseIf iDirection = "S" Then iDirectionName = "South" ElseIf iDirection = "E" Then iDirectionName = "East" Else iDirectionName = "West" End If Range("C5").Value = iDirectionName End Sub 

Questo codice prenderà il valore dalla cella B5 e restituisce il risultato in base ad esso nella cella C5 .

Ad esempio, se si scrive " N " in Cell B5 , vi darà " Nord Se si scrive " S " in Cell B5 , vi mostrerà " Sud " in Cell C5 .

Conclusione

Questo articolo ha mostrato come utilizzare il metodo Se - Allora - Altri in Excel con VBA Spero che questo articolo vi sia stato di grande aiuto. Non esitate a chiedere se avete domande sull'argomento.

Hugh West è un istruttore e analista di Excel di grande esperienza con oltre 10 anni di esperienza nel settore. Ha conseguito una laurea in Contabilità e Finanza e un Master in Economia Aziendale. Hugh ha una passione per l'insegnamento e ha sviluppato un approccio didattico unico che è facile da seguire e capire. La sua conoscenza approfondita di Excel ha aiutato migliaia di studenti e professionisti in tutto il mondo a migliorare le proprie competenze ed eccellere nella propria carriera. Attraverso il suo blog, Hugh condivide le sue conoscenze con il mondo, offrendo esercitazioni gratuite su Excel e formazione online per aiutare le persone e le aziende a raggiungere il loro pieno potenziale.