Notifications
Clear all

Recuperacao de Erro de Macro

11 Posts
3 Usuários
0 Reactions
1,459 Visualizações
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Aqui esta dando um erro todas as vezes que executo esta macro em anexo.

Poderiam me mostrar onde esté este erro, apesar de que, tudo é gravado conforme tem que ser, somente o incomodo desta mensagem.

ActiveWorkbook.Close True

Erro: Microsoft Excel parou de Funcionar - O WWindows está verificando uma solucao para o problema ...

e depois vem

erro : Microsoft esta tentando recuperar suas informacoes

Sub Salvar()

Dim pdf As String
'
Application.ScreenUpdating = 0
 Application.DisplayAlerts = False 'desabilite o alerta
                
' Salva Planilha Matriz
'Worksheets("AVISO").Unprotect ""

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "ENTRAR COM A LOJA"
    Range("B4").Select
       
'Worksheets("AVISO").Protect ""
'Worksheets("PEDIDO").Protect ""
'Worksheets("RESUMO").Protect ""

' Salva e faz o Back-Up
    ActiveWorkbook.SaveAs Filename:= _
        "C:UsersAndreDesktopPedidos GauerTabela InternaLOJISTA MATRIZ.xlsm", FileFormat _
        :=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
                
'-----------------------------------------------------------

' Salva Planilha Mundo Verde
' Worksheets("AVISO").Unprotect ""

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "MUNDO VERDE"
    Range("B4").Select
      
 ' Apaga Macro Salvar
    ActiveSheet.Shapes.Range(Array("Oval 12")).Select
    Selection.Delete
          
Worksheets("AVISO").Protect ""
Worksheets("PEDIDO").Protect ""
Worksheets("RESUMO").Protect ""

  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - MUNDO VERDE.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF MUNDO VERDE" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
                                
'----------------------------------------------------

' Salva Planilha Via Verde
Worksheets("AVISO").Unprotect ""

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "VIA VERDE NATURAIS"
    Range("B4").Select
   
Worksheets("AVISO").Protect ""
Worksheets("PEDIDO").Protect ""
Worksheets("RESUMO").Protect ""

' Salva e faz o Back-Up
  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - VIA VERDE.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF VIA VERDE" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
                
'----------------------------------------------------------

' Salva Planilha Lojas Diversas
Worksheets("AVISO").Unprotect ""

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "Tabela de Preços"
    Range("B4").Select
   
Worksheets("AVISO").Protect ""
Worksheets("PEDIDO").Protect ""
Worksheets("RESUMO").Protect ""

' Salva e faz o Back-Up
  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - GAUER.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF LOJISTA GAUER" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
              
        
Application.ScreenUpdating = 1
    
'Fechará a planilha
ActiveWorkbook.Close True


End Sub
 
Postado : 20/01/2016 8:30 am
(@mprudencio)
Posts: 2749
Famed Member
 

Tenta assim

ActiveWorkbook.Close

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 20/01/2016 8:48 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Tenta assim

ActiveWorkbook.Close

Deu ainda Excel parou de funcionar, mas fez a gravacao como antes.

Rodei de novo , e nao deu mais a mensagem, porem O excel ficou aberto sem planilha nenhuma aberta.

Rodei de novo e deu a mensagem de erro novamente, parece que agora ficou aleatorio o erro.

Detalhe , quando da o erro se eu tiver outra planilha aberta, quando da este erro, eu fecho o erro e todas as planilhas abertas se fecham. Com este comando .Close, era pra fechar somente a planilha em questao.

Grato

 
Postado : 20/01/2016 9:12 am
(@mprudencio)
Posts: 2749
Famed Member
 

Entao insira essas linhas no codigo

Dim W as Workbook

set W = Workbooks("Nome do Arquivo")

W.close

Ou assim

Workbooks("Nome do Arquivo").Close

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 20/01/2016 9:44 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

ainda erro , o excel esta procurando uma solucao para o problema.

Usei as duas formas, deixei a de baixo

Workbooks("LOJISTA - GAUER").Close, esta é a ultima que é gravada

 
Postado : 20/01/2016 10:42 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

MPrudencio, consegui, anota ai.

Coisa boba mas chata

Application.Quit

 
Postado : 22/01/2016 9:34 am
(@mprudencio)
Posts: 2749
Famed Member
 

