Dichiarazione Excel VBA GoTo

L'istruzione VBA Goto viene utilizzata per superare gli errori previsti mentre aggiungiamo e creiamo un enorme codice di linee in VBA. Questa funzione in VBA ci consente di utilizzare il codice completo secondo le nostre previsioni o ipotesi. Con l'aiuto di Goto possiamo andare a qualsiasi codice di linea o posizione specificato in VBA. Esistono due modi per farlo, che vedremo nei prossimi esempi.

Come utilizzare Excel VBA Goto Statement?

Impareremo come utilizzare la Dichiarazione Voto Excel VBA con alcuni esempi.

Puoi scaricare questo modello VBA GoTo Excel qui - Modello VBA GoTo Excel

Esempio 1

Il primo modo di utilizzare VBA Goto è tramite il metodo Application.Goto . Con l'aiuto dell'istruzione Application.Goto possiamo accedere a qualsiasi posizione, cartella di lavoro o foglio di lavoro specifici attualmente aperti. Questa affermazione apparirà come di seguito.

  • (Riferimento): questo non è altro che un riferimento di cella specificato. Se il riferimento non viene fornito per impostazione predefinita, ti porterà all'ultimo intervallo di celle utilizzato.
  • (Scorri): questa è un'istruzione logica di VERO o FALSO. Se il valore è VERO scorrerà attraverso la finestra, se il valore se FALSO non scorrerà attraverso la finestra.

Per questo vai alla finestra VBA e fai clic su Modulo che si trova nel menu Inserisci come mostrato di seguito.

Ora aprirà un nuovo modulo. Qui scrivi la sottocategoria di una macro con il nome di Goto mentre eseguiamo quel codice come mostrato di seguito.

Codice:

 Sub VBAGoto () End Sub 

Ora scrivi Application.Goto per abilitare l'applicazione o il luogo in cui vogliamo andare.

Codice:

 Sub VBAGoto () Application.Goto End Sub 

Successivamente, fai riferimento a qualsiasi foglio di lavoro o cartella di lavoro e intervallo di celle. Qui abbiamo fornito la gamma di celle B3 e fogli di lavoro denominati "VBA Goto".

Codice:

 Sub VBAGoto () Riferimento Application.Goto: = Fogli di lavoro ("VBA_Goto1"). Range ("B3"), End Sub 

Ora per andare effettivamente alla cella menzionata dobbiamo aggiungere l'argomento Scroll che ci porterà direttamente alla cella specificata. Ora cambieremo l'argomento scroll da FALSE come mostrato di seguito.

Codice:

 Sub VBAGoto () Riferimento Application.Goto: = Fogli di lavoro ("VBA_Goto1"). Range ("B3"), Scorrimento: = False End Sub 

Dopo aver eseguito il codice usando il tasto F5 o manualmente, vedremo che il cursore verrà spostato sulla cella B3 senza cambiare l'orientamento del foglio selezionato come mostrato di seguito.

Ora cambieremo l'argomento Scroll da FALSE a TRUE.

Codice:

 Sub VBAGoto () Riferimento Application.Goto: = Fogli di lavoro ("VBA_Goto1"). Range ("B3"), Scorrimento: = Sottotitolo True End 

Inizialmente, manteniamo il cursore sulla cella A5 come mostrato di seguito. Ora esegui il codice completo usando il tasto F5 o manualmente. Vedremo il cursore che si trovava nella cella A5, ora viene fatto scorrere verso l'alto e spostato nella cella B3 e l'intera tabella si è spostata al livello superiore del foglio a partire dalla stessa cella che B3, come mostrato nell'immagine seguente.

Esempio n. 2

C'è un altro modo di usare l'argomento VBA Goto. Utilizzando Goto in VBA in questo esempio, possiamo saltare l'argomento che causa un errore. Per questo, inserisci un nuovo modulo in VBA e avvia la Sottocategoria con il nome dell'argomento usato come mostrato di seguito. Puoi usare qualsiasi altro nome.

Codice:

 Sub VBAGoto () End Sub 

Per questo, considereremo 3 numeri interi X, Y e Z aprendo la sottocategoria in VBA come mostrato di seguito.

Codice:

 Sub VBAGoto () Dim X come intero, Y come intero, Z come intero Sottotitolo 

