Сводная таблица Excel - как упорядочить поля для суммирования поля, игнорируя при этом повторяющиеся строки из другого несвязанного поля - PullRequest
0 голосов
/ 18 ноября 2018

Я надеюсь, что кто-то может помочь мне понять, что я делаю здесь неправильно - возможно, это мое отсутствие знаний о сводных таблицах или даже то, как моделируются данные.

Я создаю отчет по запросу базы данных MS Access. Я упростил данные для целей этого вопроса.

Таблица, созданная в Excel после подключения к запросу Access, выглядит следующим образом:

Screenshot of excel table simplified

Суть в том, что, хотя Боб только 1 раз закончил опрос, для каждого вопроса есть повторяющиеся строки, потому что мы также вводим данные о том, какие у него домашние животные.

Таблица домашних животных является отношением M2M и полностью отделена от вопросов и ответов на опрос. Тем не менее, отчет должен показать не только совокупный балл опроса для каждого клиента, но и то, как это не подходит для домашних животных. Например, сколько людей получают в основном 4 балла за каждый вопрос, у которого есть собаки против кошек.

Каждый вопрос имеет оценку ответа от 1 до 4.

Итак, мне нужно создать отчет, который может показать совокупный балл опроса клиента как 12 (а не 24), а затем ввести «Домашние животные» (и другую информацию о клиенте M2M), чтобы проанализировать связь между Ответами и другой информацией о клиент (например, люди с собаками склонны отвечать с ответами категории 4 чаще, чем с кошками?).

Screenshot of Pivot Table showing 'incorrect' aggregate value for Bob

Любые мысли о том, как мне лучше всего добиться этого, были бы очень полезны.

1 Ответ

0 голосов
/ 19 ноября 2018

Если вам действительно нужно использовать сводную таблицу. Используя опцию «Модель данных», используйте «Distinct Count» в поле Pet.

В качестве альтернативы используйте «Данные», «Из других источников»,«Из Microsoft Query», «Файлы Excel», «ОК», перейдите к открытому файлу.Выберите источник данных и необходимые столбцы и создайте новый запрос: SELECT DISTINCT Sheet1$ .Client, Sum (Sheet1$ .Score) AS 'Сумма баллов' ОТ [file path\file name]. Sheet1$ Sheet1$ GROUP BY Sheet1$ .Клиент

enter image description here

...