Юлия Соколова, нужно осваивать Power Pivot.
Понятно, что простейшие меры для суммы (можно и просто суммой по столбцу так же выводить, но лучше для обучения явно прописывать; "обычная" сводная так же создает такую же неявную меру (немного вру, не такую же
, а SUMX ( data; data[1]) ):
Код |
---|
sum_1:=SUM ( data[1] ) |
Код |
---|
sum_2:=SUM ( data[2] ) |
Ну и мера для расчета среднего по суммам в каждой группе:
Код |
---|
sum_2/1:=
AVERAGEX (
SUMMARIZE ( data; data[PSR]; data[СМ]; data[НОП] );
DIVIDE ( [sum_2]; [sum_1] )
) |
.
Но. У Вас много промежуточных итогов. Условно - иерархия из PSR, CM, НОП, и если на каждом подуровне значение - это среднее по значением на уровнях ниже, то уже посложнее. Не оптимизировал (много итераций), но результат корректен:
Код |
---|
sum_2/1_1:=VAR av_1 =
DIVIDE ( [sum_2]; [sum_1] )
VAR av_2 =
AVERAGEX (
SUMMARIZE ( data; data[PSR]; data[СМ]; data[НОП] );
DIVIDE ( [sum_2]; [sum_1] )
)
VAR av_3 =
AVERAGEX (
SUMMARIZE ( data; data[СМ]; data[НОП] );
CALCULATE (
AVERAGEX (
SUMMARIZE ( data; data[PSR]; data[СМ]; data[НОП] );
DIVIDE ( [sum_2]; [sum_1] )
)
)
)
VAR av_4 =
AVERAGEX (
VALUES ( data[НОП] );
CALCULATE (
AVERAGEX (
SUMMARIZE ( data; data[СМ]; data[НОП] );
CALCULATE (
AVERAGEX (
SUMMARIZE ( data; data[PSR]; data[СМ]; data[НОП] );
DIVIDE ( [sum_2]; [sum_1] )
)
)
)
)
)
VAR result =
SWITCH (
TRUE;
HASONEVALUE ( data[PSR] ); av_1;
HASONEVALUE ( data[СМ] ); av_2;
HASONEVALUE ( data[НОП] ); av_3;
av_4
)
RETURN
result |