Ora considera anche alcune divisioni matematiche in cui divideremo 10, 20 e 30 con 0, 2 e 4 come mostrato di seguito.

Codice:

 Sub VBAGoto () Dim X come intero, Y come intero, Z come intero X = 10/0 Y = 20/2 Z = 30/4 End Sub 

Se eseguiamo il codice avremo lo stesso messaggio di errore dell'errore di run-time 11.

Messaggio di errore sopra L'errore di runtime "11" viene visualizzato solo quando l'espressione matematica scritta non è corretta. Ora per annullare questo errore, useremo il testo On Error GoTo con la parola YResult per saltare il messaggio di errore e ottenere l'output che funziona correttamente come mostrato di seguito.

Tuttavia, il nostro codice non è completo. L'uso di Vai a " YResult :" salterà solo la riga di errore del codice. Ma mostrerà nuovamente l'errore come Labe non definito come mostrato di seguito.

Codice:

 Sub VBAGoto () Dim X come numero intero, Y come numero intero, Z come numero intero su errore Vai a YRisultato: X = 10/0 Y = 20/2 Z = 30/4 Termina sub 

Ora per completarlo, dobbiamo definire l' etichetta . L'etichetta è la parte dell'istruzione in VBA Coding, che viene utilizzata quando si desidera saltare una determinata porzione di codice a qualsiasi riga di codice applicabile definita. Come abbiamo già YResult con argomento Goto . Quindi inseriremo lo stesso appena prima dell'intero Y. Ora eseguiamo nuovamente il codice.

Codice:

 Sub VBAGoto () Dim X come numero intero, Y come numero intero, Z come numero intero su errore Vai a YRisultato: X = 10/0 YRisultato: Y = 20/2 Z = 30/4 Termina sub 

Come visto e fatto, non abbiamo ricevuto alcun messaggio di errore che significa che il nostro codice è corretto e sta saltando quella riga di codice che stava causando un errore e dando l'output in cui è stato scritto il codice corretto. Ora per stampare il risultato del codice è necessario inserire finestre di messaggio per ciascun numero intero con l'argomento della guida MsgBox come mostrato di seguito.

Codice:

 Sub VBAGoto () Dim X come numero intero, Y come numero intero, Z come numero intero su errore Vai a YResult: X = 10/0 YRisult: Y = 20/2 Z = 30/4 MsgBox X MsgBox Y MsgBox Z End Sub 

Una volta fatto, esegui il codice completo per vedere l'output. Forniremo l'output della divisione di ogni numero intero definito come 0, 10 e 8, come mostrato anche nello screenshot seguente.

On Error GoTo L' istruzione YResult ci ha aiutato a saltare direttamente al numero intero del punto di risultato menzionato come abbiamo fatto per l'intero Y. E l'output per X come 0 mostra che è stato scritto un argomento dell'istruzione errato. Possiamo etichettare anche prima di Z ma questo ci darebbe solo il risultato del numero intero Z. Per X e Y mostrerà di nuovo 0 come output.

Pro di VBA On Error

  • Possiamo calcolare qualsiasi formula matematica anche se non è corretta.
  • Per strutture di codifica più grandi in cui vi sono possibilità o errori, l'utilizzo di GoTo può fornire risultati corretti anche tra le righe di codice.
  • Questo dà un risultato migliore rispetto al risultato ottenuto dai normali calcoli di Excel nonostante una discussione errata.

Cose da ricordare

  • Ricorda il file nel file Excel abilitato per le macro in modo che possiamo utilizzare il codice VBA creato più e più volte.
  • Compilare il codice scritto prima di implementarlo con qualsiasi requisito Excel.
  • È possibile assegnare il codice scritto a qualsiasi pulsante in modo da poter fare rapidamente clic sul pulsante ed eseguire il codice.
  • Utilizzare Label come mostrato nell'esempio 2 in modo appropriato in modo da ottenere il risultato per il codice corretto completo.

Articoli consigliati

Questa è stata una guida all'istruzione GoTo VBA. Qui abbiamo discusso su come utilizzare l'istruzione Excel VBA GoTo insieme ad alcuni esempi pratici e modello Excel scaricabile. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Come usare i loop VBA di Excel?
  2. Funzione VBA in Excel
  3. Guida all'intervallo in Excel
  4. Come usare la funzione VBA VLOOKUP?

Categoria: