Транспонировать данные на основе двух столбцов и критериев: Excel - PullRequest
0 голосов
/ 12 января 2020

У меня есть данные, которые выглядят так:

Group: Class:   Value:
A          1        51
A          2        60
B          1        55
B          2        67
B          3        70
C          1        53
C          3        65

Нужны данные, чтобы они выглядели так:

Group:             1:           2:            3: 
    A             51            60             0
    B             55            67            70
    C             53             0            65

Код, который я пытаюсь сделать, делает две вещи неправильно: 1. Пропуск строк 2. несоответствие значения столбцу класса, что вызывает проблему для группы C, поскольку она помещает значение 65 в класс 2, а не в класс 3 для последней строки (строка 3 в этом примере).
= IFERROR (IF (AND ($ B2 = 1, COLUMN () <3 + MATCH ($ B2, $ B3: B11000,0)), OFFSET (B2, COLUMN () - 3,2-COLUMN ()) , ""), "") </p>

Ответы [ 2 ]

1 голос
/ 13 января 2020

Это сработало для меня. Надеюсь, это поможет!

=SUMPRODUCT(($A$2:$A$8=$E2)*($B$2:$B$8=COLUMN(A:A))*$C$2:$C$8)

enter image description here

Если формат столбца C текстовый, давайте попробуем:

=IFERROR(OFFSET($C$2,MATCH(1,INDEX(($A$2:$A$8=$E2)*($B$2:$B$8=COLUMN(A$1)),),0)-1,),"")

enter image description here

0 голосов
/ 13 января 2020

Я думаю, более эффективно использовать сводную таблицу для таких задач:

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...