Вы можете сделать это, используя Power Query . Пожалуйста, обратитесь к этой статье , чтобы узнать, как использовать Power Query в вашей версии Excel. Он доступен в Excel 2010 Professional Plus и более поздних версиях . Моя демонстрация использует Excel 2016 .
Шаги:
- Использование функции из таблицы на вкладке
Data
для загрузки источникатаблица для редактора Power Query; - Используйте функцию Merge Queries на вкладке
Transform
, чтобы объединить таблицу со своей собственной, как указано ниже:
![Merging](https://i.stack.imgur.com/ns7rh.png)
Разверните объединенный столбец (который по сути является таблицей), нажав кнопку справа от заголовка столбца, и выберите
Item
only;
![Expanding](https://i.stack.imgur.com/s3URL.png)
Закрыть и загрузить новую таблицу на новый лист (по умолчанию), или вы можете изменить
Query Options
, выбрав
Specify custom default load settings
в
Data Load
, чтобы новая таблица не загружалась физическиа скорее создание соединения запроса; Если вы загрузили таблицу на новый лист, вы можете создать из нее сводную таблицу и поместить столбец двух элементов в поле
Columns
и
Rows
и поместите столбец заявок в поле
Values
, но измените настройку на
Количество вместо
Сумма билетов. Если вместо этого вы создали соединение по запросу, вы можете щелкнуть правой кнопкой мыши соединение на панели
Workbook Queries
и выбрать его для загрузки в
Модель данных , с которой, я полагаю, вы знакомы. Затем вы можете создать сводную таблицу, используя таблицу в модели данных с теми же настройками. Тогда у вас должно получиться что-то вроде следующего:
![example](https://i.stack.imgur.com/BlEFe.png)
Каждый раз, когда вы обновляете исходную таблицу, обязательно Обновить все данные вместо непосредственного обновления сводной таблицы, так как вам нужно сначала обновить таблицу данных в серверной части, особенно в случае, когда вы только создали соединение с запросом и сохранили таблицу в модели данных.
Здесь приведены Power Query M Codes за сценой только для справки. Я использовал только встроенные функции редактора запросов, который прост и понятен. Ура:)
let
Source = Excel.CurrentWorkbook(){[Name="Table5"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Ticket", Int64.Type}, {"Item", Int64.Type}}),
#"Merged Queries" = Table.NestedJoin(#"Changed Type", {"Ticket"}, #"Changed Type", {"Ticket"}, "Changed Type", JoinKind.LeftOuter),
#"Expanded Changed Type" = Table.ExpandTableColumn(#"Merged Queries", "Changed Type", {"Item"}, {"Changed Type.Item"})
in
#"Expanded Changed Type"