Так вот у меня есть VBA код, который является частью моей функции, но всякий раз, когда я бегу, я получаю следующее сообщение об ошибке:VBA Ошибка выполнения 9 листовым
Run-Time error '9': Subscript out of range
Фактическая рабочая таблица существует. В редакторе vba на боковой панели он отображается как Sheet2 (Data_Sheet). В деталях в этой панели, она показывает (Name) как лист 11 и Имя как Data_Sheet. Кто-нибудь знает возможный источник этой ошибки? Мой код ниже:
With Sheets("Data_Sheet")
'this searches just row 1
Set header_cell_1 = .Rows(1).Find(What:="One", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_2 = .Rows(1).Find(What:="Two", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_3 = .Rows(1).Find(What:="Three", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_4 = .Rows(1).Find(What:="Four", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_5 = .Rows(1).Find(What:="Five", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_6 = .Rows(1).Find(What:="Six", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
Set header_cell_7 = .Rows(1).Find(What:="Seven", lookat:=xlWhole, MatchCase:=False, searchformat:=False)
col_1 = header_cell_1.Column
col_2 = header_cell_2.Column
col_3 = header_cell_3.Column
col_4 = header_cell_4.Column
col_5 = header_cell_5.Column
col_6 = header_cell_6.Column
col_7 = header_cell_7.Column
End With
У вас открыто несколько книг, когда вы запускаете этот код? –
Только рабочая тетрадь и скрытая книга, в которой макросы автоматически сохраняются. – Paradox
Можете ли вы поместить 'MsgBox ThisWorkbook.Path & vbNewLine & ThisWorkbook.Name' чуть выше' With Sheets («Data_Sheet») 'и проверить, работает ли макрос из правильной книги? –