Перекрытие отчетов сводных таблиц не допускается — Решение
Исправляем ошибку экселя — перекрытие отчетов сводных таблиц. Решение проблемы, когда одна сводная таблица заходит на ячейки другой сводной.
Сводная таблица удобный инструмент для формирования динамических отчетов (многоразовых). Более того, гибкости таким отчетам добавляют срезы, которые можно добавлять к сводным.
Но минус в том, что когда отпускаешь все фильтры и сводная растягивается максимально по строкам, она не добавляет новые строки на листе экселя, а движется поверх них замещая все что там есть.
Это вообще не страшно, когда у вас всего одна сводная, но становится проблемой, когда вы на одном листе хотите разместить несколько сводных одна по другой.
Так вот, когда верхняя сводная попытается залезть на територию нижней (загрузлось больше данных или отпустили все фильтры), то excel выдаст ошибку что-то типа «запрещено перекрытие отчетов сводных», то есть две сводные не могут размещаться на одних и тех же ячейках.
Во вложении решение этой проблемы через макрос.
После первой сводной есть большой пропуск строк – запас в 1000 строк, которые используются как буфер. Макрос отслеживает любое изменение сводной на листе и мгновенно пересматривает кол-во используемых строк сводной в заданном диапазоне, после чего прячет неиспользуемые строки. Так визуально две сводные находятся рядом возле друг друга и при этом решается проблема того, что одна сводная может залезть на другую.
Макрос сам размещается в коде листа, а не модуля — Жмакнуть правой кнопкой мыши на требуемый лист экселя слева внизу на панели листов документа / В контекстном меню выбрать «Просмотреть код» — сюда и размещать макрос.
Сам макрос с максимально детализированными комментариями:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
'отслеживаем изменение данных в сводных таблицах на листе
'Выключаем обновление экрана для ускорения
Application.ScreenUpdating = False
Dim lRow As Long
'открываем скрытые строки
Rows("15:1015").EntireRow.Hidden = False
'Диапазон для отслеживания пустых строк
Range("A14:A1015").Select
'Определяем последнюю используемую строку в заданном диапазоне
lRow = Selection.Find(What:="*", _
LookAt:=xlPart, _
LookIn:=xlFormulas, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious, _
MatchCase:=False).Row
lRow = lRow + 1
'Прячем лишние строки
Rows(lRow & ":1015").EntireRow.Hidden = True
Range("A14").Select
'Диаграмме приндительно меняем высоту, на случай если был какой=то сдвиг в данных
ActiveSheet.Shapes("Диаграмма 2").Height = 283.4645669291
'Включаем обновление экрана
Application.ScreenUpdating = True
End Sub
Пример работы, напоминаю, можно посмотреть во вложении.
Добавлять комментарии могут только зарегистрированные пользователи.
[
Регистрация
|
Вход
]
Archie Goodwin
«Странный этот мир, где двое смотрят на одно и то же, а видят полностью противоположное.» © Агата Кристи
Реклама
MS Office и VBA Рубрика содержит интересные решения, малоизвестные функции и возможности, надстройки и макросы, в общем, все то, что может сделать вашу работу в пакете программ MS Office (в первую очередь — Excel, Word, Access) более эффективной.
Перекрытие отчетов сводных таблиц не допускается — Решение
0.0 (0) | 11496 | 0
Сводная таблица удобный инструмент для формирования динамических отчетов (многоразовых). Более того, гибкости таким отчетам добавляют срезы, которые можно добавлять к сводным.
Но минус в том, что когда отпускаешь все фильтры и сводная растягивается максимально по строкам, она не добавляет новые строки на листе экселя, а движется поверх них замещая все что там есть.
Это вообще не страшно, когда у вас всего одна сводная, но становится проблемой, когда вы на одном листе хотите разместить несколько сводных одна по другой.
Так вот, когда верхняя сводная попытается залезть на територию нижней (загрузлось больше данных или отпустили все фильтры), то excel выдаст ошибку что-то типа «запрещено перекрытие отчетов сводных», то есть две сводные не могут размещаться на одних и тех же ячейках.
Во вложении решение этой проблемы через макрос.
После первой сводной есть большой пропуск строк – запас в 1000 строк, которые используются как буфер. Макрос отслеживает любое изменение сводной на листе и мгновенно пересматривает кол-во используемых строк сводной в заданном диапазоне, после чего прячет неиспользуемые строки. Так визуально две сводные находятся рядом возле друг друга и при этом решается проблема того, что одна сводная может залезть на другую.
Макрос сам размещается в коде листа, а не модуля — Жмакнуть правой кнопкой мыши на требуемый лист экселя слева внизу на панели листов документа / В контекстном меню выбрать «Просмотреть код» — сюда и размещать макрос.
Сам макрос с максимально детализированными комментариями: Пример работы, напоминаю, можно посмотреть во вложении.
О сайте
«Понемногу обо всем и все, о немногом» — именно такой слоган, по-видимому, является наилучшим определением тематики блога. Здесь пишу о том, что для меня интересно или важно, собственно, поэтому разброс тематик очень широк – от размышлений на философские темы и смешных историй, до конкретных инструкций или анализа событий.
Правда, помимо общих тематик, которые есть почти на каждом личном блоге, стоит выделить специализированные рубрики блога, которые будут полезны и интересны вебмастерам, программистам, дизайнерам, офисным работникам и пользователям ПК, желающим повысить свои навыки и уровень знаний. Подробнее о спецрубриках
Записки вебмастера – рубрика, которая призвана собрать коллекцию полезных скриптов и авторских решений, интересных особенностей и стандартов верстки, решение вопросов юзабилити и функционала, полезных ресурсов и программ.
Вопрос дизайна – это актуальные тренды, пошаговые и видео-уроки в фотошопе, необходимые плагины для фоторедакторов, векторные и PSD исходники, PNG иконки и GIF анимации, кириллические шрифты с засечками и без засечек, заливки (паттерны) и градиенты.
Мой ПК – каждая статья в этой рубрике направлена на то, чтобы узнать свой компьютер лучше. Здесь можно будет почитать о системных процессах и редактировании системного реестра, о способах защитить личные данные и компьютер в целом, о настройке локальной сети и подключениях к сети интернет, обзор ряда программ, которые делают работу за компьютером удобнее, быстрее и приятнее.
MS Office и VBA – эта рубрика содержит интересные решения, малоизвестные функции и возможности, надстройки и макросы, в общем, все то, что может сделать вашу работу в пакете программ MS Office (в первую очередь — Excel, Word, Access, PowerPoint) более эффективной.
Прочие офисные программы – рубрика о программах для ведения учета (конфигурации, платформы, внешние отчеты для 1C), сдачи отчетности (MeDoc, БестЗвіт) и статистического анализа данных (SPSS), также здесь можно найти обзоры программного обеспечения для работы с периферийными устройствами. Свернуть
Как использовать несколько сводных таблиц на одном листе без ошибки перекрытия?
У меня есть несколько сводных таблиц на одном листе. Поскольку каждый из них имеет зависимый размер из-за данных, это вызывает ошибку:
сводная таблица не может перекрывать другую сводную таблицу.
есть ли умный способ обойти это? К сожалению, мне нужно, чтобы они все были на одном листе.
3 ответов
Добро пожаловать в Superuser.
вы получаете эту ошибку, так как таблицы пытаются развернуться для отображения данных, удовлетворяющих критериям сводной таблицы. Таблицы должны расти, чтобы сделать это.
то, что вы просите, кажется, вопрос, заданный в течение нескольких лет на многих форумах. К сожалению, окончательного ответа нет. Кажется, что функция сводной таблицы не была разработана, чтобы хорошо играть с другими сводными таблицами на одном листе.
Если ваши сводные таблицы должны быть на одном листе, я делаю следующее предложение; поместите их бок о бок. Вам нужно будет иметь представление о том, сколько столбцов потребуется для каждой таблицы по мере ее расширения. После этого установьте зазор между таблицами которые могут учитывать расширение таблицы.
У меня есть этот же вопрос часто, поэтому я создал следующую работу вокруг. Во-первых, вставьте строки между вашими сводными таблицами, которые позволят им расширяться до максимума, в котором они вам нужны. 1) вставить столбец слева от таблицы.ex столбец A 2) Введите следующую формулу в 1-ю ячейку (A1) столбца. = if (B1«», 1, 2) 3) скопируйте и вставьте эту формулу в последнюю возможную ячейку столбца. Каждая ячейка должна содержать формулу в столбце A. Она должна пройти весь путь вниз последнюю строку сводной таблицы. 4) выберите строку 1 и вставьте пустую строку. 5) примените фильтр к каждому столбцу на листе (Data-Filter) при фильтрации столбца A можно выбрать 1 или 2. 1 покажет только строки, содержащие данные (ваши сводные таблицы) и 2 покажет все строки.
Я знаю, что это очень старый вопрос из нескольких лет назад, но на всякий случай кто — то другой может encoutner тот же вопрос. В Excel 2010 например, все, что вам нужно сделать, это определить нужный спектр и дать ему уникальное имя таблицы. Затем при настройке сводной таблицы можно выбрать любую определенную таблицу в качестве источника данных. Это позволит вам вставить несколько сводных таблиц (каждый может иметь разные диапазоны ячеек) на одном листе.
Перекрытие отчетов сводных таблиц не допускается что делать
Добрый вечер, участникам форума.
Сводными таблицами очень редко пользуюсь и настал этот час Х.
Освежил в памяти свои знания и даже сделал набросок. Но оказывается перекрытие сводных таблиц не допускается (не знал). Делать со смещением вправо не вариант, т.к. пытаюсь сделать компактный отчет на 1 листе со срезами.
Если нет вариантов обойти перекрытие сводных таблиц можно ли каким-то образом зашить информацию в одну сводную таблицу? Пример приложил.
Помнится как-то в старом виде можно делать сводную таблицу чтобы часть списка отображалась справа, но не помню как это делать.
Буду признателей за любой совет.
Добрый вечер, участникам форума.
Сводными таблицами очень редко пользуюсь и настал этот час Х.
Освежил в памяти свои знания и даже сделал набросок. Но оказывается перекрытие сводных таблиц не допускается (не знал). Делать со смещением вправо не вариант, т.к. пытаюсь сделать компактный отчет на 1 листе со срезами.
Если нет вариантов обойти перекрытие сводных таблиц можно ли каким-то образом зашить информацию в одну сводную таблицу? Пример приложил.
Помнится как-то в старом виде можно делать сводную таблицу чтобы часть списка отображалась справа, но не помню как это делать.
Буду признателей за любой совет. Anis625
Сообщение Добрый вечер, участникам форума.
Сводными таблицами очень редко пользуюсь и настал этот час Х.
Освежил в памяти свои знания и даже сделал набросок. Но оказывается перекрытие сводных таблиц не допускается (не знал). Делать со смещением вправо не вариант, т.к. пытаюсь сделать компактный отчет на 1 листе со срезами.
Если нет вариантов обойти перекрытие сводных таблиц можно ли каким-то образом зашить информацию в одну сводную таблицу? Пример приложил.
Помнится как-то в старом виде можно делать сводную таблицу чтобы часть списка отображалась справа, но не помню как это делать.
Буду признателей за любой совет. Автор — Anis625
Дата добавления — 07.01.2020 в 23:16
- Remove From My Forums
-
Question
-
Hi All,
I have two Pivot Tables placed in stacked manner. When I clear filters of first table, it gets expanded & as there is very less space between two tables so it gives an error as
«A Pivot Table report can not overlap another Pivot Table».So is there any to solve this problem? I mean can we put tables in such a way that even if it gets expanded it should not get overlap.
Thanks in advance!
Answers
-
Hi Rameshwar,
The best way to avoid this error is by placing the two Pivot Tables side-by-side as opposed to one on top of another — this is based on the assumption that the columns don’t expand also. The dynamic height when drilling down means that even if you knew the
exact cell height for a Pivot Table after being fully expanded, and placed another Pivot Table below it, so that there would be no overlap, there would be a large gap between the two tables by default. Generally speaking, it’s a good practice to have one PivotTable
per worksheet, especially when they have collapsible rows and columns.
Regards,
Michael
Please remember to mark a post that answers your question as an answer…If a post doesn’t answer your question but you’ve found it helpful, please remember to vote it as helpful
-
Edited by
Tuesday, February 25, 2014 1:03 PM
Further clarifications -
Proposed as answer by
Mike DietterickEditor
Wednesday, February 26, 2014 10:55 PM -
Marked as answer by
Mike DietterickEditor
Tuesday, April 29, 2014 4:42 PM
-
Edited by
- Remove From My Forums
-
Question
-
Hi All,
I have two Pivot Tables placed in stacked manner. When I clear filters of first table, it gets expanded & as there is very less space between two tables so it gives an error as
«A Pivot Table report can not overlap another Pivot Table».So is there any to solve this problem? I mean can we put tables in such a way that even if it gets expanded it should not get overlap.
Thanks in advance!
Answers
-
Hi Rameshwar,
The best way to avoid this error is by placing the two Pivot Tables side-by-side as opposed to one on top of another — this is based on the assumption that the columns don’t expand also. The dynamic height when drilling down means that even if you knew the
exact cell height for a Pivot Table after being fully expanded, and placed another Pivot Table below it, so that there would be no overlap, there would be a large gap between the two tables by default. Generally speaking, it’s a good practice to have one PivotTable
per worksheet, especially when they have collapsible rows and columns.
Regards,
Michael
Please remember to mark a post that answers your question as an answer…If a post doesn’t answer your question but you’ve found it helpful, please remember to vote it as helpful
-
Edited by
Tuesday, February 25, 2014 1:03 PM
Further clarifications -
Proposed as answer by
Mike DietterickEditor
Wednesday, February 26, 2014 10:55 PM -
Marked as answer by
Mike DietterickEditor
Tuesday, April 29, 2014 4:42 PM
-
Edited by
Находясь в любой ячейке созданной выборки, заходим на вкладку «Вставка», нажимаем кнопку «Вставить график или диаграмму с областями» и выбираем вид «График с маркерами».
Если при создании выборки что-то пошло не так, всегда можно вернуться в исходное состояние, нажав на вкладке «Анализ сводной диаграммы» кнопку «Очистить сводную таблицу».
Чтобы не запутаться, давайте выборкам названия.
Способ 1
Перейдите в меню «Анализ сводной таблицы» → кнопка «Параметры» слева → в открывшемся окне задайте имя таблице: «Динамика расходов».
Способ 2
Кликните правой кнопкой мыши по первой ячейке в строке с заголовками и выберите из контекстного меню «Параметры сводной таблицы».
В открывшемся диалоговом окне в поле «Имя сводной таблицы» введите название, которое будет отображать суть данных этой выборки. При дальнейшей работе вы всегда будете знать, с какой выборкой работаете.
Это диалоговое окно также можно вызвать с вкладки меню «Анализ сводной таблицы» → «Параметры».
Тиражирование выборки
Для каждой диаграммы требуется отдельный отчет сводной таблицы. Но для этого не нужно возвращаться на лист с плоской таблицей и делать новую сводную. Достаточно скопировать имеющуюся выборку и вставить ниже на свободные строки этого же листа. Это я называю тиражированием.
Убедитесь, что вы выделили и скопировали все ячейки, – иначе получите не сводную таблицу, а просто диапазон ячеек, непригодный для дальнейшей работы. Часто это происходит, когда забывают выделить итоги или столбцы, которые не уместились в видимую область экрана.
Чтобы превратить скопированную выборку в новую, делаем следующее:
ставим курсор на любую ячейку скопированной выборки;
на панели «Поля сводной таблицы» убираем галочку у поля «Месяц»;
там же ставим галочку у поля «Подразделение».
В результате получаем выборку для заготовки визуального элемента «Расходы по подразделениям». Добавляем на лист заготовку: на вкладке меню «Вставка» нажмите «Вставить гистограмму или линейчатую диаграмму» и выберите вид «Гистограмма с группировкой».
Таким же образом повторим процесс тиражирования выборки для визуализации «Расходы по статьям»:
переносим копию второй готовой выборки на новые строки, ставим курсор на любую ее ячейку;
убираем галочку у поля «Подразделение» на панели «Поля сводной таблицы»;
добавляем галочку у поля «Статья расходов».
Выборка готова, осталось отредактировать. В меню «Вставка» нажимаем «Вставить гистограмму или линейчатую диаграмму», выбираем вид «Линейчатая диаграмма с группировкой».
Ошибка «Перекрытие отчетов сводных таблиц не допускается». Что делать?
Ошибка возникает, если при обновлении данных появились новые категории и им не хватает строк, потому что там размещена следующая выборка.
Решение: добавьте нужное число пустых строк (лучше с запасом) после выборки с ошибкой и еще раз обновите информацию.
При размещении выборок друг под другом оставляйте между ними пустые строки, чтобы при добавлении данных было достаточно места для автоматического продления вниз, или размещайте их по горизонтали с отступом в 1–2 столбца.
Резюме
Все визуальные элементы на интерактивном дашборде построены на выборках данных из сводной таблицы. Один элемент – одна выборка. Тиражирование помогает сэкономить время на создании новых выборок: если новая должна отличаться от уже созданной только категориями, создавать ее с нуля необязательно.
1. Выделяем таблицу (следите, чтобы выделились все ячейки, иначе выборка не будет работать).
2. Для тиражирования копируем и вставляем на лист со сводной таблицей новую выборку.
3. Отмечаем нужные для новой выборки поля в панели «Поля сводной таблицы». Даем новой выборке название.
4. Стоя на любой ячейке выборки, выбираем и добавляем заготовку для диаграммы – оформлять ее будем позже.
У меня есть несколько сводных таблиц на одном листе. Поскольку каждый из них имеет зависимый размер из-за данных, это вызывает ошибку:
сводная таблица не может перекрывать другую сводную таблицу.
есть ли умный способ обойти это? К сожалению, мне нужно, чтобы они все были на одном листе….
источник
Добро пожаловать в Superuser.
вы получаете эту ошибку, так как таблицы пытаются развернуться для отображения данных, удовлетворяющих критериям сводной таблицы. Таблицы должны расти, чтобы сделать это.
то, что вы просите, кажется, вопрос, заданный в течение нескольких лет на многих форумах. К сожалению, окончательного ответа нет. Кажется, что функция сводной таблицы не была разработана, чтобы хорошо играть с другими сводными таблицами на одном листе.
Если ваши сводные таблицы должны быть на одном листе, я делаю следующее предложение; поместите их бок о бок. Вам нужно будет иметь представление о том, сколько столбцов потребуется для каждой таблицы по мере ее расширения. После этого установьте зазор между таблицами которые могут учитывать расширение таблицы.
отвечен CharlieRB 2012-06-19 14:23:29
источник
У меня есть этот же вопрос часто, поэтому я создал следующую работу вокруг.
Во-первых, вставьте строки между вашими сводными таблицами, которые позволят им расширяться до максимума, в котором они вам нужны.
1) вставить столбец слева от таблицы.ex столбец A
2) Введите следующую формулу в 1-ю ячейку (A1) столбца. = if (B1<>»», 1, 2)
3) скопируйте и вставьте эту формулу в последнюю возможную ячейку столбца. Каждая ячейка должна содержать формулу в столбце A. Она должна пройти весь путь вниз последнюю строку сводной таблицы.
4) выберите строку 1 и вставьте пустую строку.
5) примените фильтр к каждому столбцу на листе (Data-Filter)
при фильтрации столбца A можно выбрать 1 или 2. 1 покажет только строки, содержащие данные (ваши сводные таблицы) и 2 покажет все строки.
отвечен jim h 2015-10-08 17:33:50
источник
Я знаю, что это очень старый вопрос из нескольких лет назад, но на всякий случай кто — то другой может encoutner тот же вопрос. В Excel 2010 например, все, что вам нужно сделать, это определить нужный спектр и дать ему уникальное имя таблицы. Затем при настройке сводной таблицы можно выбрать любую определенную таблицу в качестве источника данных. Это позволит вам вставить несколько сводных таблиц (каждый может иметь разные диапазоны ячеек) на одном листе.
источник
У меня есть несколько сводных таблиц на одном листе. Поскольку каждый из них имеет зависимый размер из-за данных, это вызывает ошибку:
Сводная таблица не может перекрывать другую сводную таблицу.
Есть ли умный способ обойти это? Мне нужно, чтобы они все были на одном листе, к сожалению ….
Добро пожаловать в Superuser.
Вы получаете эту ошибку, потому что таблицы пытаются развернуть, чтобы отобразить данные, которые соответствуют критериям сводки. Таблицы должны расти, чтобы сделать это.
То, что вы спрашиваете, кажется вопросом, задаваемым в течение нескольких лет на многих форумах. К сожалению, нет однозначного ответа. Похоже, что функция сводных таблиц не была разработана, чтобы хорошо играть с другими сводными таблицами на том же листе.
Если ваши сводные таблицы ДОЛЖНЫ быть на одном листе, я сделаю следующее предложение; разместите их рядом. Вам нужно иметь представление о том, сколько столбцов потребуется для каждой таблицы при ее расширении. Затем поместите промежуток между столами, который может позволить расширение стола.
У меня часто возникает эта проблема, поэтому я создал следующую работу вокруг.
Во-первых, вставьте строки между вашими сводными таблицами, которые позволят им расширяться настолько, насколько вам нужно.
1) вставьте столбец слева от сводных таблиц. Столбец A 2) введите следующую формулу в 1-ю ячейку (A1) столбца. = if (B1 <> «», 1,2) 3) скопировать и вставить эту формулу до последней возможной ячейки в столбце. Каждая ячейка должна содержать формулу в столбце А. Она должна пройти весь путь до последней возможной строки вашей сводной таблицы.
4) выберите строку 1 и вставьте пустую строку.
5) Примените фильтр к каждому столбцу на вашем рабочем листе (Фильтр данных), когда вы фильтруете Столбец А, вы можете выбрать 1 или 2. 1 покажет только строки, содержащие данные (ваши сводные таблицы), а 2 покажет все строки.
Я знаю, что это очень старый вопрос от нескольких лет назад, но на тот случай, если кто-то другой может засечь эту проблему. Например, в Excel 2010 все, что вам нужно сделать, это определить необходимый диапазон и присвоить ему уникальное имя таблицы. Затем, когда вы настраиваете свою сводную таблицу, вы можете выбрать любую определенную таблицу в качестве источника данных. Это позволит вам вставить несколько сводных таблиц (каждая может иметь разные диапазоны ячеек) на одном листе.