Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
Por Ayslang
Posts
#37995
Senhores, é o seguinte.

Possuo uma macro que tem como função, abrir arquivos específicos (que estão dentro de determinada pasta), copiar as planilhas contidas nesses arquivos, colar em uma nova PLANILHA BASE, e por fim, fechar todas as planilhas que foram abertas, mantendo no final apenas a PLANILHA BASE.

O processo então é:

ABRIR - COPIAR - COLAR - FECHAR

O problema é o seguinte, tratam-se de planilhas mensais, que podem variar, ou seja, às vezes teremos 10 planilhas dentro de determinada pasta, às vezes 5 planilhas, às vezes 3... e assim por diante. Então quando a macro vai buscar na pasta, SE não tiver a planilha "AGOSTO 18" por ex, dará erro, mas em alguns casos eu terei a planilha "AGOSTO 18". Eu quero que, não encontrando um arquivo especificado na macro, ele ignore e continue executando a macro, abrindo as planilhas existentes naquele momento.

Não sei se fui claro o suficiente, se precisarem de mais informações, é só falar.

Att,


Trecho do código:

'JUNHO 18 ------------------------------------------------------------------------

ChDir "C:\Users\Documents\Planilhas Base"
Workbooks.Open Filename:= _
"C:\Users\Documents\Planilhas Base\JUNHO 18.xlsx"
Cells.Select
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("JUN_18").Select
Cells.Select
Range("A277").Activate
ActiveSheet.Paste

Windows("JUNHO 18.xlsx").Activate
Sheets("EVENTOS").Select
Range("A1:BX320").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("JUN_18").Select
Range("A300").Select
ActiveSheet.Paste

Application.Run "Módulo3.APAGAR_OK"
Application.Run "Módulo3.FORMATAR_DADOS_3"
Application.Run "Módulo3.GERAR_TITULO_EVENTOS"

Range("A1").Select

Sheets("RESUMO").Select
Range("A1").Select

Windows("JUNHO 18.xlsx").Activate
ActiveWorkbook.Close

'JULHO 18 ------------------------------------------------------------------------

ChDir "C:\Users\Documents\Planilhas Base"
Workbooks.Open Filename:= _
"C:\Users\Documents\Planilhas Base\JULHO 18.xlsx"
Cells.Select
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("JUL_18").Select
Cells.Select
Range("A277").Activate
ActiveSheet.Paste

Windows("JULHO 18.xlsx").Activate
Sheets("EVENTOS").Select
Range("A1:BX320").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("JUL_18").Select
Range("A300").Select
ActiveSheet.Paste

Application.Run "Módulo3.APAGAR_OK"
Application.Run "Módulo3.FORMATAR_DADOS_3"
Application.Run "Módulo3.GERAR_TITULO_EVENTOS"

Range("A1").Select

Sheets("RESUMO").Select
Range("A1").Select

Windows("JULHO 18.xlsx").Activate
ActiveWorkbook.Close

'AGOSTO 18 ------------------------------------------------------------------------

ChDir "C:\Users\Documents\Planilhas Base"
Workbooks.Open Filename:= _
"C:\Users\Documents\Planilhas Base\AGOSTO 18.xlsx"
Cells.Select
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("AGO_18").Select
Cells.Select
Range("A277").Activate
ActiveSheet.Paste

Windows("AGOSTO 18.xlsx").Activate
Sheets("EVENTOS").Select
Range("A1:BX320").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("AGO_18").Select
Range("A300").Select
ActiveSheet.Paste

Application.Run "Módulo3.APAGAR_OK"
Application.Run "Módulo3.FORMATAR_DADOS_3"
Application.Run "Módulo3.GERAR_TITULO_EVENTOS"

Sheets("AGO_18").Select
Range("A1").Select

Sheets("RESUMO").Select
Range("A1").Select

Windows("AGOSTO 18.xlsx").Activate
ActiveWorkbook.Close

'SETEMBRO 18 ------------------------------------------------------------------------

ChDir "C:\Users\Documents\Planilhas Base"
Workbooks.Open Filename:= _
"C:\Users\Documents\Planilhas Base\SETEMBRO 18.xlsx"
Cells.Select
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("SET_18").Select
Cells.Select
Range("A277").Activate
ActiveSheet.Paste

Windows("SETEMBRO 18.xlsx").Activate
Sheets("EVENTOS").Select
Range("A1:BX320").Select
Application.CutCopyMode = False
Selection.Copy
Windows("BASE JUNHO.xlsm").Activate
Sheets("SET_18").Select
Range("A300").Select
ActiveSheet.Paste

Application.Run "Módulo3.APAGAR_OK"
Application.Run "Módulo3.FORMATAR_DADOS_3"
Application.Run "Módulo3.GERAR_TITULO_EVENTOS"

Range("A1").Select

Sheets("RESUMO").Select
Range("A1").Select

Windows("SETEMBRO 18.xlsx").Activate
ActiveWorkbook.Close
Por babdallas
#38068
QUal a versão do seu Excel? Pode usar PowerQuery?
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord