Ошибка времени выполнения Excel VBA '13' Несоответствие типов

Я создал макрос для файла, и сначала он работал нормально, но сегодня я открывал и перезапускал файл и макрос сотни раз, и я всегда получаю следующую ошибку: Ошибка времени выполнения Excel VBA '13' Несоответствие типов

Я ничего не менял в макросе и не знаю, почему я получаю сообщение об ошибке. Более того, на обновление макроса каждый раз, когда я его запускаю, уходит много времени (макрос должен запускать около 9000 строк).

Ошибка находится между ** **.

VBA:

Sub k()

Dim x As Integer, i As Integer, a As Integer
Dim name As String
name = InputBox("Please insert the name of the sheet")
i = 1
Sheets(name).Cells(4, 58) = Sheets(name).Cells(4, 57)
x = Sheets(name).Cells(4, 57).Value
Do While Not IsEmpty(Sheets(name).Cells(i + 4, 57))
    a = 0
    If Sheets(name).Cells(4 + i, 57) <> x Then
        If Sheets(name).Cells(4 + i, 57) <> 0 Then
            If Sheets(name).Cells(4 + i, 57) = 3 Then
                a = x
                Sheets(name).Cells(4 + i, 58) = Sheets(name).Cells(4 + i, 57) - x
                x = Cells(4 + i, 57) - x
            End If
            **Sheets(name).Cells(4 + i, 58) = Sheets(name).Cells(4 + i, 57) - a**
            x = Sheets(name).Cells(4 + i, 57) - a
        Else
        Cells(4 + i, 58) = ""
        End If
    Else
    Cells(4 + i, 58) = ""
    End If

i = i + 1
Loop

End Sub

Как вы думаете, можете мне помочь? Я использую Excel 2010 в Windows 7. Большое спасибо

9
задан Community 9 July 2018 в 19:34
поделиться