Combine dados em um mastersheet

2

Como coordenador de MIS diariamente, eu preciso coletar dados em uma planilha a partir de 21 arquivos diferentes contidos em uma pasta. É muito demorado abrir todos os 21 arquivos e copiar os dados diários de cada arquivo e colá-los na planilha onde o trabalho do dia anterior foi colado. Eu tenho uma vantagem que os 21 arquivos têm a mesma formatação, por isso não há necessidade de cruzar todos os arquivos. Eu apreciaria qualquer ajuda, como posso conseguir isso de forma eficiente?

    
por sujay nimbare 22.05.2013 / 11:49

1 resposta

0

Isso ajudará você a começar. Ele percorre um diretório procurando arquivos do Excel, abre-os, copia um intervalo da pasta de trabalho de destino, cola-os na pasta de trabalho principal e fecha a pasta de trabalho de destino sem salvar.

Sub CopyFiles()
Application.ScreenUpdating = False
Application.CutCopyMode = False
Dim StrFile As String
StrFile = Dir("C:\folder\*.xls")
Dim wbdata As Workbook
Dim wbtarget As Workbook
Dim i As Integer
i = 1
Set wbdata = ActiveWorkbook


    Do While Len(StrFile) > 0
        Set wbtarget = Workbooks.Open(StrFile)

            'Your operation here
            wbtarget.Range("A1:C1").Copy
            wbdata.Range(Cells(i, 1), Cells(i, 3)).PasteSpecial xlPasteValues
            i = i + 1
            wbtarget.Close savechanges:=False
            Application.CutCopyMode = False

        StrFile = Dir
    Loop

Application.ScreenUpdating = True

End Sub
    
por 24.12.2013 / 17:58