Fala Galera, Bom dia!
Estou automatizando um trabalho repetitivo que faço na minha empresa e preciso fazer o seguinte:
- rodar uma macro que abra uma outra planilha, copiar os dados de uma sheet específica e trazer para essa planilha que eu rodei a macro.
- Nessa planilha vou trabalhar os dados nela. Porém como vou rodar essa macro todo dia, precisava que renomeasse a sheet para a data que rodei a macro e assim sucessivamente todos os dias.
dificuldades:
- dependendo da Versão e config do Excel, quando abrimos o excel de forma limpa, as vezes abrem 3 sheets e as vezes 1 sheet, preciso fazer como que a macro veja se tem alguma sheet sobrando e se não tiver, criar uma nova sheet com os dados da macro como citei anteriormente. Creio que dê pra fazer com IF, do tipo se no nome da sheet tenha a palavra "plan", já sei que ela não tem nada, pois na macro vai renomear para a data atual. Só não consigo fazer isso no código. Vou colocar abaixo até onde consegui fazer o código..
Sub Macro1()
'
' Macro1 Macro
'
Application.ScreenUpdating = False
Application.DisplayAlerts = False
' Abrir planilha base e copiar dados
Workbooks.Open ("E:PROJETO VBArelatorio-teste.xlsm")
Sheets("Relatorio Geral").Visible = True
Sheets("Relatorio Geral").Select
ActiveSheet.PivotTables("Tabela dinâmica1").PivotFields("Agencia").ClearAllFilters [b]'tirar filtro da coluna agencia[/b]
Cells.Select
Selection.EntireColumn.Hidden = False
Selection.EntireRow.Hidden = False
UltimaLinhaBase = Sheets("Relatorio Geral").Cells(11, 1).End(xlDown).Row
UltimaColunaBase = Sheets("Relatorio Geral").Cells(11, 1).End(xlToRight).Column
Sheets("Relatorio Geral").Range(Cells(11, 1), Cells(UltimaLinhaBase, UltimaColunaBase)).Copy ThisWorkbook.Sheets(1).[a1]
Workbooks("relatorio-teste").Close False [b] 'Fechar planilha base[/b]
NomeSheet = Format(Date, "DD-MM-YYYY")
ActiveSheet.Name = NomeSheet
Sheets.Add , Sheets(Sheets.Count)
Nesse código que fiz acima, ele faz praticamente tudo que falei lá em cima, só que no final eu estava usando a plan1 ( que foi renomeada para a data atual) e adicionou mais uma sheet, porém duas sheets (plan2 e plan3), ficaram soltas sem dados.
Não sei se expliquei bem mas quem puder me ajudar...vlw!! abçs
Postado : 27/08/2018 8:23 am