lfuthobr
Дата: Четверг, 15.11.2018, 15:42 |
Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
Добрый день, в файле примера в столбце H считается сумма чисел по участкам в виде дерева, то есть сумма значений первого уровня = второму уровню. Сумма полученных чисел второго уровня равна 3му уровню и так далее. Как работает формула я понимаю. Ищется номер столбца для 1го уровня потом в диапазоне ищется первое вхождение непустого столба с этим же номером, и значения между ними складываются. Формула дает сбой в строке 90. Сумма считается от 91 до 105 вместо нужной 103. Опять же почему это произошло я понимаю но как исправить не знаю. Хотелось бы добавить проверку условием а не менять всю формулу. Просьба структуру формулы не менять.
Добрый день, в файле примера в столбце H считается сумма чисел по участкам в виде дерева, то есть сумма значений первого уровня = второму уровню. Сумма полученных чисел второго уровня равна 3му уровню и так далее. Как работает формула я понимаю. Ищется номер столбца для 1го уровня потом в диапазоне ищется первое вхождение непустого столба с этим же номером, и значения между ними складываются. Формула дает сбой в строке 90. Сумма считается от 91 до 105 вместо нужной 103. Опять же почему это произошло я понимаю но как исправить не знаю. Хотелось бы добавить проверку условием а не менять всю формулу. Просьба структуру формулы не менять. lfuthobr
Ответить
Сообщение Добрый день, в файле примера в столбце H считается сумма чисел по участкам в виде дерева, то есть сумма значений первого уровня = второму уровню. Сумма полученных чисел второго уровня равна 3му уровню и так далее. Как работает формула я понимаю. Ищется номер столбца для 1го уровня потом в диапазоне ищется первое вхождение непустого столба с этим же номером, и значения между ними складываются. Формула дает сбой в строке 90. Сумма считается от 91 до 105 вместо нужной 103. Опять же почему это произошло я понимаю но как исправить не знаю. Хотелось бы добавить проверку условием а не менять всю формулу. Просьба структуру формулы не менять. Автор - lfuthobr Дата добавления - 15.11.2018 в 15:42
krosav4ig
Дата: Четверг, 15.11.2018, 16:24 |
Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация:
989
±
Замечаний:
0% ±
Excel 2007,2010,2013
lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Сообщение отредактировал krosav4ig - Четверг, 15.11.2018, 16:27
Ответить
Сообщение lfuthobr , Вы думаете, что мы тут гадать должны, что у вас там за id, откуда он берется и как считается?Код
=ЕСЛИОШИБКА(ЕСЛИ(ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-3;4));0)<ПОИСКПОЗ("?*";$B4:ДВССЫЛ(АДРЕС(СТРОКА()+1;СТОЛБЕЦ()-3;4));0);СУММ(ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-1;4)):ИНДЕКС(СМЕЩ(H:H;0;-1);ЕСЛИОШИБКА(СТРОКА()+ПОИСКПОЗ("?*";ИНДЕКС($B4:ДВССЫЛ(АДРЕС(500;СТОЛБЕЦ()-2;4));;ПОИСКПОЗ("?*";$B3:ДВССЫЛ(АДРЕС(СТРОКА();СТОЛБЕЦ()-2;4));));)-1;1+СЧЁТЗ(Id))));"")*ЕСЛИ($B3="";1;1,1*1,2);"")
до кучи, массивная формула (в H2, в ячейках ниже ваша формула)Код
=ЕСЛИОШИБКА(ЕСЛИ(СУММ((ДЛСТР(B2:E3)>0)*СТОЛБЕЦ(B2:E3)*{-1:1})>0;СУММ(G3:ИНДЕКС(G:G;СТРОКА()+МИН(ЕСЛИОШИБКА(ПОИСКПОЗ(ВЫБОР({1;2};ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";"яяя");A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));{0;1})-{1;0};""))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
Автор - krosav4ig Дата добавления - 15.11.2018 в 16:24
lfuthobr
Дата: Четверг, 15.11.2018, 16:42 |
Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 21
Репутация:
0
±
Замечаний:
0% ±
Excel 2016
А можно эту же форму без массива, если надо я могу файл примера упростить, id аналогичен сnолбцу А. Занес его в диспетчер имен. И формула писалась через ДВСЫЛ потому что положения столбика с суммой изменяемое и нельзя на прямую ссылаться на ячейки этого листа.
А можно эту же форму без массива, если надо я могу файл примера упростить, id аналогичен сnолбцу А. Занес его в диспетчер имен. И формула писалась через ДВСЫЛ потому что положения столбика с суммой изменяемое и нельзя на прямую ссылаться на ячейки этого листа. lfuthobr
Сообщение отредактировал lfuthobr - Четверг, 15.11.2018, 16:47
Ответить
Сообщение А можно эту же форму без массива, если надо я могу файл примера упростить, id аналогичен сnолбцу А. Занес его в диспетчер имен. И формула писалась через ДВСЫЛ потому что положения столбика с суммой изменяемое и нельзя на прямую ссылаться на ячейки этого листа. Автор - lfuthobr Дата добавления - 15.11.2018 в 16:42
krosav4ig
Дата: Пятница, 16.11.2018, 04:15 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация:
989
±
Замечаний:
0% ±
Excel 2007,2010,2013
ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется?
ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется? krosav4ig
email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
Ответить
Сообщение ну почти без массива Код
=ЕСЛИОШИБКА(ЕСЛИ(И(ИНДЕКС(1:3;Ч(ИНДЕКС({1:3};));ПОИСКПОЗ("?*";B2:E2;)+1)="");СУММ(G3:ИНДЕКС(G:G;СТРОКА()+ЕСЛИОШИБКА(ПОИСКПОЗ(ПСТР(A2;1;ПОИСК(СТРОКА();A2)-1)&"*";A3:ИНДЕКС(A:A;ПОИСКПОЗ("яяя";A:A));0)-1;СЧЁТЗ(A:A))));"")*ЕСЛИ($B2="";1;1,1*1,2);"")
положения столбика с суммой изменяемое
чем и как оно меняется? Автор - krosav4ig Дата добавления - 16.11.2018 в 04:15