Консолидация различных таблиц вместе в одном, однако цикл завершается неудачно, когда отсутствует какой-либо файл - PullRequest
0 голосов
/ 10 мая 2018

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

strListSheet = "Processors List"

On Error GoTo ErrH
Sheets(strListSheet).Select
Range("D8").Select

'this is the main loop, we will open the files one by one and copy their data into the masterdata sheet
Set currentWB = ActiveWorkbook
Do While ActiveCell.Value <> ""

    strFileName = ActiveCell.Offset(0, 1) & ActiveCell.Value
    strCopyRange = ActiveCell.Offset(0, 2) & ":" & ActiveCell.Offset(0, 3)
    strWhereToCopy = ActiveCell.Offset(0, 4).Value
    strStartCellColName = Mid(ActiveCell.Offset(0, 5), 2, 1)

    Application.Workbooks.Open strFileName, UpdateLinks:=False, ReadOnly:=True
    Set dataWB = ActiveWorkbook

    Range(strCopyRange).Select
    Selection.Copy

    currentWB.Activate
    Sheets(strWhereToCopy).Select
    lastRow = LastRowInOneColumn(strStartCellColName)
    Cells(lastRow + 1, 1).Select

    Selection.PasteSpecial xlPasteValues, xlPasteSpecialOperationNone
    Application.CutCopyMode = False
    dataWB.Close False
    Sheets(strListSheet).Select
    ActiveCell.Offset(1, 0).Select
Loop
Range("A1").Select
Sheets("Processors List").Activate
Range("P2").Select
Exit Sub

Цикл заканчивается, если какой-либо файл отсутствует. Цикл должен перейти к следующей ячейке, чтобы проверить детали, объединяющие оставшиеся листы.

С уважением,

Vipul

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...