Сокращение формулы
mkotik
Дата: Среда, 23.01.2019, 12:48 |
Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Добрый день, уважаемые знатоки! Как вы думаете, есть ли возможность сократить вот такую формулу:Код
=ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=2; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=4; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInsuranceFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=5; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectDServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=6; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectAssemblyFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInstallFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) ))))))
Добрый день, уважаемые знатоки! Как вы думаете, есть ли возможность сократить вот такую формулу:Код
=ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=2; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=4; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInsuranceFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=5; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectDServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=6; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectAssemblyFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInstallFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) ))))))
mkotik
Ответить
Сообщение Добрый день, уважаемые знатоки! Как вы думаете, есть ли возможность сократить вот такую формулу:Код
=ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=2; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=4; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInsuranceFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=5; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectDServicesFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИ(KPI_Sort=6; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectAssemblyFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}"); SelectRevenueFact;SelectInstallFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) ))))))
Автор - mkotik Дата добавления - 23.01.2019 в 12:48
bmv98rus
Дата: Среда, 23.01.2019, 13:00 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
Может есть! А может и нет. Все от того зависит, что она делает и что обрабатывает.
Может есть! А может и нет. Все от того зависит, что она делает и что обрабатывает. bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Ответить
Сообщение Может есть! А может и нет. Все от того зависит, что она делает и что обрабатывает. Автор - bmv98rus Дата добавления - 23.01.2019 в 13:00
mkotik
Дата: Среда, 23.01.2019, 13:12 |
Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась
bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась mkotik
Ответить
Сообщение bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась Автор - mkotik Дата добавления - 23.01.2019 в 13:12
_Boroda_
Дата: Среда, 23.01.2019, 13:21 |
Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Что у Вас такое SelectLastYear, _SelectMonth и т.д.? Имена? Тогда можно и остальное в имена засунуть. Куски типаКод
(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
кладите в имена, которые потом и используйте в формуле
Что у Вас такое SelectLastYear, _SelectMonth и т.д.? Имена? Тогда можно и остальное в имена засунуть. Куски типаКод
(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
кладите в имена, которые потом и используйте в формуле _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Что у Вас такое SelectLastYear, _SelectMonth и т.д.? Имена? Тогда можно и остальное в имена засунуть. Куски типаКод
(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
кладите в имена, которые потом и используйте в формуле Автор - _Boroda_ Дата добавления - 23.01.2019 в 13:21
Светлый
Дата: Среда, 23.01.2019, 13:30 |
Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Добрый день! Не анализировал, но есть последовательность:=2, =3 и т.д. Вдруг получится свернуть в:Или через:
Добрый день! Не анализировал, но есть последовательность:=2, =3 и т.д. Вдруг получится свернуть в:Или через: Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Добрый день! Не анализировал, но есть последовательность:=2, =3 и т.д. Вдруг получится свернуть в:Или через: Автор - Светлый Дата добавления - 23.01.2019 в 13:30
bmv98rus
Дата: Среда, 23.01.2019, 13:34 |
Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
Как можно оптимизировать если нет понимания что там считается? ну что напрашивается, то использовать не IF(… CUBEVALUE(…. а CUBEVALUE( ,,, if ..) , то есть не выбирать функцию с предопределенными параметрами, а менять параметры. IF тоже можно заменить на CHOOSE , вместо IF(KPI_Sort=1; A; IF(KPI_Sort=2; B ;IF(KPI_Sort=3 ;C; … ))). будет IF(KPI_Sort>6 ;G; Chose(KPI_Sort;A;B;C;D;E;F) что тут и написано
Как можно оптимизировать если нет понимания что там считается? ну что напрашивается, то использовать не IF(… CUBEVALUE(…. а CUBEVALUE( ,,, if ..) , то есть не выбирать функцию с предопределенными параметрами, а менять параметры. IF тоже можно заменить на CHOOSE , вместо IF(KPI_Sort=1; A; IF(KPI_Sort=2; B ;IF(KPI_Sort=3 ;C; … ))). будет IF(KPI_Sort>6 ;G; Chose(KPI_Sort;A;B;C;D;E;F) что тут и написано bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Сообщение отредактировал bmv98rus - Среда, 23.01.2019, 13:37
Ответить
Сообщение Как можно оптимизировать если нет понимания что там считается? ну что напрашивается, то использовать не IF(… CUBEVALUE(…. а CUBEVALUE( ,,, if ..) , то есть не выбирать функцию с предопределенными параметрами, а менять параметры. IF тоже можно заменить на CHOOSE , вместо IF(KPI_Sort=1; A; IF(KPI_Sort=2; B ;IF(KPI_Sort=3 ;C; … ))). будет IF(KPI_Sort>6 ;G; Chose(KPI_Sort;A;B;C;D;E;F) что тут и написано Автор - bmv98rus Дата добавления - 23.01.2019 в 13:34
_Boroda_
Дата: Среда, 23.01.2019, 13:36 |
Сообщение № 7
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Для всех, кроме =3, там разница в 4-м аргументе КУБЗНАЧЕНИЕ. Вот туда и можно написать ВЫБОР или кучку ЕСЛИ типаКод
=ЕСЛИ(KPI_Sort=3;...;(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ЕСЛИ(..............);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
[offtop]Как можно оптимизировать если нет понимания что там считается?
Сам написал, сам потом и привел пример "как". Из спячки не вышел? [/offtop]
Для всех, кроме =3, там разница в 4-м аргументе КУБЗНАЧЕНИЕ. Вот туда и можно написать ВЫБОР или кучку ЕСЛИ типаКод
=ЕСЛИ(KPI_Sort=3;...;(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ЕСЛИ(..............);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
[offtop]Как можно оптимизировать если нет понимания что там считается?
Сам написал, сам потом и привел пример "как". Из спячки не вышел? [/offtop] _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Для всех, кроме =3, там разница в 4-м аргументе КУБЗНАЧЕНИЕ. Вот туда и можно написать ВЫБОР или кучку ЕСЛИ типаКод
=ЕСЛИ(KPI_Sort=3;...;(ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ЕСЛИ(..............);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
[offtop]Как можно оптимизировать если нет понимания что там считается?
Сам написал, сам потом и привел пример "как". Из спячки не вышел? [/offtop] Автор - _Boroda_ Дата добавления - 23.01.2019 в 13:36
bmv98rus
Дата: Среда, 23.01.2019, 13:39 |
Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
мне еще очень +0)/1000 нравится :-)
мне еще очень +0)/1000 нравится :-) bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Ответить
Сообщение мне еще очень +0)/1000 нравится :-) Автор - bmv98rus Дата добавления - 23.01.2019 в 13:39
mkotik
Дата: Среда, 23.01.2019, 13:40 |
Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась
bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась mkotik
Ответить
Сообщение bmv98rus, спасибо за быстроту Хотел получить совет, что можно подсократить в написании Постарался вынести в переменные, но все равно громоздкая получилась Автор - mkotik Дата добавления - 23.01.2019 в 13:40
mkotik
Дата: Среда, 23.01.2019, 13:47 |
Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Связь плохая, извините - выбежал на обед
Связь плохая, извините - выбежал на обед mkotik
Ответить
Сообщение Связь плохая, извините - выбежал на обед Автор - mkotik Дата добавления - 23.01.2019 в 13:47
bmv98rus
Дата: Среда, 23.01.2019, 14:23 |
Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
Сам написал, сам потом и привел пример "как". Из спячки не вышел?
Сократить - не значит оптимизировать. :-) Вам ли Александр это не знать :-) мне вот "{[РО Отдел].["&T(OFFSET(Настройки!$BN$2,SMALL(IF($C19=Настройки!$BI$3:$BI$93,ROW(Настройки!$1:$91)),ROW(INDIRECT("1:"&COUNTIF(Настройки!BI:BI,C19)))),))&"]}"), совсем не по нраву, что -там, для чего там.....?
Сам написал, сам потом и привел пример "как". Из спячки не вышел?
Сократить - не значит оптимизировать. :-) Вам ли Александр это не знать :-) мне вот "{[РО Отдел].["&T(OFFSET(Настройки!$BN$2,SMALL(IF($C19=Настройки!$BI$3:$BI$93,ROW(Настройки!$1:$91)),ROW(INDIRECT("1:"&COUNTIF(Настройки!BI:BI,C19)))),))&"]}"), совсем не по нраву, что -там, для чего там.....?bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Ответить
Сообщение Сам написал, сам потом и привел пример "как". Из спячки не вышел?
Сократить - не значит оптимизировать. :-) Вам ли Александр это не знать :-) мне вот "{[РО Отдел].["&T(OFFSET(Настройки!$BN$2,SMALL(IF($C19=Настройки!$BI$3:$BI$93,ROW(Настройки!$1:$91)),ROW(INDIRECT("1:"&COUNTIF(Настройки!BI:BI,C19)))),))&"]}"), совсем не по нраву, что -там, для чего там.....?Автор - bmv98rus Дата добавления - 23.01.2019 в 14:23
sboy
Дата: Среда, 23.01.2019, 14:37 |
Сообщение № 12
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация:
724
±
Замечаний:
0% ±
Excel 2010
[offtop] Это создал, Светлый , в предыдущей теме ТСа
[offtop] Это создал, Светлый , в предыдущей теме ТСа sboy
Яндекс: 410016850021169
Ответить
Сообщение [offtop] Это создал, Светлый , в предыдущей теме ТСа Автор - sboy Дата добавления - 23.01.2019 в 14:37
mkotik
Дата: Среда, 23.01.2019, 15:10 |
Сообщение № 13
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
bmv98rus, овсем не по нраву, что -там, для чего там.....?
тут всё чётко - долго разбирались - отладили. Тема - Создание подмассива из массива Не отвечаю - жду когда кубы обновятся
bmv98rus, овсем не по нраву, что -там, для чего там.....?
тут всё чётко - долго разбирались - отладили. Тема - Создание подмассива из массива Не отвечаю - жду когда кубы обновятся mkotik
Ответить
Сообщение bmv98rus, овсем не по нраву, что -там, для чего там.....?
тут всё чётко - долго разбирались - отладили. Тема - Создание подмассива из массива Не отвечаю - жду когда кубы обновятся Автор - mkotik Дата добавления - 23.01.2019 в 15:10
bmv98rus
Дата: Среда, 23.01.2019, 15:30 |
Сообщение № 14
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
тут всё чётко - долго разбирались - отладили
ну отладили, не означает что переотладить не стоит. минимум можно в имена запихнуть весь этот блок, ведь автор не знал как его творение будет использовано далее. а в зависимости от того, как это все применяется переписать на Index и Idirect и Offset.
тут всё чётко - долго разбирались - отладили
ну отладили, не означает что переотладить не стоит. минимум можно в имена запихнуть весь этот блок, ведь автор не знал как его творение будет использовано далее. а в зависимости от того, как это все применяется переписать на Index и Idirect и Offset.bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Сообщение отредактировал bmv98rus - Среда, 23.01.2019, 15:52
Ответить
Сообщение тут всё чётко - долго разбирались - отладили
ну отладили, не означает что переотладить не стоит. минимум можно в имена запихнуть весь этот блок, ведь автор не знал как его творение будет использовано далее. а в зависимости от того, как это все применяется переписать на Index и Idirect и Offset.Автор - bmv98rus Дата добавления - 23.01.2019 в 15:30
Светлый
Дата: Среда, 23.01.2019, 17:50 |
Сообщение № 15
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Вот такой блок:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
будет использоваться в формуле 2 или 3 раза с небольшими корректировками и обвязкой. Основа:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
делится на первый блок, при условии KPI_Sort=3, иначе на 1. И ещё надо разобраться со ссылкой C19, C20, C21 и ВЫБОР(1;""). Как отреагирует КУБ на такую ;""; конструкцию.
Вот такой блок:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
будет использоваться в формуле 2 или 3 раза с небольшими корректировками и обвязкой. Основа:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
делится на первый блок, при условии KPI_Sort=3, иначе на 1. И ещё надо разобраться со ссылкой C19, C20, C21 и ВЫБОР(1;""). Как отреагирует КУБ на такую ;""; конструкцию. Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Среда, 23.01.2019, 17:54
Ответить
Сообщение Вот такой блок:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
будет использоваться в формуле 2 или 3 раза с небольшими корректировками и обвязкой. Основа:Код
=ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)
делится на первый блок, при условии KPI_Sort=3, иначе на 1. И ещё надо разобраться со ссылкой C19, C20, C21 и ВЫБОР(1;""). Как отреагирует КУБ на такую ;""; конструкцию. Автор - Светлый Дата добавления - 23.01.2019 в 17:50
Светлый
Дата: Среда, 23.01.2019, 18:05 |
Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Попробуйте так:Код
=ЕСЛИ(KPI_Sort=3;ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))/((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0);ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
Для KPI_Sort=1 может быть ошибка, остальные должны работать.
Попробуйте так:Код
=ЕСЛИ(KPI_Sort=3;ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))/((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0);ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
Для KPI_Sort=1 может быть ошибка, остальные должны работать. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Попробуйте так:Код
=ЕСЛИ(KPI_Sort=3;ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))/((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0);ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C19=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C19))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0))
Для KPI_Sort=1 может быть ошибка, остальные должны работать. Автор - Светлый Дата добавления - 23.01.2019 в 18:05
mkotik
Дата: Среда, 23.01.2019, 20:43 |
Сообщение № 17
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Для KPI_Sort=1 может быть ошибка, остальные должны работать.
Чуть подправил - c19->c21 Так и есть - KPI_Sort=1 не работает, по остальному ОТЛИЧНО! Вот такая получилась:Код
=ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
Для KPI_Sort=1 может быть ошибка, остальные должны работать.
Чуть подправил - c19->c21 Так и есть - KPI_Sort=1 не работает, по остальному ОТЛИЧНО! Вот такая получилась:Код
=ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
mkotik
Ответить
Сообщение Для KPI_Sort=1 может быть ошибка, остальные должны работать.
Чуть подправил - c19->c21 Так и есть - KPI_Sort=1 не работает, по остальному ОТЛИЧНО! Вот такая получилась:Код
=ЕСЛИ(KPI_Sort=3; ЕСЛИОШИБКА((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectServicesFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)) / ((ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)));0); ЕСЛИ(KPI_Sort=1; (ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn"; КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}"); SelectRevenueFact;SelectClientType; ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)); ЕСЛИОШИБКА((КУБЗНАЧЕНИЕ("Conn";КУБМНОЖ("Conn";"{[РО Отдел].["&Т(СМЕЩ(Настройки!$BN$2;НАИМЕНЬШИЙ(ЕСЛИ($C21=Настройки!$BI$3:$BI$93;СТРОКА(Настройки!$1:$91));СТРОКА(ДВССЫЛ("1:"&СЧЁТЕСЛИ(Настройки!BI:BI;C21))));))&"]}");SelectRevenueFact;ВЫБОР(МИН(KPI_Sort;7);"";SelectServicesFact;SelectServicesFact;SelectInsuranceFact;SelectDServicesFact;SelectAssemblyFact;SelectInstallFact);SelectClientType;ЕСЛИ(_SelectQuarter="-";SelectLastYear;ЕСЛИ(_SelectMonth="-";SelectLastQuarter;SelectLastMonth)))+0)/1000;0)))
Автор - mkotik Дата добавления - 23.01.2019 в 20:43
mkotik
Дата: Среда, 23.01.2019, 20:48 |
Сообщение № 18
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 181
Репутация:
0
±
Замечаний:
0% ±
Excel 2013
Спасибо большое ВСЕМ! "Пошёл" в имена "заталкивать" Настройки....
Спасибо большое ВСЕМ! "Пошёл" в имена "заталкивать" Настройки.... mkotik
Ответить
Сообщение Спасибо большое ВСЕМ! "Пошёл" в имена "заталкивать" Настройки.... Автор - mkotik Дата добавления - 23.01.2019 в 20:48
bmv98rus
Дата: Среда, 23.01.2019, 20:57 |
Сообщение № 19
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4106
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
Светлый , и всеж зачем там +0 и почему /1000 не вынести на последок? Вроде везде она. mkotik , зачем такие длинные имена достаточно SelectLY, а SelectLastYear в описание можно поместить ну и так далее. Переименовать можно прямо в диспетчере, в формулах автоматом изменятся.
Светлый , и всеж зачем там +0 и почему /1000 не вынести на последок? Вроде везде она. mkotik , зачем такие длинные имена достаточно SelectLY, а SelectLastYear в описание можно поместить ну и так далее. Переименовать можно прямо в диспетчере, в формулах автоматом изменятся.bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Сообщение отредактировал bmv98rus - Среда, 23.01.2019, 21:00
Ответить
Сообщение Светлый , и всеж зачем там +0 и почему /1000 не вынести на последок? Вроде везде она. mkotik , зачем такие длинные имена достаточно SelectLY, а SelectLastYear в описание можно поместить ну и так далее. Переименовать можно прямо в диспетчере, в формулах автоматом изменятся.Автор - bmv98rus Дата добавления - 23.01.2019 в 20:57
Светлый
Дата: Среда, 23.01.2019, 21:01 |
Сообщение № 20
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Так и есть - KPI_Sort=1 не работает
Попробуйте заменить "" вКод
ВЫБОР(МИН(KPI_Sort;7);""
на 0 или что-то другое. Я проверить не могу, что сработает.
Так и есть - KPI_Sort=1 не работает
Попробуйте заменить "" вКод
ВЫБОР(МИН(KPI_Sort;7);""
на 0 или что-то другое. Я проверить не могу, что сработает.Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Так и есть - KPI_Sort=1 не работает
Попробуйте заменить "" вКод
ВЫБОР(МИН(KPI_Sort;7);""
на 0 или что-то другое. Я проверить не могу, что сработает.Автор - Светлый Дата добавления - 23.01.2019 в 21:01