Errore di pedice fuori dall'intervallo in VBA (con 5 soluzioni)

  • Condividi Questo
Hugh West

In questo articolo vi mostreremo le ragioni del " Sottoscritto fuori dall'intervallo "errore in Excel VBA e come risolverli.

Scarica il modello di pratica

È possibile scaricare gratuitamente il modello Excel di esercitazione da qui.

Errore di pedice fuori dall'intervallo in VBA.xlsm

Che cos'è l'errore Subscript Out of Range in VBA?

VBA Sottoscritto fuori dall'intervallo si verifica quando si cerca di accedere a un membro inesistente o a una collezione di array inesistente in Excel. Si tratta di un errore " Errore di esecuzione 9 " tipo di errore in VBA codifica in Excel.

Di solito l'errore si presenta come segue,

5 motivi e soluzioni per l'errore Subscript Out of Range in VBA

In questa sezione verranno discusse le 5 ragioni più comuni per cui si verificano i casi di Sottoscritto fuori dall'intervallo e quali sono le soluzioni.

1. Errore di pedice fuori dall'intervallo in VBA per una cartella di lavoro inesistente

Quando si tenta di accedere a una cartella di lavoro di Excel non aperta, viene visualizzato un messaggio " Sottoscritto fuori dall'intervallo " errore.

Se cerchiamo di Correre il codice mostrato sopra, otterremo l'errore perché non esiste una cartella di lavoro Excel denominata " Vendite " che è attualmente aperto.

Soluzione

Per risolvere questo errore, aprite prima la cartella di lavoro di Excel a cui volete accedere e poi eseguite la macro.

2. Errore di pedice fuori dall'intervallo in VBA per un foglio di lavoro inesistente

Quando si tenta di accedere a un foglio di lavoro che non esiste nella cartella di lavoro di Excel, si ottiene anche il messaggio " Sottoscritto fuori dall'intervallo " in VBA .

Se proviamo a eseguire il codice mostrato sopra, otterremo un errore perché non c'è alcun " Foglio2 " disponibile nella nostra cartella di lavoro.

Soluzione

Per risolvere questo errore, è necessario che il foglio Excel a cui si vuole accedere sia presente nella cartella di lavoro in esecuzione e che la macro venga eseguita.

3. Errore di pedice fuori dall'intervallo in VBA per elementi di array non definiti

Se non si definisce la lunghezza di un Array dinamico con la parola DIM o REDIM in Excel VBA , si otterrà il messaggio " Sottoscritto fuori dall'intervallo " errore.

Nel codice precedente, abbiamo dichiarato la matrice nella dimensione da 5 a 10, ma abbiamo fatto riferimento a un pedice di indice 3, che è inferiore a 5.

Soluzione

Per risolvere questo problema, dichiarare l'indice tra le dimensioni della matrice.

Questo pezzo di codice funziona perfettamente perché qui ci siamo riferiti al pedice dell'indice 5, che si trova all'interno dell'intervallo da 5 a 10.

4. Errore di pedice fuori dall'intervallo in VBA per raccolta/array non validi

Quando il pedice è più grande o più piccolo dell'intervallo di pedici possibili, il parametro Sottoscritto fuori dall'intervallo si verificherà un errore.

Guardate l'esempio precedente: abbiamo dichiarato la variabile come una matrice, ma invece di assegnare un punto di partenza e uno di arrivo, abbiamo assegnato direttamente la prima matrice con il valore di 20.

Soluzione

Per risolvere questo problema, è necessario assegnare la lunghezza dell'array con un punto iniziale e uno finale.

Questo codice non dà alcun errore perché ora abbiamo dichiarato la matrice con un punto di partenza 1 e un punto di arrivo 5.

5. Errore di pedice fuori dall'intervallo in VBA per script stenografici

Se si utilizza un'abbreviazione di un pedice e questa si riferisce a un elemento non valido, si otterrà il messaggio " Sottoscritto fuori dall'intervallo "errore in Excel VBA Ad esempio, [A2] è l'abbreviazione di ActiveSheet.Range(A2) .

Soluzione

Per risolvere il problema, è necessario utilizzare un file valido nome della chiave e indice per la collezione. Invece di scrivere ActiveSheet.Range(A2) è sufficiente scrivere [ A2 ].

Vantaggi dell'errore di pedice fuori dall'intervallo di Excel in VBA

  • VBA Sottoscritto fuori dall'intervallo o " Errore di esecuzione 9 " è molto utile per specificare la posizione dell'errore in cui si è verificato nel file VBA codice.
  • Questo errore aiuta gli utenti a trovare il tipo di errore in modo da poter controllare e trovare le soluzioni in base al codice di errore.

Cose da ricordare

  • Poiché questo errore compila ogni passo del codice per indicare esattamente la parte di codice per cui è necessario agire, è meglio compilare ogni riga di codice una per una premendo F8 se si dispone di un'enorme riga di codice.

Conclusione

Questo articolo vi ha mostrato i motivi e le soluzioni di Excel Sottoscritto fuori dall'intervallo errore in VBA. Spero che questo articolo vi sia stato utile e non esitate a fare domande su questo 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.