Utilizando o exemplo do exercício, caso haja por exemplo um mês para ser importado onde há somente uma linha (supondo que haja somente um segurado no mês de abril), a planilha não pode ser importada. Como corrigir este erro? Obrigada
Utilizando o exemplo do exercício, caso haja por exemplo um mês para ser importado onde há somente uma linha (supondo que haja somente um segurado no mês de abril), a planilha não pode ser importada. Como corrigir este erro? Obrigada
Olá Roberta tudo certinho por aí?
Gostaria de te pedir para informar a aula e o exercício que você está tendo dificuldade. Se possível envie o script que está utilizando também. Assim conseguirei te ajudar =)
Fico no aguardo.
Olá Victor,
O código se refere à aula 4 - trabalhando com arquivos. Utilizando o próprio código apresentado na aula, se tivessemos um dos arquivos para importa com apenas uma linha de dados (por exemplo, supondo que na planilha do mês de abri haja somente um segurado), a planilha não pode ser importada. O código usado está abaixo. Obrigada!!
Sub Importar03()
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Dim nomearq As String
Dim nomearq2 As String
nomearq = Application.GetOpenFilename
Workbooks.Open Filename:=nomearq
nomearq2 = ActiveWorkbook.Name
Sheets(1).Select
Range("a2").Select
Range(ActiveCell, ActiveCell.End(xlDown).End(xlToRight)).Copy
Workbooks("importacao-texto.xlsm").Activate
Range("a1048576").End(xlUp).Offset(1, 0).Select
ActiveCell.PasteSpecial xlFormats
ActiveCell.PasteSpecial xlValues
Workbooks(nomearq2).Activate
Workbooks(nomearq2).Close
Range("a1").Select
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Olá Roberta fiz o teste aqui.
Realmente ele quebra quando utilizado em um mês que possua apenas uma linha de informação.
Se você for executando passo a passo o script, irá observar que na linha
Range(ActiveCell, ActiveCell.End(xlDown).End(xlToRight)).Copy
onde ele está na célula ativa e é dado o comando para que ele copie a informação para baixo e para direita até o final, não ocorre. E não ocorre por que ele ao mesmo tempo que é a "linha" ativa, também é a "linha final" e gera conflito. No meu ponto de vista, eu acredito que a função seja justificada justamente quando se precisa adicionar mais do que uma linha de informação =)
Espero ter ajudado! Qualquer dúvida é só retornar aqui, bons estudos!