Tôi đã tạo macro cho tệp và trước tiên nó hoạt động tốt, nhưng hôm nay tôi đã mở và khởi động lại tệp và macro hàng trăm lần và tôi luôn nhận được lỗi sau: Lỗi thời gian chạy VBA Excel '13' Loại không khớpExcel VBA Lỗi thời gian chạy '13' Loại không phù hợp
Tôi không thay đổi bất kỳ điều gì trong macro và không biết tại sao tôi gặp lỗi. Hơn nữa phải mất nhiều thời gian để cập nhật macro mỗi khi tôi chạy nó (macro phải chạy khoảng 9000 hàng).
Lỗi nằm ở giữa ** **.
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
Bạn có nghĩ rằng bạn có thể giúp tôi? Tôi đang sử dụng excel 2010 trên windows 7. Cảm ơn rất nhiều
Đó là giá trị allways số giữa 0 và 3. – Diogo
Tôi đã nhận lỗi trong dòng đầu tiên của mã bạn đã cho tôi "biên dịch lỗi: lỗi cú pháp" – Diogo
Không nên có bất kỳ lỗi cú pháp. Hãy chắc chắn rằng bạn đặt nó ngay sau khi 'If' tuyên bố khác của bạn và rằng bạn có tất cả các dấu ngoặc đơn. –