Страницы: 1
RSS
Получение значений из любой книги, Диалоговое окно
 
Здравствуйте,

Мне нужен код для получения значений из любой другой закрытой или открытой книги.
Сейчас я пользуюсь следующим кодом.
Код
Sub GetPrice()
Range("A1:C10000") = "=IFERROR(IF('[ВЫБРАТЬ ФАЙЛ.xlsb]ВЫБРАТЬ ЛИСТ'!RC=0,"""",'[ВЫБРАТЬ ФАЙЛ.xlsb]ВЫБРАТЬ ЛИСТ'!RC),0)"
End sub

Проблема, в том что, если отменить диалоговое окно для выбора файла, код продолжает выполнятся и вставляется нули.
Необходимо, чтобы выполнение макроса остановилось (exit sub), если отменить диалоговое окно.

Хотел поэкспериментировать с Application.GetOpenFilename и FileDialog(msoFileDialogFilePicker) после чего появились ошибки.
При запуске выдаёт ошибку Method_Default of object 'Range' failed, а если указать Range("A1:C10000").FormulaR1C1 то ошибка Method 'FormulaR1C1' of object 'Range' failed. Или же формула вставляется, но связи не обновляются (не появляется окно для выбора листа).

Вообщем, нужно чтобы при запуске макроса, появилось окно откуда можно выбрать любой файл и любой лист и получить значения в текущую книгу. А при отмене окна, выйти из макроса.

Спасибо за внимание.
 
давайте напишем такой макрос
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, Давайте. Буду признателен. Если напишите такой макрос и он будет работать как надо, сообщите, или сразу напишите в личку.
 
я написал личное сообщение
там контакты указаны
и макрос готов что мне с ним делать?
отправлено, оплата получена
Изменено: Ігор Гончаренко - 13.12.2020 10:41:44
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Ігор Гончаренко, Ответил вам в личку.
 
От Ігор Гончаренко работу получил и результатом доволен.

Спасибо.  
Страницы: 1
Наверх