VBA Excel «Обязательный объект»

Мои коды дают мне ошибку Object Required 424 в этой строке:

lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row 

Мой полный код:

 Private Sub Worksheet_Change(ByVal Target As Range) ' If Target.Count > 1 Then Exit Sub ' If Target.Column > 2 Then Exit Sub Application.EnableEvents = False If Target.Column = 6 Then If Target.Offset(0, 1).Value <> "" Then MsgBox "You must only fill in one of the two columns" Target.ClearContents GoTo ExitSub End If End If If Target.Column = 7 Then If Target.Offset(0, -1).Value <> "" Then MsgBox "You must only fill in one of the two columns" Target.ClearContents GoTo ExitSub End If End If Dim arrData() As Variant Dim i As Long Dim lngRow As Long Dim myNum As Variant Dim ws As Worksheet myNum = Target.Value If Target.Column = 6 Then With BogieInspectionPoints 'this is a sheet name lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row arrData = .Range("a1:b" & lngRow) End With End If If Target.Column = 7 Then With WagonInspectionPoints 'this is a sheet name lngRow = .Cells(.Rows.Count, 1).End(xlUp).Row arrData = .Range("a1:b" & lngRow) End With End If For i = 1 To lngRow If myNum = arrData(i, 1) Then Cells(Target.Row, 8).Value = arrData(i, 2) Exit For End If Next ExitSub: Application.EnableEvents = True End Sub 

Похоже, что эти переменные листа не установлены.

Вам нужно будет добавить это вверху.

 Dim BogieInspectionPoints as Worksheet Dim WagonInspectionPoints as Worksheet Set BogieInspectionPoints = ActiveWorkbook.Sheets("BogieInspectionPoints") Set WagonInspectionPoints = ActiveWorkbook.Sheets("WagonInspectionPoints") 

Я предполагал, что есть другой код. Когда вы добавляете эту строку, все операторы With должны обрабатывать правильно, используя код, который вы опубликовали.

То, что вы делаете с операторами WITH, – это сокращение объекта. Вместо написания

 BogieInspectionPoints.Range("A1") 

'Больше кода

Ты можешь написать

 With BogieInspectionPoints .Range("A1") End With 

Это мешает вам написать полное имя объекта.

Interesting Posts

Отчет SSRS: как начать отчет по строке 1 и как показать линии сетки?

Вставьте Google Chrome или Firefox в лист Excel

Формирование XML путем извлечения значений из Excel в Java

Извлечь данные из Power Pivot ("Item.data")

Использовать информацию базы данных доступа в проекте C ++

EPPlus: Как обновить Pivot Table SourceRange

Как применить условное форматирование к нескольким столбцам с помощью макроса excel

Excel VBA – изменение цвета ячейки на основе события из других листов

read.xlsx () выдает ошибку в R

Прокрутите все листы

Excel Addins и дополнительные драйверы

Формула поиска перекрестных таблиц Excel

Как использовать структурированные ссылки для идентификации столбца и использовать значения строк в указанном столбце в качестве критериев?

Как выполнить цикл элементов фильтра и скрыть элементы в сводной таблице Excel с помощью модели данных?

связанные с статьей Получить поддиапазон, который имеет все ячейки диапазона, за исключением диапазона

Давайте будем гением компьютера.