Erro de subíndice de Excel fóra do rango en VBA (con 5 solucións)

  • Comparte Isto
Hugh West

Neste artigo, mostrarémosche os motivos do erro " Subíndice fóra do intervalo " en Excel VBA e como resolvelos.

Descarga o modelo de práctica

Podes descargar o modelo de Excel de práctica gratuíta desde aquí.

Erro fóra do intervalo de subíndice en VBA.xlsm

Que é o erro de subíndice fóra de intervalo en VBA? O erro

Subíndice VBA fóra de rango ocorre cando tentamos acceder a calquera membro inexistente ou colección de matriz inexistente en Excel. Este é un tipo de erro " Erro de tempo de execución 9 " na codificación VBA en Excel.

O erro adoita ser así,

5 razóns coas solucións de erro fóra do intervalo de subíndice en VBA

Esta sección analizará as 5 razóns máis comúns para a aparición do Erro de subíndice fóra do intervalo e cales son as solucións para el.

1. Erro de subíndice fóra de intervalo en VBA para o libro de traballo inexistente

Cando intente acceder a un libro de Excel que non está aberto, obterá un erro " Subíndice fóra de intervalo ".

Se tentamos Executar o código mostrado arriba, obteremos o erro porque non hai ningún libro de Excel chamado " Vendas ” que está aberto actualmente.

Solución

Para resolver este erro, primeiro abra o libro de Excel ao que desexa acceder e despois Executar a macro.

2. Erro de subíndice fóra de intervalo en VBA por inexistenteFolla de traballo

Cando tentas acceder a unha folla de traballo que non existe no libro de Excel, tamén aparecerá o erro " Subíndice fóra do intervalo " en VBA .

Se tentamos executar o código mostrado arriba, obteremos o erro porque non hai " Folla2 ” dispoñible no noso libro de traballo.

Solución

Para resolver este erro, cómpre ter a folla de Excel á que desexa acceder no libro de traballo en execución e a continuación, execute a macro.

3. Erro de subíndice fóra de intervalo en VBA para elementos de matriz non definidos

Se non define a lonxitude dunha matriz dinámica co palabra DIM ou REDIM en Excel VBA , entón aparecerá o erro " Subíndice fóra do intervalo ".

No código anterior, declaramos a Matriz na dimensión de 5 a 10 pero referímonos a un subíndice do índice 3, que é inferior a 5.

Solución

Para resolver isto, declare o índice entre a dimensión Array.

Esta peza O código funciona perfectamente porque aquí nos referimos ao subíndice do índice 5, que está dentro do intervalo de 5 a 10.

4. Erro fóra do intervalo do subíndice en VBA para a colección non válida/ Matriz

Cando o subíndice é maior ou menor que o intervalo de posibles subíndices, producirase o erro Subíndice fóra do intervalo .

Mira o exemplo anterior, nósdeclarou a variable como unha matriz, pero en lugar de asignar un punto inicial e un punto final, asignamos directamente á primeira matriz o valor de 20.

Solución

Para solucionar este problema, necesitamos asignar a lonxitude da matriz cun punto de inicio e final.

Este código non dá ningún erro porque agora declaramos a matriz. cun punto inicial de 1 e un punto final de 5.

5. Erro fóra do intervalo de subíndice en VBA para o script de taquigrafía

Se usa unha abreviatura dun subíndice e refírese a un elemento non válido, entón obterá o erro " Subíndice fóra do intervalo " en Excel VBA . Por exemplo, [A2] é a abreviatura de ActiveSheet.Range(A2) .

Solución

Para corrixir isto, ten que usar un nome de chave e un índice válidos para a colección. En lugar de escribir ActiveSheet.Range(A2) , simplemente podes escribir [ A2 ].

Vantaxe do erro fóra do intervalo de subíndice de Excel en VBA

  • Erro de subíndice VBA fóra de intervalo ou " Erro de tempo de execución 9 " é moi útil para especificar a posición do erro onde se produciu no código VBA .
  • Este erro axuda aos usuarios a atopar o tipo de erro para que poidan comprobar e atopar as solucións segundo o código de erro.

Cousas para recordar

  • Como este erro compila cada paso do código para indicarnos exactamente que parte deo código para o que realmente necesitamos tomar accións, polo que é mellor compilar cada liña de código unha a unha premendo a tecla F8 se tes unha liña de código enorme.

Conclusión

Este artigo mostrouche os motivos e as solucións do erro Subíndice fóra do intervalo de Excel en VBA. Espero que este artigo che resulte moi beneficioso. Non dubides en facer calquera dúbida sobre o tema.

Hugh West é un adestrador e analista de Excel altamente experimentado con máis de 10 anos de experiencia na industria. É Licenciado en Contabilidade e Finanzas e Máster en Administración de Empresas. Hugh ten unha paixón polo ensino e desenvolveu un enfoque docente único que é fácil de seguir e comprender. O seu coñecemento experto de Excel axudou a miles de estudantes e profesionais de todo o mundo a mellorar as súas habilidades e a destacar nas súas carreiras. A través do seu blog, Hugh comparte os seus coñecementos co mundo, ofrecendo titoriais de Excel gratuítos e formación en liña para axudar ás persoas e ás empresas a alcanzar todo o seu potencial.