Используйте сводную таблицу Excel в качестве источника данных для другой сводной таблицы
У меня есть сводная таблица в excel, которая использует исходную таблицу в качестве источника данных. Эта сводная таблица выполняет группировку и суммирование строк.
Я хотел бы использовать результат этой новой сводной таблицы в качестве источника данных для новой сводной таблицы, которая будет дополнительно изменять эти данные.
Возможно ли это с помощью excel? Полагаю, вы могли бы назвать это "вложенными сводными таблицами"
Ответы
Ответ 1
На новом листе (где вы хотите создать новую сводную таблицу) нажмите комбинацию клавиш (Alt + D + P). В списке параметров источника данных выберите "Список базы данных Microsoft Excel". Нажмите "Далее" и выберите сводную таблицу, которую вы хотите использовать в качестве источника (выберите, начиная с фактических заголовков полей). Я предполагаю, что этот диапазон довольно статичен, и если вы обновите исходную точку и измените ее размер, вам придется изменить размер диапазона. Надеюсь, это поможет.
Ответ 2
-
Сделайте свой первый сводный стол.
-
Выберите первую верхнюю левую ячейку.
-
Создайте имя диапазона, используя смещение:
OFFSET(Sheet1!$A$3,0,0,COUNTA(Sheet1!$A:$A)-1,COUNTA(Sheet1!$3:$3))
-
Сделайте второй поворот с именем диапазона в качестве источника данных, используя F3.
Если вы измените количество строк или столбцов в своем первом сводном списке, ваш второй сводный будет обновляться после обновления сводного.
GFGDT
Ответ 3
Перед тем, как вы сможете это сделать, сначала нужно преобразовать опорный элемент в значения:
- Удалить промежуточные итоги
- Повторите элементы строки
- Копировать/Вставить значения
- Вставить новую сводную таблицу
Ответ 4
Как следует из @nutsch, Excel не будет делать то, что вам нужно напрямую, поэтому вам нужно сначала скопировать данные из сводной таблицы в другое место. Однако вместо того, чтобы использовать значения копирования и затем вставлять значения, лучшим способом для многих целей является создание некоторых скрытых столбцов или всего скрытого листа, который копирует значения, используя простые формулы. Метод копирования-пасты не очень полезен, когда исходная сводная таблица обновляется.
Например, если Sheet1 содержит исходную сводную таблицу, то:
- Создайте Sheet2 и поместите
=Sheet1!A1
в Sheet2! A1
- Скопируйте эту формулу вокруг как можно большего количества ячеек в Sheet2, чтобы соответствовать размеру исходной сводной таблицы.
- Предполагая, что исходная сводная таблица может меняться по размеру всякий раз, когда она обновляется, вы можете скопировать формулу в Sheet2, чтобы охватить всю потенциальную область, которую могла бы взять исходная сводная таблица. Это приведет к множеству нулей в ячейках, где исходные ячейки в настоящее время пустые, но вы могли бы избежать этого, используя вместо этого формулу
=IF(Sheet1!A1="","",Sheet1!A1)
.
- Создайте новую сводную таблицу на основе диапазона в Sheet2, затем скройте Sheet2.
Ответ 5
Лично я обошел это немного по-другому - у меня была сводная таблица с запросом на источник SQL-сервера, и я использовал слайсер для временной шкалы, чтобы ограничить результаты до диапазона дат. Затем я хотел обобщить сводные результаты в другая таблица.
Я выбрал "исходную" сводную таблицу и создал именованный диапазон под названием "SourcePivotData".
Создайте сводные сводные таблицы, используя именованный диапазон в качестве источника.
В рабочих листах для исходной сводной таблицы я помещаю следующий код:
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable)
'Update the address of the named range
ThisWorkbook.Names("SourcePivotData").RefersTo = "='" & Target.TableRange1.Worksheet.Name & "'!" & Target.TableRange1.AddressLocal
'Refresh any pivot tables that use this as a source
Dim pt As PivotTable
Application.DisplayAlerts = False
For Each pt In Sheet2.PivotTables
pt.PivotCache.Refresh
Next pt
Application.DisplayAlerts = True
End Sub
Хорошо работает для меня!:)
Ответ 6
вот как я это делал раньше.
- поставьте фиктивный столбец "X" справа от исходной сводной таблицы.
- щелкните в этой ячейке и запустите свою сводную таблицу.
- После появления диалогового окна вы можете редактировать диапазон данных, чтобы включить свою сводную таблицу.
- для этого может потребоваться сначала обновить исходную таблицу, а затем обновить вторичную сводную таблицу... или обновить все дважды
Ответ 7
Я предполагаю, что ваша конечная цель - показать отличительные (уникальные) значения внутри вашей исходной таблицы Pivot.
Например, у вас может быть набор данных с
OrderNumber, OrderDate, OrderItem, orderQty
Первая сводная таблица покажет вам OrderDate и сумму OrderQty , и вы, вероятно, захотите увидеть количество уникальных заказов в той же Pivot.
Вы не сможете сделать это в стандартной сводной таблице
Если вы хотите это сделать, вам понадобится Office 2016 (или, возможно, Pover Pivot может работать).
В офисе 2016 выберите свои данные > Вставить > сводная таблицa > выберите галочку "Добавить эти данные в модель данных"
После этого вы сможете выбрать метод группировки как Distinct (Count)
Ответ 8
Как предложено, вы можете изменить содержимое сводной таблицы и вставить в качестве значений. Но если вы хотите изменить значения динамически, самый простой способ, который я нашел, это перейти к Insert->create pivot table
Теперь в диалоговом окне в поле входных данных выберите ячейки вашей предыдущей сводной таблицы.