Группировать строки и суммировать последний столбец
Мои исходные данные выглядят так:
Я хочу, чтобы мои данные были преобразованы в:
Есть ли способ, которым мы можем сделать это без использования сводных / промежуточных итогов. Причина, по которой я против сводных / промежуточных итогов, заключается в том, что я хочу объединить эти данные с некоторыми другими данными и выполнить некоторые вычисления. VBA тоже хорошо держится.
Есть идеи, пожалуйста? Я не хочу, чтобы здесь было полное решение, просто предложите мне какую-то идею продолжить. Я провел небольшое исследование, и все они были лишь указателями на сводные / промежуточные итоги.
2 ответа
Я делаю это все время для восстановления данных. Вы можете подключиться к книге с помощью ADO и запустить SQL-запрос groupby на листе.
Если вы не хотите использовать VBA, то вы можете сделать то же самое с запросом Microsoft, хотя это немного неудобно, если использовать Данные> из других источников> Из запроса Microsoft (источник данных = файл Excel).
Чтобы упростить построение запросов, вы можете просто импортировать свою таблицу в Access и запустить там групповой запрос, а затем скопировать и вставить его обратно.
Что вы пробовали? Пожалуйста, поделитесь своим кодом / исследованием.
Для "Total Effort" попробуйте:
=SUM(IF(B$2:B$9=G2;D$2:D$9))
И нажмите CTRL+SHIFT+ENTER при редактировании значения ячейки. Затем перетащите его вниз.
Где "G2" - это значение "Имя". "B2:B9" - это столбец "Name", а "D2:D9" - это столбец "Total Effort".
Другие столбцы:
Чтобы получить другие столбцы, вам нужно получить уникальные значения. Попробуйте это для столбца идентификаторов (при условии, что вы хотите уникальные идентификаторы в столбце F):
=INDEX($A$2:$A$9;MATCH(0;INDEX(COUNTIF($F$1:F1;$A$2:$A$9);0;0);0))
И нажмите CTRL+SHIFT+ENTER при редактировании значения ячейки. Затем перетащите его вниз, пока не получите значения #N/A.
Где "A2:A9" - это столбец "ID". "F1:F1" - это новый столбец с уникальным "ID".