Страницы: 1
RSS
Сводная таблица. Сохранение шаблона, Создать шаблон сводной таблицы
 
Добрый день!

Подскажите пжл, есть ли такая опция. Я постоянно качаю отчеты и делаю сводные,
но сводные одинаковые (название строк и столбцов) просто много параметров и вот пришла мысль,
а можно ли создать шаблон параметров сводной и в каждый новый отчет вставлять?
 
А если не Сводную вставлять в Отчет, а в готовую Сводную подтягивать данные из нового Отчета?
Согласие есть продукт при полном непротивлении сторон
 
А размеры отчета? Они каждый раз разные. Может быть 500 строк, а может и 1000.
 
Если структура отчета всегда одинаковая, т.е.
Цитата
tanya-22-77 написал:
сводные одинаковые (название строк и столбцов)
то количество строк в отчете значения не имеет.
Согласие есть продукт при полном непротивлении сторон
 
А что значит "подтягивать данные"?
Скопировать таблицу? Скопировать лист?
 
tanya-22-77, добрый день.

Мой способ работы с шаблоном:
  • Лист Данные: хранит данные для сводной и организован максимально удобно для создания сводной: 1-я строка - заголовки столбцов, начиная со 2-ой строки - данные.
  • Лист Свод: сама сводная таблица.
В качестве источника данных для сводной я ссылаюсь на целые столбцы: "Данные!$A:$M" (при таком подходе в сводной появляется некрасивая строка "(пусто)", которую можно скрыть фильтром).

Для обновлении данных в шаблоне я переписываю целиком столбцы листа Данные из нового отчёта.
После чего нужно обновить сводную.
Эти 2 шага (если разом обновляются много файлов) можно автоматизировать - я на форуме уже давал ссылку на свою программу "TXT-XLS конвертация".
 
Цитата
tanya-22-77 написал:
А размеры отчета? Они каждый раз разные. Может быть 500 строк, а может и 1000.
Мне кажется, после такой фразы нужно Татьяну отправить посмотреть хоть пару роликов про сводные таблицы.
Узнать, что источником данных могут быть и умные таблицы. Тогда никаких проблем с изменением числа строк данных не будет.
Вот когда уже будут объемы более 1 млн строк (не будут помещаться на лист excel) и/или нужны будут расчеты посложнее и/или файл будет тормозить и много весить, тогда уже отправим изучать PQ/PP :)
 
Здравствуйте!
tanya-22-77, если у Вас трудности
Цитата
tanya-22-77 написал:
А что значит "подтягивать данные"?Скопировать таблицу? Скопировать лист?
Вопрос: Отчеты имеют одинаковую структуру? На этот вопрос Вы не ответили.
Про количество строк понятно...
Предлагаю рассмотреть вариант с макросом. Нажимаете на кнопку, загружаете файл по Вашему выбору,
сводная таблица автоматически обновляется...
Поясняю на своем примере (файл с макросом прикладываю), после нажатию на кнопку "Старт":
На Лист "Отчет" загружаются исходные данные из файла, который Вы выбираете сами.
Созданная Таблица "умная" (присвоено имя = "УТ_Отчет") сама подстроится в размерах под загруженные данные, сводная таблица обновится.
Я не специалист по VBA и составила возможно не идеальный макрос, но он выполняет свою задачу.
Это просто вариант решения и если этот вариант решения (макросом) Вам подходит...
... то можете попробовать прямо в мой файл вставить на Лист "Отчет" свои данные вместе с заголовками, начиная с ячейки A2.
Затем на Листе "СТ" обновите сводную таблицу, не пугайтесь, таблица слетит, останется только область для построения сводной таблицы
и список полей из заголовков Вашей таблицы (ПКМ - показать список полей). Постройте свою сводную таблицу - шаблон.
Сохраните файл. Затем тестируйте с другими файлами уже с помощью кнопки запуска макроса.
В принципе если вариант с макросом Вы рассматриваете, то варианты и идеи Вам подкинут...
Если в дальнейшем необходимо сохранить файл со сводной таблицей, можете в макросе добавить сохранение по заданному пути и шаблону.
(Даже не верю, что я это пишу...в макросах дилетант... и рискую попасть на острый язык профессионалов), но выручать Вас, tanya-22-77, после слов surkenny, как-то надо... ;)
Всего доброго!)
 
Здравствуйте!
Ma_Ri
Цитата
(Даже не верю, что я это пишу...в макросах дилетант..
И я тоже не верю. Ущипните меня наверно это сон. :D

Ma_Ri может быть в этой строке не обязательно использовать On Error Resume Next
Код
On Error Resume Next: ws.ShowAllData: On Error GoTo 0
А записать так
Код
If ws.FilterMode Then ws.ShowAllData
Ссылку tbl используете один раз  в коде. Может она не нужна, и просто написать так
Код
ws1.ListObjects(1).DataBodyRange.Delete
 
Здравствуйте!
Евгений Смирнов,  ;)  
Спасибо, приму к сведению...
Хороших выходных ВСЕМ! )
Страницы: 1
Наверх