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

Вход

Регистрация

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

 

= Мир MS Excel/Получение данных из закрытой книги - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Получение данных из закрытой книги (Макросы/Sub)
Получение данных из закрытой книги
Vlad_Turbin Дата: Суббота, 19.04.2014, 13:14 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Здравствуйте уважаемые форумчане!
1. Есть книга, в которую необходимо получить данные из другой закрытой книги
2. Закрытая книга защищена паролем (но это не главное)
3. В открытой книге (Книга1) есть выпадающий список, привязанный к диапазону, где хранятся имена Листов закрытой Книги2, это сделано просто для удобства
4. К кнопке привязан макрос, который создает в открытой Книге1 лист Temp, получает данные из закрытой Книги2, при этом запрашивается пароль на открытие файла Excel (Книги2), переносит данные на Лист Temp открытой Книги 1, определенным образом форматирует перенесенную таблицу (удаляет строки если в ячейках значение "0", удаляет определенные столбцы, вырезает из ячеек данные и вставляет в другие ячейки Листа Temp).
5. В Книге 2 присутствуют и данные, и текст, и формулы

ПРОБЛЕМА: Данные с некоторых листов переносятся, а с некоторых нет! Вылезает сообщение Run-time Error '1004' невозможно прочитать файл.
Ошибка возникает на строке .Formula = "='" & sPath & "[" & sFile & "]" & sShName & "'!" & "A1" Как с этим бороться

ВОПРОС: Можно-ли в тело макроса "зашить" пароль от Книги 2, что бы не вводить его постоянно?
К сообщению приложен файл: 555_55_5.xls (46.0 Kb)
 
Ответить
СообщениеЗдравствуйте уважаемые форумчане!
1. Есть книга, в которую необходимо получить данные из другой закрытой книги
2. Закрытая книга защищена паролем (но это не главное)
3. В открытой книге (Книга1) есть выпадающий список, привязанный к диапазону, где хранятся имена Листов закрытой Книги2, это сделано просто для удобства
4. К кнопке привязан макрос, который создает в открытой Книге1 лист Temp, получает данные из закрытой Книги2, при этом запрашивается пароль на открытие файла Excel (Книги2), переносит данные на Лист Temp открытой Книги 1, определенным образом форматирует перенесенную таблицу (удаляет строки если в ячейках значение "0", удаляет определенные столбцы, вырезает из ячеек данные и вставляет в другие ячейки Листа Temp).
5. В Книге 2 присутствуют и данные, и текст, и формулы

ПРОБЛЕМА: Данные с некоторых листов переносятся, а с некоторых нет! Вылезает сообщение Run-time Error '1004' невозможно прочитать файл.
Ошибка возникает на строке .Formula = "='" & sPath & "[" & sFile & "]" & sShName & "'!" & "A1" Как с этим бороться

ВОПРОС: Можно-ли в тело макроса "зашить" пароль от Книги 2, что бы не вводить его постоянно?

Автор - Vlad_Turbin
Дата добавления - 19.04.2014 в 13:14
wild_pig Дата: Суббота, 19.04.2014, 18:44 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 517
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Книгу а не лист надо?
[vba]
Код
Sheets("Лист1").Unprotect "пароль"
[/vba]
А вторую книгу заценить можно? Уж больно интересный код, может сократим.


Сообщение отредактировал wild_pig - Суббота, 19.04.2014, 18:57
 
Ответить
СообщениеКнигу а не лист надо?
[vba]
Код
Sheets("Лист1").Unprotect "пароль"
[/vba]
А вторую книгу заценить можно? Уж больно интересный код, может сократим.

Автор - wild_pig
Дата добавления - 19.04.2014 в 18:44
Vlad_Turbin Дата: Суббота, 19.04.2014, 22:23 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Вторую книгу заценить можно!
Не могу обещать, что проблема описанная возникнет, т.к. пришлось убрать личные данные, но понять можно!
Пароль на открытие 25021960
Чтобы отобразить стандартную панель инструментов Excel (убрана для удобства работы) запустить макрос CTRL+А ("А" - на русской раскладке)
В Книге просто туча мкросов и формул, согласен, что написано криво, однако все работает!
Из-за того, что файл содержит большое кол-во макросов, его размер больше 100kb, поэтому скачать можно через файлообменник.
Ссылка: Удалено. Нарушение Правил форума
 
