Ir para conteúdo
Fórum Script Brasil
  • 0

VBA - o ficheiro perde a ligação com a origem e não grava o PDF na pasta automaticamente


Sérgio Silvestre

Pergunta

Bom dia

Eu tenho uma macro para gravar PDFs na pasta de origem de uma vez só, só com um só clique.

Eu abro o ficheiro na cloud NAS directamente e tudo funciona bem, mas quando corro essa macro para fazer um PDF, este PDF muitas vezes não grava automaticamente na pasta de origem. Umas vezes grava, outras vezes não.

Eu noto que quando estou a trabalhar há pouco tempo no ficheiro, tipo 1 ou 2 minutos a macro funcniona bem, mas quando trabalho há mais de 10 minutos, a macro já não funciona, não grava o PDF.

Eu tenho de fazer um "SaveAs" do ficheiro na mesma pasta e substituir o actual ficheiro pelo novo e aí já funciona...

Até já coloquei na macro um "SaveAs" mas feito desta forma não funciona, só quando faço o SaveAs manualmente é que funciona.

Parece que o ficheiro perde a ligação com a pasta de origem, e quando faço o SaveAs manualmente ele recupera essa ligação e fica a funcionar bem novamente

Conhecem algum código para "actualizar" essa ligação do ficheiro que estou a trabalhar ao ficheiro de origem?

Outra coisa que pode ajudar a entender: Por vezes quando faço o SaveAs manualmente a meio do processo aparece uma janela durante 1 segundo onde mostra um Pc pequeno a fazer a ligação à Net (daquelas imagens muito antigas do windows), e se eu não concluir o processo de SaveAs e correr a macro, já funciona bem, daí eu pensar que seja essa ligação ao ficheiro inicial que foi perdida e que a mesama é reposta quando se faz SaveAs.

O código que tenho actualmente é este:

Sub relPert_calculo_ventil()
'
'
    Dim FilePath As String
    
    ' Get the current file path
    FilePath = ActiveWorkbook.FullName
    
    ' Save the workbook
    ActiveWorkbook.SaveAs FilePath, ConflictResolution:=xlLocalSessionChanges
'
    Sheets("CalculoVentilacao").Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:= _
        "CAL VENTILACAO.pdf", Quality:= _
        xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
        Sheets("Rel Peritag").Select
'
'
    Sheets("Rel Peritag").Select
     ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:= _
        "Relat_Perit.pdf" _
        , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False

'
    Sheets(Array("A - Transmissao", "B - Ventilacao", "C - Ganhos Inverno", _
        "D - Ganhos Verao", "E - En_Aquecimento", "F - En_Arrefecimento", "G - N_Global")) _
        .Select
    Sheets("A - Transmissao").Activate
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, fileName:= _
        "Relatorio_Calculo.pdf" _
        , Quality:=xlQualityMinimum, IncludeDocProperties:=True, IgnorePrintAreas _
        :=False, OpenAfterPublish:=False
'
Application.Goto Reference:=Worksheets("Introducao de Dados").Range("A1822"), Scroll:=True

End Sub

Parece

 

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...