Есть макрос который переносит данные из другой книги/листа на активыный лист.
При этом используются диалоговые окна InputBox. Может это важно.
Как это работает.
1.
Код |
---|
Set MyWorkbook= ActiveWorkbook : Set MySheet = ActiveSheet |
3. Юзер переключается на другой лист в другой книге и в InputBox юзер вводит адрес ачейки-донора
4. После закрытия диалогового окна начинается перенос данных. При этом активной остается книга-донор на которую руками переключился юзер.
5. После переноса данных стоит команда
Код |
---|
MyWorkbook.Activate MySheet.Activate |
Ошибку не выдает, но и на изначальный лист с которого юзер начал работу, не переключает.
Вариации с
Код |
---|
MyWorkbook.Select или Application.Window(MyWorkbook.Name).Activate |
не помогли
П/С в пределах одной рабочей книги переключение листов работает.
Работает также если макросом по запросу юзера другая рабочая книга (если нужный файл не открыт) сначала открывается. Потом юзер в ней выбирает ячейку. Затем макрос отрабатывает и переключает на изначальный лист.