Ответить
СообщениеВторую книгу заценить можно!
Не могу обещать, что проблема описанная возникнет, т.к. пришлось убрать личные данные, но понять можно!
Пароль на открытие 25021960
Чтобы отобразить стандартную панель инструментов Excel (убрана для удобства работы) запустить макрос CTRL+А ("А" - на русской раскладке)
В Книге просто туча мкросов и формул, согласен, что написано криво, однако все работает!
Из-за того, что файл содержит большое кол-во макросов, его размер больше 100kb, поэтому скачать можно через файлообменник.
Ссылка: Удалено. Нарушение Правил форума

Автор - Vlad_Turbin
Дата добавления - 19.04.2014 в 22:23
Hugo Дата: Суббота, 19.04.2014, 22:41 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3252
Репутация: 707 ±
Замечаний: 0% ±

2019
На каком листе ругается?


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеНа каком листе ругается?

Автор - Hugo
Дата добавления - 19.04.2014 в 22:41
Vlad_Turbin Дата: Суббота, 19.04.2014, 22:58 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
В том-то и беда! В примере не ругается, однако пример сокращен, по факту в Книге 2 - 57 листов, листы называются ООО Рога и Копыта, Арбузолитейный завод :), к примеру, и т.п., так вот не понятно почему, на некоторые листы ругается, независимо от того какое количество записей в табличке на листе! Все листы отформатированы одинаково, одни и теже формулы!
 
Ответить
СообщениеВ том-то и беда! В примере не ругается, однако пример сокращен, по факту в Книге 2 - 57 листов, листы называются ООО Рога и Копыта, Арбузолитейный завод :), к примеру, и т.п., так вот не понятно почему, на некоторые листы ругается, независимо от того какое количество записей в табличке на листе! Все листы отформатированы одинаково, одни и теже формулы!

Автор - Vlad_Turbin
Дата добавления - 19.04.2014 в 22:58
Hugo Дата: Суббота, 19.04.2014, 23:34 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3252
Репутация: 707 ±
Замечаний: 0% ±

2019
Названия листов не нравятся? Попробуйте вручную задать ссылку на такой лист и посмотрите, что будет в формуле.


excel@nxt.ru
webmoney: E265281470651 Z422237915069
 
Ответить
СообщениеНазвания листов не нравятся? Попробуйте вручную задать ссылку на такой лист и посмотрите, что будет в формуле.

Автор - Hugo
Дата добавления - 19.04.2014 в 23:34
Vlad_Turbin Дата: Воскресенье, 20.04.2014, 07:59 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Скорее всего не нравится большое количество форматов, Данные с одного и того-же листа, к примеру, сегодня могут нормально перенестись, а завтра нет! Может подскажете, есть-ли возможность просто копировать Лист из закрытой Книги 2 в открытую Книгу 1, Название листа берется из выпадающего списка в Книге 1?
 
Ответить
СообщениеСкорее всего не нравится большое количество форматов, Данные с одного и того-же листа, к примеру, сегодня могут нормально перенестись, а завтра нет! Может подскажете, есть-ли возможность просто копировать Лист из закрытой Книги 2 в открытую Книгу 1, Название листа берется из выпадающего списка в Книге 1?

Автор - Vlad_Turbin
Дата добавления - 20.04.2014 в 07:59
Hugo Дата: Воскресенье, 20.04.2014, 12:48 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3252
Репутация: 707 ±
Замечаний: 0% ±

2019
Копировать лист можно - если книга с общим доступом или никем не занята. Просто открываете книгу кодом и копируете - можно это записать рекордером.
Но при копировании листа убиваются строки >255 символов, если есть такие строки то листы нужно переносить, затем источник закрыть без сохранения.


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

Автор - Hugo
Дата добавления - 20.04.2014 в 12:48
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Получение данных из закрытой книги (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

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