Come utilizzare l'istruzione goto nel codice vba?
L’istruzione VBA GoTo aiuta l’esecuzione del codice a passare a una riga specifica nella procedura. In termini semplici, con l’istruzione goto, VBA salta su una determinata riga specificata. Ad esempio, se hai specificato di passare alla seconda riga, vai salterà a quella riga.
Come utilizzare l’istruzione VBA GoTo nel codice
- Per prima cosa devi usare l’istruzione goto.
- Dopodiché devi definire dove vuoi che VBA vada da goto.
- Successivamente, crea il tag per creare questo luogo nella procedura.
- Alla fine, aggiungi le righe di codice che desideri eseguire.
Sub vba_goto() GoTo Last Range ("A1"). Select Last : Range ("A12"). Select End Sub
Vai a per ripetere un codice
Puoi anche utilizzare l’istruzione go to per ripetere il codice utilizzando una serie di condizioni.
Sub goto_repeat() Dim iMessage As String Question: iMessage = InputBox("what's the day today?") If iMessage <> "tuesday" Then MsgBox ("wrong answer, try again.") GoTo Question Else MsgBox ("that's the right answer.") End If End Sub
Quando esegui il codice sopra ti verrà chiesto il nome del giorno e se inserisci qualcosa di diverso da “Martedì” ripeterà la domanda. Se guardi il codice, puoi vedere che dobbiamo usare l’istruzione goto e l’ istruzione if .
Ora, quando l’utente inserisce qualcosa di diverso dalla risposta corretta, l’istruzione goto forza VBA a ripetere il codice. (ma ogni volta che usi questo tipo di codici devi stare molto attento perché può creare un loop infinito.
VBA Vai alla fine
Puoi anche uscire da un sub usando l’istruzione goto.
Nel codice precedente, abbiamo utilizzato il tag “last” subito prima dell’istruzione end e quando VBA raggiunge l’istruzione GoTo, fa passare VBA a “Last” alla fine della procedura.
Istruzione GoTo per andare a una riga in un’altra subroutine
Bene, andare all’istruzione è abbastanza utile per far saltare VBA da un posto all’altro, ma non è possibile farlo saltare a un’altra procedura nel modulo .