Abrir planilha via ...
 
Notifications
Clear all

Abrir planilha via vba com erro de conteúdo ilegível


ProjetoPlanilhando
Posts: 1
Registered
Topic starter
(@projetoplanilhando)
New Member
Entrou: 10 meses atrás

Boa tarde,

Pessoal.

 

Estou com dificuldade em abrir umas planilhas via código vba. O mesmo funciona normalmente, apenas apresenta erro ao abrir planilhas que contém erro de conteúdo ilegível. Ao abrir manualmente a planilha com erro, apresenta a seguinte mensagem:

(O Excel encontrou conteúdo ilegível em "File.xlsx". Deseja recuperar o conteúdo desta paste de trabalho? Se você confia na origem desta pasta de trabalho, clique em Sim.)

Clicando em "Sim", apresenta o recurso removido, o qual não afeta em nada a estrutura e nem os dados da planilha.

Abrindo normalmente, tudo bem! Consigo ignorar o erro fazendo o processo acima. A questão é que esse tipo de erro está se tornando muito frequente e o código que eu possuo não funciona com as que possuem erro.

 

Alguém pode me ajudar a abrir planilhas com esse erro via código vba?

 

Segue o código que utilizo e funciona para as que não apresentam erro.

'Desabilita atualizações de tela
Application.ScreenUpdating = False
'Desabilita exibição de alertas
Application.DisplayAlerts = False

Dim FileToOpen As Variant
Dim OpenBook As Workbook

'*Seleciona a planilha pela valor da célula
Sheets(Plan13.Range("B1").Value).Select

'Arquivo que será aberto
FileToOpen = Application.GetOpenFilename(Title:="Selecione a Planilha", FileFilter:="Excel Files (*.xls*),*xls*")
If FileToOpen <> False Then
'Limpa o conteúdo da *planilha selecionada
ActiveSheet.Cells.ClearContents
Set OpenBook = Application.Workbooks.Open(FileToOpen)
'Copia os dados do arquivo aberto
OpenBook.Sheets(1).Cells.Copy
'Seleciona esta planilha
Windows(Plan14.Range("B2").Value).Activate
'Cola os dados copiados na *planilha selecionada
ActiveSheet.Cells.PasteSpecial Paste:=xlPasteAll
'Fecha o arquivo aberto
OpenBook.Close False

'Executa a Macro após os processos
Macro1
Macro2
Macro3
Macro4
Macro5
Macro6
End If

Em anexo, os prints com os erros

 

Responder