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

Вход

Регистрация

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

 

= Мир MS Excel/Объединение данных с нескольких книг в одну - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Объединение данных с нескольких книг в одну (Формулы/Formulas)
Объединение данных с нескольких книг в одну
ReAnima Дата: Среда, 01.06.2016, 13:06 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация: 9 ±
Замечаний: 20% ±

Excel 2013
Доброе время суток, форумчане.
Столкнулся с проблемой сбора данных с огромного кол-ва документов в 1-н. Через поиск на форуме нашел подходящий вариант, но не могу его подстроить под себя. Лист, с которого необходимо вытащить данные 1-н, называется в каждой книге он аналогично, если я прописываю его 1-н раз при выполнении процедуры выходит ошибка при попытке извлечения данных из 2-го файла, если прописываю 2 раза, то процедура выполняется, но данные с 1-й книги вставляются 1-н раз, а данные со 2-й книги вставляются 2 раза. Сам разобраться не смог, подскажите, что нужно поменять в процедуре. Заранее спасибо. Файл во вложении.
P.S. данные с 1-й книги необходимы полностью, с каждой последующей книги без 1-й строки (шапка).
К сообщению приложен файл: 222.xls (33.5 Kb)
 
Ответить
СообщениеДоброе время суток, форумчане.
Столкнулся с проблемой сбора данных с огромного кол-ва документов в 1-н. Через поиск на форуме нашел подходящий вариант, но не могу его подстроить под себя. Лист, с которого необходимо вытащить данные 1-н, называется в каждой книге он аналогично, если я прописываю его 1-н раз при выполнении процедуры выходит ошибка при попытке извлечения данных из 2-го файла, если прописываю 2 раза, то процедура выполняется, но данные с 1-й книги вставляются 1-н раз, а данные со 2-й книги вставляются 2 раза. Сам разобраться не смог, подскажите, что нужно поменять в процедуре. Заранее спасибо. Файл во вложении.
P.S. данные с 1-й книги необходимы полностью, с каждой последующей книги без 1-й строки (шапка).

Автор - ReAnima
Дата добавления - 01.06.2016 в 13:06
_Boroda_ Дата: Среда, 01.06.2016, 14:23 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Что-то я не очень понял такого замута с названиями и с парными Setами, ну да ладно. У Вас rSheets получается из ячеек В2:В3, а нужно, насколько я понял, только В2.
Попробуйте написать с минус единицей
[vba]
Код
Set rSheets = rSheets.Offset(rSheet.Row - rSheets.Row).Resize(rSheets.Rows.Count - rSheet.Row + rSheets.Row - 1)
[/vba]
А по поводу первой строки - можно всегда вставлять отдельно первую строку из всех файлов-источников в первую строку файла-приемника и отдельно вставлять 2-n строки из источников в первую ПУСТУЮ строку приемника. Немного подольше будет, но зато код попроще.

По сбору данных куча всего есть здесь http://excelvba.ru/category/Excel/consolidation


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЧто-то я не очень понял такого замута с названиями и с парными Setами, ну да ладно. У Вас rSheets получается из ячеек В2:В3, а нужно, насколько я понял, только В2.
Попробуйте написать с минус единицей
[vba]
Код
Set rSheets = rSheets.Offset(rSheet.Row - rSheets.Row).Resize(rSheets.Rows.Count - rSheet.Row + rSheets.Row - 1)
[/vba]
А по поводу первой строки - можно всегда вставлять отдельно первую строку из всех файлов-источников в первую строку файла-приемника и отдельно вставлять 2-n строки из источников в первую ПУСТУЮ строку приемника. Немного подольше будет, но зато код попроще.

По сбору данных куча всего есть здесь http://excelvba.ru/category/Excel/consolidation

Автор - _Boroda_
Дата добавления - 01.06.2016 в 14:23
ReAnima Дата: Среда, 01.06.2016, 15:16 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация: 9 ±
Замечаний: 20% ±

Excel 2013
спасибо, за ответ. если изменить код таким образом, то для 2-х файлов работает, если вытягиваешь данные из 3-х файлов надо менять на "-2".
 
Ответить
Сообщениеспасибо, за ответ. если изменить код таким образом, то для 2-х файлов работает, если вытягиваешь данные из 3-х файлов надо менять на "-2".

Автор - ReAnima
Дата добавления - 01.06.2016 в 15:16
ReAnima Дата: Среда, 01.06.2016, 15:19 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация: 9 ±
Замечаний: 20% ±

Excel 2013
Можно это автоматизировать, чтобы не менять код в зависимости от кол-ва файлов, с которых тянутся данные ?
 
Ответить
СообщениеМожно это автоматизировать, чтобы не менять код в зависимости от кол-ва файлов, с которых тянутся данные ?

Автор - ReAnima
Дата добавления - 01.06.2016 в 15:19
_Boroda_ Дата: Среда, 01.06.2016, 15:21 | Сообщение № 5
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Если лист всегда одинаковый, то почему просто не написать
[vba]
Код
Set rSheets = rSheets.Offset(rSheet.Row - rSheets.Row)
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЕсли лист всегда одинаковый, то почему просто не написать
[vba]
Код
Set rSheets = rSheets.Offset(rSheet.Row - rSheets.Row)
[/vba]

Автор - _Boroda_
Дата добавления - 01.06.2016 в 15:21
ReAnima Дата: Среда, 01.06.2016, 16:42 | Сообщение № 6
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация: 9 ±
Замечаний: 20% ±

Excel 2013
Спасибо, завтра попробую.
 
Ответить
СообщениеСпасибо, завтра попробую.

Автор - ReAnima
Дата добавления - 01.06.2016 в 16:42
ReAnima Дата: Четверг, 02.06.2016, 07:49 | Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 50
Репутация: 9 ±
Замечаний: 20% ±

Excel 2013
не работает, на извлечении данных со 2-го файла (тестировал на 3-х) выдает ошибку.
 
Ответить
Сообщениене работает, на извлечении данных со 2-го файла (тестировал на 3-х) выдает ошибку.

Автор - ReAnima
Дата добавления - 02.06.2016 в 07:49
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Объединение данных с нескольких книг в одну (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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