Используйте сводную таблицу 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 Теперь в диалоговом окне в поле входных данных выберите ячейки вашей предыдущей сводной таблицы.