Entendo muito pouco de VBA e gostaria de importar dados de um arquivo externo, mas o meu código não está funcionando.
Sub Importar()
Dim Abrir As String
Dim Importarwb As Workbook
Dim Importarguia As Worksheet
Abrir = Application.GetOpenFilename( _
FileFilter:="Arquivo do Excel (*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm", Title:="Escolha o arquivo a ser importado")
Set Importarwb = Application.Workbooks.Open( _
Filename:=Abrir, Password:="123")
Set Importarguia = Importarwb.Worksheets(1)
Application.ScreenUpdating = False
'Desbloquear guia e pasta de trabalho
ThisWorkbook.Unprotect ("123")
ActiveSheet.Unprotect ("123")
Pergunta
Jéssica De Moura Lima
Boa noite!
Entendo muito pouco de VBA e gostaria de importar dados de um arquivo externo, mas o meu código não está funcionando.
Sub Importar()
Dim Abrir As String
Dim Importarwb As Workbook
Dim Importarguia As Worksheet
Abrir = Application.GetOpenFilename( _
FileFilter:="Arquivo do Excel (*.xls;*.xlsx;*.xlsm),*.xls;*.xlsx;*.xlsm", Title:="Escolha o arquivo a ser importado")
Set Importarwb = Application.Workbooks.Open( _
Filename:=Abrir, Password:="123")
Set Importarguia = Importarwb.Worksheets(1)
Application.ScreenUpdating = False
'Desbloquear guia e pasta de trabalho
ThisWorkbook.Unprotect ("123")
ActiveSheet.Unprotect ("123")
'Copiar dados
Importarguia.Copy
'Limpar guia "Relatório" e colar dados
With Worksheets("Relatório")
.Visible = True
.Range(.Cells(1, 1), .Cells(10000, 90)).ClearContents
.Paste
.Visible = False
End With
'Fechar arquivo externo
Importarwb.Close
'Bloquear guia e pasta de trabalho
ThisWorkbook.Protect Password:="123", Structure:=True, Windows:=False
Sheets("Base de Contratos").Protect Password:="123", _
DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True, _
UserInterfaceOnly:=True, _
AllowFormattingCells:=False, _
AllowFormattingColumns:=False, _
AllowFormattingRows:=True, _
AllowInsertingColumns:=False, _
AllowInsertingRows:=True, _
AllowInsertingHyperlinks:=False, _
AllowDeletingColumns:=False, _
AllowDeletingRows:=True, _
AllowSorting:=False, _
AllowFiltering:=True, _
AllowUsingPivotTables:=False
Application.ScreenUpdating = True
MsgBox "Relatório importado com sucesso!"
End Sub
Alguém poderia me ajudar?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
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.