Notifications
Clear all

Macro roda até certo ponto e para sem dar erro

6 Posts
3 Usuários
0 Reactions
1,479 Visualizações
(@jokerpot)
Posts: 132
Estimable Member
Topic starter
 

Pessoal,

Estou com uma duvida e um problema que nao sei como resolver.

Tenho uma rotina que abre vários arquivos na rede e faz alguns ajustes. Até ai a macro roda perfeitamente, porem estou fazendo mais uma rotina para abertura de um outro arquivo e nao sei dizer o porque a rotina para de funcionar e nao da nenhuma mensagem de erro, ela simplesmente reinicia novamente.

 

Chegando nessa parte do codigo:

 

Workbooks.Open (n_caminho & "\" & n_arquivo_GR)

 

ela abre o arquivo normalmente e nao prossegue voltando ao inicio do ciclo.

 

Alguem ja viu isso acontecer e sabe o que pode ser????

 

Tenho outras rotinas na planilha com a mesma instrução e funciona perfeitamente.

 

Quanto ao arquivo que esta sendo aberto tb nao há problema, abri o mesmo nas rotinas que "estao funcionando" e ele segue o ciclo até o fim.

 
Postado : 19/01/2021 3:23 pm
Mauro Coutinho
(@coutinho)
Posts: 95
Estimable Member
 

@jokerpot o ideal seria colocar a rotina inteira pra saber que ciclo não da continuidade, só pela instrução que postou não da pra ter noção pois ela é para abrir um arquivo e voce disse que ate ai funciona perfeitamente.

Uma outra dica é inserir alguns pontos de interrupção teclando F9 nas linhas seguintes a essa instrução forçando a rotina dar uma pausa e então você da sequencia teclando o F8 e seguir a rotina passo a passo.

 

[]s

 
Postado : 19/01/2021 4:23 pm
(@jokerpot)
Posts: 132
Estimable Member
Topic starter
 

@coutinho Boa Tarde!

 

Abaixo coloquei parte do código.

Basicamente pego o diretorio e nome do arquivo em uma aba chamada parametros e apos isso eu abro o arquivo.

Como disse a Macro nao gera erros, ela abre o arquivo normalmente porem estranhamente nao continua o processo e termina a rotina e volta ao inicio. 

Com o F8 ela chega nessa etapa: Workbooks.Open (n_caminho & "\" & n_arquivo_a) abre normal e para.

Como disse tenho outras macros dentro do mesmo arquivo que tem a mesma instrução e rodam tranquilamente.

 

O que é mais estranho é que e outra macro com as mesmas instruções o arquivo abre e vai até o fim, mas no codigo abaixo ela para.

 

Sub Arquivo_A()

'Define o nome dos arquivos em variáveis
'-----------------------------------------------------------
n_fechamento = ActiveWorkbook.Name
n_aba_fecha = ActiveSheet.Name

'Colhe o nome do arquivo a ser aberto e local
'-----------------------------------------------------------
n_caminho = Sheets("Parametros").Range("B48").Value
n_arquivo_a = Sheets("Parametros").Range("B49").Value

'Colhe a ultima linha prenchida do arquivo
'------------------------------------------------------------
u_lin = Sheets(n_aba_fecha).Range("A1048576").End(xlUp).Row
u_col = Cells(5, Cells.Columns.Count).End(xlToLeft).Column

On Error Resume Next

'Abre o arquivo
'------------------------------------------------------------
Workbooks.Open (n_caminho & "\" & n_arquivo_a)

'Mensagem de erro caso ocorra problemas com o diretorio, nome do arquivo ou extensão do arquivo
'-----------------------------------------------------------------------------------------------------
If Not Err.Number = 0 Then
n_RESP = MsgBox("ATENÇÃO!!!" + vbCrLf + "Verifique os parâmetros:" + vbCrLf + "O caminho de abertura, Nome do Arquivo a ser aberto OU Extensão do Arquivo estão INCORRETOS." + vbCrLf + vbCrLf + " ", vbCritical, " ")
Exit Sub

End If

Range("a4").Select

End Sub

 
Postado : 19/01/2021 6:43 pm
Raygsson
(@raygsson)
Posts: 68
Trusted Member
 

A macro não está gerando tela de erro por conta deste comando:

On Error Resume Next

Experimente retirar/comentar essa linha e rode novamente, deve apresentar o erro. Tire um print e cole aqui.

 
Postado : 19/01/2021 7:56 pm
(@jokerpot)
Posts: 132
Estimable Member
Topic starter
 

@raygsson Boa Noite.

 

Não deu certo tb.

Comentei as instruções dos erros, a macro abriu a planilha porem nao continuou a rotina voltando ao inicio.

Confesso que nunca vi isso antes.

 
Postado : 19/01/2021 8:59 pm
Mauro Coutinho
(@coutinho)
Posts: 95
Estimable Member
 
Postado por: @jokerpot

@raygsson Boa Noite.

 

Não deu certo tb.

Comentei as instruções dos erros, a macro abriu a planilha porem nao continuou a rotina voltando ao inicio.

Confesso que nunca vi isso antes.

Eu ia dizer o mesmo que o colega raygson, mas como voce testou e ficou na mesma está dificil de entender porque a principio se na macro são só essas linhas, é uma macro básica, tanto que testei aqui e forcei erros com o nome e caminho do arquivo e funcionou corretamente, chega abrir o arquivo pula pra linha "Range("a4").Select" e encerra a rotina, e forçando o erro vai até a mensagem do erro e sai da rotina.

Não temos nenhumas outras instruções que omitiu dentro dessa rotina ? porque a principio ela só te de abrir um arquivo e selecionar uma celula.

Como a mesma é executada ? Se é chamada por alguma outra verifique se tem alguma instrução diferente. 

Se a rotina retorna ao inicio apos abrir o arquivo ela deveria dar uma mensagem de erro porque o arquivo aberto não teria a aba "Parametros" e isso geraria outro erro.

 

Fora isso, só tendo os arquivos para se testar. Qual versão do excel está utilizando ? Eu uso o excel 2007 ainda.

 

[]s

Mauro Coutinho

 
Postado : 19/01/2021 11:41 pm