No Microsoft Excel, os erros de tempo de execução geralmente ocorrem quando os arquivos estão ausentes. Esses erros de tempo de execução são os mais variados e complexos de corrigir. No entanto, um desses erros que os usuários estão experimentando e relatando recentemente é “Run-time error ‘9’: Subscript out of range” ao executar o código VBA no MS Excel. Portanto, se você estiver enfrentando a mesma mensagem de erro, leia este post até o final. Aqui, você aprenderá os motivos comuns por trás da ocorrência desse erro e como corrigir o erro de tempo de execução 9 subscrito fora do intervalo no Excel com êxito.
Então vamos começar…
O que é subscrito de erro de tempo de execução fora do intervalo 9?
O “VBA Error Subscript Out of Range 9” normalmente ocorre quando você tenta acessar um array ou uma coleção usando um índice que não existe ou está fora do intervalo válido.
Aqui está como a mensagem de erro se parece:
Embora esse erro de tempo de execução geralmente ocorra ao trabalhar com o código VBA (Visual Basic for Applications) no Excel.
Razões comuns para o erro de tempo de execução VBA do Excel 9: subscrito fora do intervalo
Há uma grande variedade de razões que podem levar a essa mensagem de erro em tempo de execução no Excel. Abaixo, listei os fatores mais comuns que podem causar esse erro irritante:
- Inseriu uma sintaxe de instrução incorreta de uma matriz.
- A entrada ou objeto que você está tentando usar no código VBA foi excluído ou não foi definido anteriormente.
- Se a ortografia do nome da variável estiver incorreta, você poderá receber este erro.
- Referenciou um elemento de array inadequado.
- A pasta de trabalho do Excel está corrompida na qual você está tentando usar o VBA.
- Um número não especificado de elementos na matriz.
- Especificou um elemento inaceitável.
Como corrigir erro de tempo de execução 9 subscrito fora do intervalo no Excel?
Agora, vamos seguir as correções de solução de problemas abaixo para resolver o erro de tempo de execução 9 subscript fora do intervalo Excel 2013/2016/2019.
Solução 1- Verifique o Alcance do Array
Conforme já mencionado na seção de causas, o número não especificado de elementos na matriz do código pode acionar esse erro de tempo de execução do VBA.
Por exemplo – suponha que você declarou um array e esqueceu de declarar a variável do array junto com os elementos, você pode ver o erro mostrado abaixo:
No entanto, para resolver isso, você deve especificar uma variável de array como esta:
Sub FillArray()
Dim curExpense(364) As Currency
Dim intI As Integer
For intI = 0 to 364
curExpense(intI) = 20
Next
End Sub
Leia também: Corrigir erro VBA 400 executando uma macro do Excel?
Solução 2- Verifique o nome da planilha no código VBA
Outro método que você deve tentar é verificar se o nome da planilha não está definido corretamente no código VBA.
Por exemplo– Quando você tenta copiar o conteúdo de um documento do MS Excel para outro documento do Excel por código VBA e mencionou um nome de planilha incorreto, pode obter o erro abaixo:
Private Sub CommandButton1_Click()
Worksheets(“emp”).Range(“A1:E5”).Select
Selection.Copy
Worksheets(“emp3”).Activate
Worksheets(“emp3”).Range(“A1:E5”).Select
ActiveSheet.Paste
Application.CutCopyMode = False
End Sub
Agora, quando você tentar executar o código mencionado acima, o MS Excel mostrará o “VBA runtime error 9”.
Se você deseja verificar o nome da planilha e corrigi-lo, siga as etapas abaixo:
Etapa 1- Primeiro, você deve clicar na guia Design na seção Desenvolvedor.
Etapa 2- Em seguida, toque duas vezes em um botão de comando.
Etapa 3- Depois disso, verifique e modifique o nome da planilha do Excel (por exemplo, de “emp” para “emp2”).
Etapa 4- Neste momento, execute o código.
Etapa 5- Os dados da planilha ‘emp’ serão copiados para a planilha ‘emp2’.
Solução 3- Alterar as configurações de segurança da macro
Na maioria das vezes, esse erro de tempo de execução 9 subscrito fora do intervalo também ocorre no Excel se as macros estiverem restritas nas configurações de segurança de macro. No entanto, nesse caso, você precisa verificar e alterar as configurações de macro imediatamente.
Siga esses passos:
Etapa 1- Abra seu MS Excel.
Etapa 2– Vá para o Arquivo, clique em Opções e, em seguida, clique em Central de Confiabilidade.
Etapa 3- Na Central de Confiabilidade, você deve escolher as Configurações da Central de Confiabilidade.
Etapa 4- Aqui, clique em Configurações de macro, escolha Ativar todas as macros >> clique em OK.
Se este método não funcionar para você, tente o próximo.
Leia também: Corrigir erro de tempo de execução do Excel 13 tipo incompatível
Solução 4- Repare o arquivo do MS Excel para corrigir o erro de tempo de execução 9 Subscript fora do intervalo
Às vezes, o nome dos objetos pode ser transformado devido à corrupção do arquivo. Quando os objetos não são reconhecidos no código VBA, você pode receber este erro de tempo de execução.
Em tal situação, você pode optar por um utilitário embutido do Excel conhecido como Abrir e Reparar. Ele acabará por ajudá-lo a corrigir seu arquivo do Excel corrompido.
Veja como você pode usar essa ferramenta:
- No seu Excel, você deve clicar em Arquivo > Abrir.
- Depois disso, navegue para encontrar o arquivo afetado.
- Na caixa de diálogo Abrir, escolha uma pasta de trabalho corrompida.
- No menu suspenso Abrir, você deve clicar em Abrir e reparar
- Agora, você receberá um prompt solicitando que você repare um arquivo ou extraia dados.
- Finalmente, clique na opção Reparar para extrair os dados. Se a opção Reparar falhar, você poderá clicar em Extrair dados. Isso recuperará os dados sem valores e fórmulas.
Melhor Software para Consertar Documento Excel Corrompido
Se o utilitário “Abrir e reparar” e outros métodos manuais não conseguirem corrigir o erro de tempo de execução do Excel VBA 9: erro de subscrito fora do intervalo, pode ser possível que seu arquivo do Excel tenha sido corrompido. Nesse caso, sugere-se que você vá com o MS Excel Reparar Ferramenta.
É um dos melhores e mais recomendados utilitários carregados de recursos que podem corrigir qualquer tipo de problema, corrupção ou erro nos arquivos do Excel (.xls, .xltm, .xlsx, .xltx e .xlsm).
Além disso, você pode restaurar todos os objetos de seus arquivos corrompidos do Excel, como gráficos, fórmulas, comentários de células, tabelas dinâmicas, etc.
Portanto, basta baixar, instalar e experimentar este software para reparar seu arquivo corrompido do Excel e lidar com o erro do Excel que você está enfrentando.
Aqui estão os passos para usar esta ferramenta:
Etapa 1 - Baixe e instale o Stellar Reparar para Excel seguindo o assistente de instalação.
Etapa 2 – Após a instalação, inicie a ferramenta de reparo e navegue até o arquivo Excel que deseja reparar.
Etapa 3 – Agora selecione o arquivo Excel que deseja reparar e clique no botão 'Repair'.
Etapa 4 – Espere até que o processo de reparo termine.
Etapa 5 – Uma vez feito isso, visualize e verifique o arquivo do Excel reparado e clique no botão 'Save'.
Linha de fundo:
Portanto, trata-se de como corrigir o erro de tempo de execução 9 subscrito fora do intervalo no Excel.
Tudo o que você precisa fazer é seguir as soluções mencionadas acima nesta postagem para lidar com esse erro de tempo de execução.
Além disso, sugere-se manipular seu documento do Excel adequadamente e criar um backup válido dos dados salvos nele para evitar situações de perda de dados.
Boa sorte!!!
