Ошибка автоматизации Excel VBA при преобразовании из Excel 2013 в 2016

#excel #vba #excel-2016

Вопрос:

У меня есть приведенный ниже код для организации столбцов моей электронной таблицы в заранее определенном формате, этот код работал очень хорошо. В последнее время я начинаю получать сообщение об ошибке, всякий раз, когда я запускаю макрос, я получаю сообщение об ошибке «Вызванный объект отключился от своих клиентов», и после этого Excel разбился за считанные секунды. Этот код отлично работал до преобразования из Excel 2013 в 2016. Я попробовал доступное решение в Интернете, но ни одно из них не работает.

Могу ли я в любом случае исправить этот код, чтобы избежать ошибки?

 Dim ColumnOrder As Variant, ndx As Integer
Dim Found As Range, counter As Integer
    ColumnOrder = Array("Custom Case ID", "Referral Date", "Last Name", "First Name", "Record Type", "Locator Info")
counter = 1

Application.ScreenUpdating = False 
  
For ndx = LBound(ColumnOrder) To UBound(ColumnOrder)
    Set Found = Rows("1:1").Find(ColumnOrder(ndx), LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False)
    If Not Found Is Nothing Then
        If Found.Column <> counter Then
            Found.EntireColumn.Cut
            Columns(counter).Insert Shift:=xlToRight
            Application.CutCopyMode = False
        End If
    counter = counter   1
    End If
Next ndx