Eu tenho uma macro que copia planilhas e as salva como novas.
Porém, quero copiar duas planilhas e combiná-las em uma, mas as planilhas estão localizadas em duas pastas de trabalho diferentes.
por exemplo: pasta de trabalho1 contém 2 planilhas (planilha1, planilha2) pasta de trabalho2 contém 3 planilhas (planilha1, planilha2, planilha3)
Quero copiar a planilha1 da pasta de trabalho1 e a planilha1 da pasta de trabalho2. em seguida, combine-os, pois ambos têm o mesmo formato de tabela.
Eu não sei como. Só sei copiar várias planilhas da mesma pasta de trabalho. Eu também sei como combiná-los, meu único problema é como copiar a planilha1 de uma pasta de trabalho diferente, que é a pasta de trabalho1 e a pasta de trabalho2
Eu só tenho um código simples para copiar os dados. a propósito, aqui está meu código:
saveFolder = "C:\Document\Macro"
path = "C:\Document\Workbook1"
fname = "Sample Account.xlsx"
Workbooks.Open path & fname
Sheets("Account1").Copy
ActiveWorkbook.SaveAs saveFolder & "\Conso.xlsx", FileFormat:=51
Workbooks(fname).Close
o outro arquivo está localizado na pastaPasta de trabalho2o nome do arquivo éContas Adicionais
Responder1
Este código VBA (Macro) irá ajudá-lo a copiar a planilha de sua escolha da pasta de trabalho de origem para combinar no livro ativo.
Este código é interativo e não padrão, o que torna o código versátil.
Sub CombineSheets()
Dim sPath As String
Dim sFname As String
Dim wBk As Workbook
Dim wSht As Variant
Application.EnableEvents = False
Application.ScreenUpdating = False
sPath = InputBox("Enter File Path Of Source Workbook(s)")
ChDir sPath
sFname = InputBox("Enter the Filename")
sFname = Dir(sPath & "\" & sFname & ".xl*", vbNormal)
wSht = InputBox("Enter Worksheet Name To Copy")
Do Until sFname = ""
Set wBk = Workbooks.Open(sFname)
Windows(sFname).Activate
Sheets(wSht).Copy Before:=ThisWorkbook.Sheets(1)
wBk.Close False
sFname = Dir()
Loop
ActiveWorkbook.Save
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Como funciona:
- Copie e cole este código como Módulo Padrão com a Pasta de Trabalho Mestre (na qual você deseja combinar Planilhas).
- Execute a macro.
- Primeiro, ele solicita um caminho para a(s) pasta(s) de trabalho de origem.
Observação,melhor copiar e colar o caminho do arquivo.
Em seguida, pergunte o nome da pasta de trabalho, você também pode usar curingas ou o nome da pasta de trabalho como
Myworkbook
.Por fim pede que o Nome da Folha seja copiado.