«Ошибка времени выполнения 424: требуется объект» в Excel VBA - PullRequest
0 голосов
/ 04 января 2019

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

Я набрал код, как показано ниже, и я думаю, что, вероятно, ему чего-то не хватает, потому что код ошибки «Ошибка во время выполнения« 424 »: требуется объект» продолжает появляться.И я понятия не имею, чего не хватает.Вот код:

Sub EnquiryChecking()
Dim i As Integer

If (Sheet1.Cells(3, 3) = DataList.Cells(i, 1)) And (Sheet1.Cells(4, 3) = DataList.Cells(i, 4)) And (Sheet1.Cells(5, 3) = DataList.Cells(i, 5)) Then
    Sheet1.Cells(7, 3) = DataList.Cells(i, 2)
    Sheet1.Cells(8, 3) = DataList.Cells(i, 3)
    Sheet1.Cells(9, 3) = DataList.Cells(i, 6)
    Sheet1.Cells(10, 3) = DataList.Cells(i, 7)
    Sheet1.Cells(11, 3) = DataList.Cells(i, 8)
    Sheet1.Cells(12, 3) = DataList.Cells(i, 9)
Else
    Sheet1.Cells(14, 2) = "Error Input"
End If

End Sub

Большое спасибо!

Еще одно обновление: я добавил цикл for для i, и теперь код может выполняться.Но теперь Sheet1.Cell не показывает данные DataList.Cell (даже если ввод неправильный, он не показывает «Ввод ошибок». Что происходит? Кроме того, что я должен добавить, если я хочу, чтобы данные отображались мгновеннов клетке? Вот код:

Sub EnquiryChecking()

Dim i As Integer
For i = 1 To i
If (ActiveWorkbook.Sheets("Sheet1").Cells(3, 3) = ActiveWorkbook.Sheets("DataList").Cells(i, 1)) And (ActiveWorkbook.Sheets("Sheet1").Cells(4, 3) = ActiveWorkbook.Sheets("DataList").Cells(i, 4)) And (ActiveWorkbook.Sheets("Sheet1").Cells(5, 3) = ActiveWorkbook.Sheets("DataList").Cells(i, 5)) Then
Worksheets("Sheet1").Cells(7, 3) = Worksheets("DataList").Cells(i, 2)
Worksheets("Sheet1").Cells(8, 3) = Worksheets("DataList").Cells(i, 3)
Worksheets("Sheet1").Cells(9, 3) = Worksheets("DataList").Cells(i, 6)
Worksheets("Sheet1").Cells(10, 3) = Worksheets("DataList").Cells(i, 7)
Worksheets("Sheet1").Cells(11, 3) = Worksheets("DataList").Cells(i, 8)
Worksheets("Sheet1").Cells(12, 3) = Worksheets("DataList").Cells(i, 9)
Exit For
Else
Sheet1.Cells(14, 2) = "Error Input"
End If
Next i

End Sub

Большое спасибо!

1 Ответ

0 голосов
/ 04 января 2019

Замените DataList на ActiveWorkbook.Sheets("DataList"), чтобы избежать этой ошибки.

Для получения дополнительной информации см. ЭТО .

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