Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Импорт данных из закрытого файла. - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Импорт данных из закрытого файла. (Макросы/Sub)
Импорт данных из закрытого файла.
Юрий_Нд Дата: Четверг, 23.11.2017, 16:23 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Доброго дня Всем.
Сегодня утром модератор _Boroda_ любезно предоставил мне текст процедуры,
импортирующей данные из закрытого файла.
Однако с установкой этой процедуры у меня возникли некоторые проблемы.
Например при пошаговым выполнении после строчки
Код
Range("B1") = ExecuteExcel4Macro(t_)

Выскакивает сообщение:
Обновить значения: Исходный файл с данными [Экспорт данных xlsx]Лист1
Я повторно ввожу путь файла с исходными данными и в импортирующем файле в ячейке B1 появляется сообщение - #ССЫЛКА!
Прошу помочь отладить программу
С уважением ________________ Юрий.
К сообщению приложен файл: 9344953.xlsx(9Kb) · 7731363.xlsm(14Kb)
 
Ответить
СообщениеДоброго дня Всем.
Сегодня утром модератор _Boroda_ любезно предоставил мне текст процедуры,
импортирующей данные из закрытого файла.
Однако с установкой этой процедуры у меня возникли некоторые проблемы.
Например при пошаговым выполнении после строчки
Код
Range("B1") = ExecuteExcel4Macro(t_)

Выскакивает сообщение:
Обновить значения: Исходный файл с данными [Экспорт данных xlsx]Лист1
Я повторно ввожу путь файла с исходными данными и в импортирующем файле в ячейке B1 появляется сообщение - #ССЫЛКА!
Прошу помочь отладить программу
С уважением ________________ Юрий.

Автор - Юрий_Нд
Дата добавления - 23.11.2017 в 16:23
_Boroda_ Дата: Четверг, 23.11.2017, 16:47 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11850
Репутация: 4910 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Найдите одно принципиальное отличие моего кода и Вашего
Где последний слэш в пути к файлу?
Вот так нужно
[vba]
Код
p_ = "D:\1 - Мой исходник\Исходный файл с данными\"
[/vba]

Или, чтобы лишний раз не думать
[vba]
Код
    p_ = "D:\1 - Мой исходник\Исходный файл с данными\" '
    ps_ = Application.PathSeparator
    If Right(p_, 1) <> ps_ Then p_ = p_ & ps_
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеНайдите одно принципиальное отличие моего кода и Вашего
Где последний слэш в пути к файлу?
Вот так нужно
[vba]
Код
p_ = "D:\1 - Мой исходник\Исходный файл с данными\"
[/vba]

Или, чтобы лишний раз не думать
[vba]
Код
    p_ = "D:\1 - Мой исходник\Исходный файл с данными\" '
    ps_ = Application.PathSeparator
    If Right(p_, 1) <> ps_ Then p_ = p_ & ps_
[/vba]

Автор - _Boroda_
Дата добавления - 23.11.2017 в 16:47
nilem Дата: Четверг, 23.11.2017, 17:10 | Сообщение № 3
Группа: Авторы
Ранг: Старожил
Сообщений: 1343
Репутация: 477 ±
Замечаний: 0% ±

Excel 2013
как вариант

Обе книги д.б. в одной папке


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениекак вариант

Обе книги д.б. в одной папке

Автор - nilem
Дата добавления - 23.11.2017 в 17:10
Юрий_Нд Дата: Четверг, 23.11.2017, 17:14 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Браво, _Boroda_, "с меня" еще один "плюсик", через 19 часов....


Сообщение отредактировал Юрий_Нд - Четверг, 23.11.2017, 17:15
 
Ответить
СообщениеБраво, _Boroda_, "с меня" еще один "плюсик", через 19 часов....

Автор - Юрий_Нд
Дата добавления - 23.11.2017 в 17:14
Юрий_Нд Дата: Четверг, 23.11.2017, 17:38 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 211
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
nilem, Я Вам также очень благодарен, однако к сожалению, моих знаний ещё недостаточно, чтобы полностью понять смысл этих двух строчек
[vba]
Код

Range("I1").Formula = "=ToArray('" & fPath & "Лист1'!A1:G8)"
Range("B1").Resize(UBound(aRez), UBound(aRez, 2)).Value = aRez
[/vba]
(особенно второй). Пока, я могу только догадываться, что эти строчки делают.
Если "найдете время", добавьте побольше комментариев.
Мне очень хотелось бы понять смысл этих строчек "до конца".


Сообщение отредактировал Юрий_Нд - Четверг, 23.11.2017, 17:40
 
Ответить
Сообщениеnilem, Я Вам также очень благодарен, однако к сожалению, моих знаний ещё недостаточно, чтобы полностью понять смысл этих двух строчек
[vba]
Код

Range("I1").Formula = "=ToArray('" & fPath & "Лист1'!A1:G8)"
Range("B1").Resize(UBound(aRez), UBound(aRez, 2)).Value = aRez
[/vba]
(особенно второй). Пока, я могу только догадываться, что эти строчки делают.
Если "найдете время", добавьте побольше комментариев.
Мне очень хотелось бы понять смысл этих строчек "до конца".

Автор - Юрий_Нд
Дата добавления - 23.11.2017 в 17:38
Hugo Дата: Четверг, 23.11.2017, 22:23 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2718
Репутация: 606 ±
Замечаний: 0% ±

Пока Николай где-то гуляет...
Первая строка всего лишь использует лист как механизм заполнения массива aRez данными,
вторая строка выгружает его на лист, начиная с ячейки B1 вниз и вправо по размерам массива.


excel@nxt.ru
webmoney: E265281470651 R418926282008 Z422237915069
 
Ответить
СообщениеПока Николай где-то гуляет...
Первая строка всего лишь использует лист как механизм заполнения массива aRez данными,
вторая строка выгружает его на лист, начиная с ячейки B1 вниз и вправо по размерам массива.

Автор - Hugo
Дата добавления - 23.11.2017 в 22:23
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Импорт данных из закрытого файла. (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!