Notifications
Clear all

Problemas com Macro de Salvar Como

4 Posts
3 Usuários
0 Reactions
1,112 Visualizações
(@victorapda)
Posts: 27
Eminent Member
Topic starter
 

Olá pessoal!

Estou com um problema na hora de salvar meu arquivo de backup. Tenho um excel que ao completar uma ação ele deve salvar a planilha e também salvar uma outra planilha com o nome de backup, porém ao salvar essa planilha de backup ele fecha a planilha original e a de backup fica ativa.

Alguém sabe solucionar esse problema?

ThisWorkbook.Save
        
        ActiveWorkbook.SaveAs Filename:=caminho + "Teste.xlsm"
        
        Workbook.Activate
        
        MsgBox "Venda concluída!", vbInformation, "Sucesso"
        Application.DisplayAlerts = True
 
Postado : 25/07/2014 10:35 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

victorapda,

Boa Tarde!

Quando você salva uma pasta com outro nome, o Excel "entende" que você quer dar um outro nome ao arquivo atual para preservar o arquivo antigo. Assim, ele salva uma cópia com o novo nome dado e deixa o arquivo original intacto. Todavia, ele só mantém na memória o "novo arquivo".

Creio que para resolver esse tipo de problema, você possa colocar no seu código, mas alguma coisa que permita abrir novamente o arquivo original e fechar o novo arquivo salvo, mais ou menos assim:

    ThisWorkbook.Save
           
            ActiveWorkbook.SaveAs Filename:=caminho + "Teste.xlsm"
           
            Workbook.Activate
           

            MsgBox "Venda concluída!", vbInformation, "Sucesso"

            'abre o arquivo original (o que foi salvo com outro nome
             Workbooks.Open ActiveWorkbook.Path & "nome_do_arquivo_original.xlsm"
             'Fecha o novo arquivo salvo
             Workbooks("Teste.xlsm").Close

            Application.DisplayAlerts = True

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 25/07/2014 11:41 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Eu faria assim:

    With ThisWorkbook
        .SaveCopyAs Filename:=caminho & "Teste.xlsm"
        .Save
    End With
    
    MsgBox "Venda concluída!", vbInformation, "Sucesso"
    Application.DisplayAlerts = True

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

 
Postado : 28/07/2014 8:32 pm
(@victorapda)
Posts: 27
Eminent Member
Topic starter
 

Pessoal, vocês são demais! Wagner muito obrigado pela explicação e Fernando, valeu demais por ter solucionado! hehe a sua ideia deu direitinho para o que eu queria! Muito obrigado mesmo galera, Planilhando é o melhor e Excel é um monstro da produtividade!

Abraços!

 
Postado : 01/08/2014 7:28 am