Isso fecha o Excel nao a planilha :(

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"Começar já é a metade do caminho."
Autor Desconhecido

Simplifica que simples fica.
Nicole Tomazella.

"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.

 
Postado : 22/01/2016 11:59 am
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Isso fecha o Excel nao a planilha :(

Rsrs , tem razao pude perceber isso agora, entao fiquei na mesma, pois o comando anterior ate fecha mas da o erro que te falei.

 
Postado : 22/01/2016 3:53 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

No lugar da instrução com erro coloque a seguinte :
MsgBox ActiveWorkbook.Name

Assim teremos o nome e qual arquivo está aberto no momento, e podemos nos referir diretamente ao mesmo pelo nome.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/01/2016 5:57 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

tenta assim:

ThisWorkbook.Close true

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/01/2016 6:08 pm
(@fazerbem)
Posts: 697
Honorable Member
Topic starter
 

Bom dia, tentei ja todas as dicas acima desde a abertura do topico, mas nada. Apesar de dar o erro, as 3 Planilhas sao salvas corretamente, porem como fico com outra planilha aberta, dai dando o erro ela fecha .

1- Esta Macro, Salva a Planilha Base em xLms para uma proxima atualizacao de precos
1A- Exclui o Botao da Macro e adiciona protecao a todas as Abas visiveis e ocultas
2- Salva a Planilha agora com outro nome ( celula B1 ) em xLs
3- salva de novo com outro nome ( Celula B1 ) em xls
4- salva de novo com outro nome ( Celula B1 ) em xls
5- A planilha aberta agora passou a ser chamada com nome baseado na Celula ( B1 )

Com o comando fechar esta planilha deveria fechar, porem da os erros acima, porem se posto comando fechar Excel tudo ocorre perfeitamente.

'Workbooks("LOJISTA - GAUER").Close - ERRO
'ActiveWorkbook.Close - ERRO

Dim W as Workbook
set W = Workbooks("Nome do Arquivo") - ERRO
W.close

Workbooks("Nome do Arquivo").Close - ERRO
'Application.Quit 'fecha esta planilha e o excel - OK

Quanto inserir a Mensagem:

MsgBox ActiveWorkbook.Name

Mostra planilha Ativa sendo a Ultima como era esperado, neste caso "LOJISTA GAUER"

Abaixo segue minha Macro.

Sub Salvar()

Dim pdf As String
'
Application.ScreenUpdating = 0
 Application.DisplayAlerts = False 'desabilite o alerta
                
    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "ENTRAR COM A LOJA"
    Range("B4").Select
       
' Salva e faz o Back-Up
    ActiveWorkbook.SaveAs Filename:= _
        "C:UsersAndreDesktopPedidos GauerTabela InternaLOJISTA MATRIZ.xlsm", FileFormat _
        :=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
                
'-----------------------------------------------------------

' Salva Planilha A
    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "A"
    Range("B4").Select
      
 ' Apaga Macro Salvar
    ActiveSheet.Shapes.Range(Array("Oval 12")).Select
    Selection.Delete
          
Worksheets("AVISO").Protect "1234"
Worksheets("PEDIDO").Protect "1234"
Worksheets("RESUMO").Protect "1234"

  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - A.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF A" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
                                
'----------------------------------------------------

' Salva Planilha B
Worksheets("AVISO").Unprotect "1234"

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "B"
    Range("B4").Select
   
Worksheets("AVISO").Protect "1234"
Worksheets("PEDIDO").Protect "1234"
Worksheets("RESUMO").Protect "1234"

' Salva e faz o Back-Up
  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - B.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF B" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
                
'----------------------------------------------------------

' Salva Planilha Lojas Diversas
Worksheets("AVISO").Unprotect "1234"

    Range("B1:L3").Select
    ActiveCell.FormulaR1C1 = "Tabela de Preços"
    Range("B4").Select
   
Worksheets("AVISO").Protect "1234"
Worksheets("PEDIDO").Protect "1234"
Worksheets("RESUMO").Protect "1234"

' Salva e faz o Back-Up
  ActiveWorkbook.SaveAs Filename:= _
  "C:UsersAndreDesktopPedidos GauerLOJISTA - GAUER.xls", FileFormat:= _
        xlExcel8, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
        , CreateBackup:=False
                
pdf = "C:UsersAndreDesktopPedidos Gauer" & "PDF LOJISTA GAUER" & ".pdf"
Worksheets("TABELA EM PDF").ExportAsFixedFormat Type:=xlTypePDF, Filename:=pdf
              
        
Application.ScreenUpdating = 1
    
'Fechará a planilha

'Workbooks("LOJISTA - GAUER").Close
'ActiveWorkbook.Close
'Application.Quit  'fecha esta planilha e o excel
' ThisWorkbook.Close True

 MsgBox ActiveWorkbook.Name

End Sub

Grato

 
Postado : 23/01/2016 6:42 am