Excel 2016 VBA - Копирование очень медленное - PullRequest
0 голосов
/ 05 сентября 2018

Я недавно обновил Excel с 2010 по 2016 год (32 бита), и внезапно код, выполнение которого заняло 5 секунд, теперь занимает вечность. Даже простая операция копирования, подобная приведенному ниже, занимает около получаса.

For i = 1 To 10
    Worksheets("Sheet2").Range("A" & i).Copy Worksheets("Sheet2").Range("A" & i)
Next i

Есть ли способ исправить это?

РЕДАКТИРОВАТЬ: Ниже приведен «реальный» код, запрошенный @Comintern, тираж составляет около 1000 экземпляров, но для его запуска требуется вечность:

For i = 3 To lRow1        
     Select Case Range(cType & i).Value
        Case "Order"
            ws1.Rows(i).Copy wsOrder.Rows(lRowOrder + 1)
            lRowOrder = lRowOrder + 1
        Case "UP"
            ws1.Rows(i).Copy wsUP.Rows(lRowUP + 1)
            lRowUP = lRowUP + 1
        Case "Cancel"
            ws1.Rows(i).Copy wsCancel.Rows(lRowCancel + 1)
            lRowCancel = lRowCancel + 1
        Case "Edit"
            ws1.Rows(i).Copy wsEdit.Rows(lRowEdit + 1)
            lRowEdit = lRowEdit + 1
        Case ""
            ws1.Rows(i).Copy wsOther.Rows(lRowOther + 1)
            lRowOther = lRowOther + 1
    End Select

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