Я создал надстройку с использованием VBA, которая представляет собой книгу с расчетами. Надстройка имеет пользовательскую форму для извлечения соответствующей информации из базы данных доступа и заполняет книгу. После заполнения данных вычисления выполняются в Sheet1. Мне нужно вставить рабочий лист «Sheet1» из таблицы надстроек в новую книгу по запуску макроса надстройки.Выберите рабочий лист в надстройке Excel для запуска макроса VBA
Однако, когда я запускаю надстройку, рабочий лист скрыт, поэтому мои данные не обновляются. Я получаю эту ошибку: «Ошибка выполнения« 1004 »: метод« Рабочие листы »объекта« _Global »не удался».
Может ли кто-нибудь сказать мне, как работать с надстройкой, которая имеет рабочий лист, где выполняются необходимые вычисления?
Интригующая часть - это когда я загружаю надстройку после удаления ее из списка надстроек в excel, она отлично работает. Но когда я повторно запускаю макрос, рабочий лист становится скрытым, поэтому появляется такая же ошибка. Я довольно новичок в VBA, поэтому любые предложения будут оценены!
Редактировать
Код:
Private Sub OptionOK_Click() 'On selecting OK from userform
Dim ws1 As Worksheet
Sheets("Sheet1").Visible = True
Set ws1 = Worksheets("Sheet1")
'User Form Validation
If Trim(Me.cboData.value) = "" Then
Me.cboData.SetFocus
MsgBox "Please complete the form"
Exit Sub
End If
'copies data to given cell in excel
ws1.Range("A1").value = Me.cboData.value
'To copy selection from "Sheet1" into new workbook
Workbooks("myaddin.xlam").Sheets(1).Copy
End Sub
Я получаю ошибку на ...> Простыни ("Лист1") Visible = True..
Спасибо, я попробовал. У меня есть Dim WS1 As Worksheet Таблицах ("Лист1") Visible = True Set ws1 = Worksheets ("Лист1") Я получаю эту ошибку:. Runtime Ошибка 9, Подстрочный вне диапазона. Я тоже искал в Интернете, но я не вижу никаких связанных решений. – VBAlearner
Спасибо за редактирование. cbo - это combobox в пользовательской форме. me.cboData относится к combobox, который использует базу данных доступа для формирования списка. – VBAlearner
Да, я считаю, что мы можем ссылаться на рабочие листы («Лист1») или рабочие листы (1). Как я уже упоминал, надстройка отлично работает, когда я удаляю ее и снова устанавливаю в excel. Он зависает, когда я запускаю макрос после первого раза. – VBAlearner