excel 2007 метод oleobjects объекта не выполнен

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

Иногда мне нужно сохранить счет, чтобы добавить или изменить позже. Поэтому я копирую этот рабочий лист и переименовываю его с именем клиента. Это работает отлично уже более года. Но на прошлой неделе, когда я нажимаю на любую ячейку на скопированных листах, она имеет ошибку времени выполнения 1004. Метод «OLEObjects» объекта «_Worksheet» не удался. Затем комбо-поля не работают. Но это делается только на скопированных листах. Исходный рабочий лист отлично работает. Какие-либо предложения? Вот код, который используется:

'========================== Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, _ Cancel As Boolean) Dim str As String Dim cboTemp As OLEObject Dim ws As Worksheet Dim wsList As Worksheet Set ws = ActiveSheet Set wsList = Sheets("ValidationLists") Cancel = True Set cboTemp = ws.OLEObjects("Parts") On Error Resume Nex With cboTemp 'clear and hide the combo box .ListFillRange = "" .LinkedCell = "" .Visible = False End With On Error GoTo errHandler If Target.Validation.Type = 3 Then 'if the cell contains a data validation list Application.EnableEvents = False 'get the data validation formula str = Target.Validation.Formula1 str = Right(str, Len(str) - 1) With cboTemp 'show the combobox with the list .Visible = True .Left = Target.Left .Top = Target.Top .Width = Target.Width + 5 .Height = Target.Height + 5 .ListFillRange = str .LinkedCell = Target.Address End With cboTemp.Activate End If errHandler: Application.EnableEvents = True Exit Sub End Sub Private Sub Worksheet_Change(ByVal Target As Range) End Sub '========================================= Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim str As String Dim cboTemp As OLEObject Dim ws As Worksheet Set ws = ActiveSheet Application.EnableEvents = False Application.ScreenUpdating = True If Application.CutCopyMode Then 'allow copying and pasting on the worksheet GoTo errHandler End If Set cboTemp = ws.OLEObjects("Parts") On Error Resume Next With cboTemp .Top = 10 .Left = 10 .Width = 0 .ListFillRange = "" .LinkedCell = "" .Visible = False .Value = "" End With errHandler: Application.EnableEvents = True Exit Sub End Sub '==================================== 'Optional code to move to next cell if Tab or Enter are pressed 'from code by Ted Lanham Private Sub Parts_KeyDown(ByVal _ KeyCode As MSForms.ReturnInteger, _ ByVal Shift As Integer) Select Case KeyCode Case 9 'Tab ActiveCell.Offset(0, 1).Activate Case 13 'Enter ActiveCell.Offset(1, 0).Activate Case Else 'do nothing End Select End Sub 

Задача cboTemp = ws.OLEObjects («Части») – вот где проблема. Он появляется дважды и помечен для обоих из них.

Interesting Posts

Как автоматически экспортировать диаграмму из Excel (или Calc) в PNG

ROW () в формуле Excel для Mac 2011

Excel 2010 – Как найти первую ячейку, начинающуюся с цифры в колонке до слов?

Excel: ошибка превышения значения с помощью MID

Как добавить timestamp в выходной файл MySQL?

Изменение цвета ячейки в Excel в соответствии с смежным значением выпадающего списка

Публикация листа Excel в SharePoint со связанными изображениями

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

Index-Match: строка в ячейке для сопоставлений

Получение исключения Oledb при обновлении столбца в excel

VBA Scripting: QueryTable в цикле не оставляет извлеченный текст в ячейке

Скопируйте каждый рабочий лист из одного файла excel в другой

Продолжайте получать ошибки во время выполнения VBA

GET изображения с URL-адреса, а затем переименуйте изображение

Ссылка на вторую строку в названной таблице для проверки данных

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