Страницы: 1
RSS
Как создать сводную таблицу из нескольких листов Excel
 
Добрый день, Уважаемые!  
Данный вопрос звучит на форуме часто, так как в Екселе почему то нет нормального мастера создающего полноценную сводную из нескольких листов (диапазонов). Консолидация тут не подходит, и я решил предложить свой вариант, разработанный с использованием ADO.  
Суть моего решения (см.файл) такова:  
Имеем несколько листов в книге, на каждом листе таблица (структура таблиц должна быть одинакова). Макрос собирает данные из всех таблиц в один Recordset и загружает его в сводную таблицу. При изменении данных достаточно обновить сводную таблицу нажатием на кномпочку.  
Надеюсь данное решение облегчит вам создание такой удобной сводной.  
Надеюсь услышать отзывы старожилов.  
Антон.
Редко но метко ...
 
А здесь http://www.planetaexcel.ru/tip.php?aid=233 не то?
 
В общем и целом задумка такая же. При этом в моем решении есть проверка на версию екселя, и есть проверка на существование сводной (то есть если она есть она просто обновляестся).  
Короче говоря таже задумка с некоторыми удобствами )).
Редко но метко ...
 
Excel 2007 Win 7  
<EM><STRONG>Файл удален</STRONG> - велик размер - [<STRONG>МОДЕРАТОРЫ</STRONG>]</EM>
 
Вот версия не требующая подключения дополнительных библиотек.
Редко но метко ...
 
Ошибка 3704 в строке    
 
Err_:        ' при возникновении ошибки  
   objRecordset.Close: Set objRecordset = Nothing
 
сейчас ошибки быть не должно. см файл
Редко но метко ...
 
а чем не нравится встроенный мастер?
Живи и дай жить..
 
Он не позволяет создать полноценную сводную (по крайней мере в 2007 екселе).
Редко но метко ...
 
чего же там неполноценного?
Живи и дай жить..
 
мы, наверное о разных мастерах говорим?  
 
я думал, что это уже всем известно, что в 2007м тоже можно использовать мастер изстарого доброго 2003го, только он хорошо спрятан..
Живи и дай жить..
 
Где спрятан мастер я  знаю. Давайте для того что бы понять в чем различие, вы создадите сводную (по моему файлу посты. выше) мастером. И сравним получившийся результат.
Редко но метко ...
 
Вы про этот мастер говорите ?
Редко но метко ...
 
Антон, я не специально :)
 
Для корректной работы моего макроса нужно что бы на всех листах с данными были таблицы одинаковой структуры. Если есть другие листы с данными кроме таблиц, будет выскакивать эта ошибка. Если в книге нужны еще листы кроме листов с таблицами, тогда в макросе нужно задать конкретный список листов откуда брать таблицы.
Редко но метко ...
 
да про этот мастер. да, посмотрел, разница есть. :)
Живи и дай жить..
 
И я об этом )
Редко но метко ...
 
Подскажите, в котором именно месте, вставлять список листов?  
Спасибо.
 
Хорошо, тогда подскажите, как именно вписать в:  
 
For Each shCurr In ThisWorkbook.Worksheets  
       If Not shCurr.Name = shSvTab.Name And Not shCurr.UsedRange.Cells.Count = 1 Then  
           ReDim Preserve arrSQL(1 To i)  
           arrSQL(i) = "Select * From " & "[" & shCurr.Name & "$]"
           i = i + 1  
       End If  
 
что нужны листы с Лист1 по Лист5.  
Спасибо.
 
Велосипед здесь:   
http://www.contextures.com/xlPivot08.html
 
За ссылочку спасибо большое, вот только бы ещё и точку изменения указать..,  
ну как раньше делали:   
http://www.planetaexcel.ru/forum.php?thread_id=12359 )
Страницы: 1
Наверх