2

Как ежедневный координатор MIS, мне нужно собирать данные в мастер-лист из 21 файла, содержащихся в папке. Открытие каждых 21 файла и копирование ежедневных данных из каждого файла и вставка их в таблицу, куда была вставлена работа предыдущего дня, занимает очень много времени. У меня есть одно преимущество, что 21 файл имеет одинаковое форматирование, поэтому нет необходимости перепроверять каждый файл. Буду признателен за любую помощь, как я могу добиться этого эффективно?

1 ответ1

0

Это поможет вам начать. Он просматривает каталог в поисках файлов Excel, открывает их, копирует диапазон из целевой рабочей книги, вставляет его в основную рабочую книгу и затем закрывает целевую рабочую книгу без сохранения.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .