Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/масивы - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
масивы
Гость Дата: Пятница, 27.07.2012, 14:14 | Сообщение № 1
Группа: Гости
Обьясните пожалуйста почему при вводе любой формулы с фигурными скобками {} тоисть когда я хочу задать масив выбивает ошибка формулы. посчитать масив нажав в формуле нажав Ctrl+Shift+entr получается, но мне нужно посчитать когда масив задан не на всю формулу а лиш на часть внутри формулы. Например не могу вести формулы : =СУММ(НАИМЕНЬШИЙ(A1:A10,{1;2;3})) , =НАИМЕНЬШИЙ(A1:A10,{1;2;3}) , даже просто ={1;2;3;4;5} не хочет вводить.Тоисть вообще не могу вставить в внутырь формулы фиг.скобки.В чем проблема?
 
Ответить
СообщениеОбьясните пожалуйста почему при вводе любой формулы с фигурными скобками {} тоисть когда я хочу задать масив выбивает ошибка формулы. посчитать масив нажав в формуле нажав Ctrl+Shift+entr получается, но мне нужно посчитать когда масив задан не на всю формулу а лиш на часть внутри формулы. Например не могу вести формулы : =СУММ(НАИМЕНЬШИЙ(A1:A10,{1;2;3})) , =НАИМЕНЬШИЙ(A1:A10,{1;2;3}) , даже просто ={1;2;3;4;5} не хочет вводить.Тоисть вообще не могу вставить в внутырь формулы фиг.скобки.В чем проблема?

Автор - Гость
Дата добавления - 27.07.2012 в 14:14
Jhonson Дата: Пятница, 27.07.2012, 14:17 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 514
Репутация: 169 ±
Замечаний: 0% ±

а так?
=СУММ(НАИМЕНЬШИЙ(A1:A10;{1;2;3}))


"Ничто не приносит людям столько неприятностей, как разум."
 
Ответить
Сообщениеа так?
=СУММ(НАИМЕНЬШИЙ(A1:A10;{1;2;3}))

Автор - Jhonson
Дата добавления - 27.07.2012 в 14:17
vikttur Дата: Пятница, 27.07.2012, 14:19 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

Первая проблема - нет Вашего примера в файле.

=СУММ(НАИМЕНЬШИЙ(A1:A10,{1;2;3})) - можно без "трехпальцев"
=НАИМЕНЬШИЙ(A1:A10,{1;2;3}) - это просто массив значений, над ним еще как-то нужно поиздеваться.

Покажите, что хотите получить.

Дополнение: и точно, ошибка есть.


Сообщение отредактировал vikttur - Пятница, 27.07.2012, 14:21
 
Ответить
СообщениеПервая проблема - нет Вашего примера в файле.

=СУММ(НАИМЕНЬШИЙ(A1:A10,{1;2;3})) - можно без "трехпальцев"
=НАИМЕНЬШИЙ(A1:A10,{1;2;3}) - это просто массив значений, над ним еще как-то нужно поиздеваться.

Покажите, что хотите получить.

Дополнение: и точно, ошибка есть.

Автор - vikttur
Дата добавления - 27.07.2012 в 14:19
Гость Дата: Пятница, 27.07.2012, 17:01 | Сообщение № 4
Группа: Гости
К примеру нужно найти три наименьших значения в диапазоне ячеек :
Скрин ошибки http://s015.radikal.ru/i330/1207/34/d60470c7401c.jpg
 
Ответить
СообщениеК примеру нужно найти три наименьших значения в диапазоне ячеек :
Скрин ошибки http://s015.radikal.ru/i330/1207/34/d60470c7401c.jpg

Автор - Гость
Дата добавления - 27.07.2012 в 17:01
Serge_007 Дата: Пятница, 27.07.2012, 17:24 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
.
К сообщению приложен файл: SashaT.xls (33.0 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение.

Автор - Serge_007
Дата добавления - 27.07.2012 в 17:24
Гости Дата: Пятница, 27.07.2012, 22:36 | Сообщение № 6
Группа: Гости
Все формулы правельны, это у меня Excel чото не работает как нада, на другом компе все получается.
 
Ответить
СообщениеВсе формулы правельны, это у меня Excel чото не работает как нада, на другом компе все получается.

Автор - Гости
Дата добавления - 27.07.2012 в 22:36
vikttur Дата: Пятница, 27.07.2012, 22:40 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Репутация: 526 ±
Замечаний: 0% ±

НеправЕльны. В первом ответе в теме Jhonson показал Вам ошибку (выделено красным).
Разделитель в русской локали - точка с запятой.
 
Ответить
СообщениеНеправЕльны. В первом ответе в теме Jhonson показал Вам ошибку (выделено красным).
Разделитель в русской локали - точка с запятой.

Автор - vikttur
Дата добавления - 27.07.2012 в 22:40
Serge_007 Дата: Пятница, 27.07.2012, 22:45 | Сообщение № 8
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (vikttur)
в русской локали

У автора - Украинская.

Quote (vikttur)
Разделитель в русской локали - точка с запятой.

Не обязательно. Это по умолчанию точка с запятой, а что там настроили после - ХЗ


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (vikttur)
в русской локали

У автора - Украинская.

Quote (vikttur)
Разделитель в русской локали - точка с запятой.

Не обязательно. Это по умолчанию точка с запятой, а что там настроили после - ХЗ

Автор - Serge_007
Дата добавления - 27.07.2012 в 22:45
Gloom Дата: Понедельник, 30.07.2012, 12:32 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Даздравствуйте!
Простите, что вклиниваюсь в тему со своим вопросом, делаю это лишь ради того, чтобы не создавать темы с одинаковым названием.
С вводом формулы массива затруднений у меня не было, проблема в другом, как сократить формулу , приведенную в примере до благоразумного размера, иначе мне приходится суммировать куски формул в зависимости от количества условий в диапазоне B15:AE15 табл. №2.
Заранее благодарен за любую инфрмационную поддержку.
К сообщению приложен файл: 7317240.xlsx (11.8 Kb)


-=*=-
 
Ответить
СообщениеДаздравствуйте!
Простите, что вклиниваюсь в тему со своим вопросом, делаю это лишь ради того, чтобы не создавать темы с одинаковым названием.
С вводом формулы массива затруднений у меня не было, проблема в другом, как сократить формулу , приведенную в примере до благоразумного размера, иначе мне приходится суммировать куски формул в зависимости от количества условий в диапазоне B15:AE15 табл. №2.
Заранее благодарен за любую инфрмационную поддержку.

Автор - Gloom
Дата добавления - 30.07.2012 в 12:32
MCH Дата: Понедельник, 30.07.2012, 12:42 | Сообщение № 10
Группа: Админы
Ранг: Старожил
Сообщений: 2004
Репутация: 752 ±
Замечаний: ±

=СУММПРОИЗВ(($B$4:$F$4=B$23)*ЕЧИСЛО(ПОИСКПОЗ($A$5:$A$11;$B15:$F15;))*$B$5:$F$11)
=СУММПРОИЗВ(($B$4:$F$4=B$23)*(СЧЁТЕСЛИ($B15:$F15;$A$5:$A$11)>0)*$B$5:$F$11)


Сообщение отредактировал MCH - Понедельник, 30.07.2012, 12:44
 
Ответить
Сообщение=СУММПРОИЗВ(($B$4:$F$4=B$23)*ЕЧИСЛО(ПОИСКПОЗ($A$5:$A$11;$B15:$F15;))*$B$5:$F$11)
=СУММПРОИЗВ(($B$4:$F$4=B$23)*(СЧЁТЕСЛИ($B15:$F15;$A$5:$A$11)>0)*$B$5:$F$11)

Автор - MCH
Дата добавления - 30.07.2012 в 12:42
_Boroda_ Дата: Понедельник, 30.07.2012, 12:54 | Сообщение № 11
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация: 6504 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Поскольку шапки в Табл1 и Табл3 одинаковые, то
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК($A$5:$A$11;$B15:$E15))*B$5:B$11)
К сообщению приложен файл: 7317240_1.xlsx (13.2 Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеПоскольку шапки в Табл1 и Табл3 одинаковые, то
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК($A$5:$A$11;$B15:$E15))*B$5:B$11)

Автор - _Boroda_
Дата добавления - 30.07.2012 в 12:54
Gloom Дата: Понедельник, 30.07.2012, 12:56 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Пока не понял как, но работает отлично!
Спасибо, за оперативную помощь, разберусь и возьму на вооружение ! (+)


-=*=-
 
Ответить
СообщениеПока не понял как, но работает отлично!
Спасибо, за оперативную помощь, разберусь и возьму на вооружение ! (+)

Автор - Gloom
Дата добавления - 30.07.2012 в 12:56
Gloom Дата: Среда, 01.08.2012, 09:07 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Приветствую.
Снова вынужден обратиться за помощью к Чародеям Экселя.
В приведенном выше примере столкнулся с более усложненной задачей.
Увеличилось число условий, пытался решить задачу самостоятельно, результата добился, но крайне примитивным методом.
Подскажите пожалуйста более оптимальный вариант формулы, чтобы условие ухватывало диапазон в строке 16, и не приходилось плюсовать фрагмент формулы в зависимости от количества кодов в стрке. Предложенные ранее варианты самостоятельно адаптировать не получилось(
Буду безгранично благодарен за любую подсказку.
К сообщению приложен файл: 8201750.xlsx (15.0 Kb)


-=*=-
 
Ответить
СообщениеПриветствую.
Снова вынужден обратиться за помощью к Чародеям Экселя.
В приведенном выше примере столкнулся с более усложненной задачей.
Увеличилось число условий, пытался решить задачу самостоятельно, результата добился, но крайне примитивным методом.
Подскажите пожалуйста более оптимальный вариант формулы, чтобы условие ухватывало диапазон в строке 16, и не приходилось плюсовать фрагмент формулы в зависимости от количества кодов в стрке. Предложенные ранее варианты самостоятельно адаптировать не получилось(
Буду безгранично благодарен за любую подсказку.

Автор - Gloom
Дата добавления - 01.08.2012 в 09:07
_Boroda_ Дата: Среда, 01.08.2012, 09:41 | Сообщение № 14
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация: 6504 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Code
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК($A$5:$A$11;$B16:$F16))*ЕЧИСЛО(ПОИСК($B$5:$B$11;$I$16:$M$16))*ЕЧИСЛО(ПОИСК($C$5:$C$11;$P$16:$T$16))*D$5:D$11)

так нужно?

или, используя задумку Михаила
Code
=СУММПРОИЗВ((СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$D$11)

или, для разных шапок в табл1 и табл5
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$H$11)


Quote (Gloom)
Вариант 2, не могу понять, зачем именно >0, и только в одном случае условия,


СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11) дает массив из нулей (если в $B16:$F16 нет такого числа, как в $A$5:$A$11) и количества чисел в $B16:$F16 таких, как в $A$5:$A$11.
То же самое для других СЧЕТЕСЛИ. В обычном случае повторов быть не должно, но, поскольку Вы написали, что количество может быть около 30, то могут быть случайные повторы из-за невнимательности. В этом случае, в СЧЕТЕСЛИ будет не единичка, а двойка (или еще больше). Для того, чтобы все равно посчитать один раз, мы и сравниваем с нулем (>0).
Если ошибок точно не будет, то можно написать так:
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)*$D$5:$H$11)

А почему условие только один раз - по правилам арифметики сначала делается операция умножения, а потом сравнения. Так что мы сначала все перемножаем, а потом сравниваем с нулем.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
Сообщение
Code
=СУММПРОИЗВ(ЕЧИСЛО(ПОИСК($A$5:$A$11;$B16:$F16))*ЕЧИСЛО(ПОИСК($B$5:$B$11;$I$16:$M$16))*ЕЧИСЛО(ПОИСК($C$5:$C$11;$P$16:$T$16))*D$5:D$11)

так нужно?

или, используя задумку Михаила
Code
=СУММПРОИЗВ((СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$D$11)

или, для разных шапок в табл1 и табл5
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$H$11)


Quote (Gloom)
Вариант 2, не могу понять, зачем именно >0, и только в одном случае условия,


СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11) дает массив из нулей (если в $B16:$F16 нет такого числа, как в $A$5:$A$11) и количества чисел в $B16:$F16 таких, как в $A$5:$A$11.
То же самое для других СЧЕТЕСЛИ. В обычном случае повторов быть не должно, но, поскольку Вы написали, что количество может быть около 30, то могут быть случайные повторы из-за невнимательности. В этом случае, в СЧЕТЕСЛИ будет не единичка, а двойка (или еще больше). Для того, чтобы все равно посчитать один раз, мы и сравниваем с нулем (>0).
Если ошибок точно не будет, то можно написать так:
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)*$D$5:$H$11)

А почему условие только один раз - по правилам арифметики сначала делается операция умножения, а потом сравнения. Так что мы сначала все перемножаем, а потом сравниваем с нулем.

Автор - _Boroda_
Дата добавления - 01.08.2012 в 09:41
Gloom Дата: Среда, 01.08.2012, 14:02 | Сообщение № 15
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Потестил в разных позах.
Вариант 3, ориентир по шапкам не надежен, т.к. шапка первой таблицы крайне не стабильна в различные периоды.
Вариант 2, не могу понять, зачем именно >0, и только в одном случае условия,
Вариант 1 работает ровно, сбоев пока не обнаружил, если найду глюки, отпишусь дополнительно.
Выражаю безмерную благодарность за содействие. (+)


-=*=-

Сообщение отредактировал Gloom - Среда, 01.08.2012, 14:03
 
Ответить
СообщениеПотестил в разных позах.
Вариант 3, ориентир по шапкам не надежен, т.к. шапка первой таблицы крайне не стабильна в различные периоды.
Вариант 2, не могу понять, зачем именно >0, и только в одном случае условия,
Вариант 1 работает ровно, сбоев пока не обнаружил, если найду глюки, отпишусь дополнительно.
Выражаю безмерную благодарность за содействие. (+)

Автор - Gloom
Дата добавления - 01.08.2012 в 14:02
Gloom Дата: Среда, 01.08.2012, 15:17 | Сообщение № 16
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Предельно понятно, спасибо.
Избежать ошибочных повторов в моем случае действительно очень важно, обязательно использую в сложных строках.

Невероятно рад, что встретил сей восхитительный форум с такими одаренными и отзывчивыми людьми!


-=*=-
 
Ответить
СообщениеПредельно понятно, спасибо.
Избежать ошибочных повторов в моем случае действительно очень важно, обязательно использую в сложных строках.

Невероятно рад, что встретил сей восхитительный форум с такими одаренными и отзывчивыми людьми!

Автор - Gloom
Дата добавления - 01.08.2012 в 15:17
Gloom Дата: Понедельник, 06.08.2012, 09:27 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Здравствуйте, хотел взять за основу формулу:
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$H$11)

но если отсутствует значение хотя бы по одному из условий запроса СЧЁТЕСЛИ формула, конечно выдает "0" на выходных не было интернета, не с кем было посоветовться. Убил тучу времени раснес в зависимости от значений 3 варианта формул в таблицу в 2 тыс. строк cry
Просто любопытно, можно ли застраховать формулу от нулевого ответа, на случаей, если например в диапазоне I16:M16 нет значений?


-=*=-
 
Ответить
СообщениеЗдравствуйте, хотел взять за основу формулу:
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ($B16:$F16;$A$5:$A$11)*СЧЁТЕСЛИ($I16:$M16;$B$5:$B$11)*СЧЁТЕСЛИ($P16:$T16;$C$5:$C$11)>0)*$D$5:$H$11)

но если отсутствует значение хотя бы по одному из условий запроса СЧЁТЕСЛИ формула, конечно выдает "0" на выходных не было интернета, не с кем было посоветовться. Убил тучу времени раснес в зависимости от значений 3 варианта формул в таблицу в 2 тыс. строк cry
Просто любопытно, можно ли застраховать формулу от нулевого ответа, на случаей, если например в диапазоне I16:M16 нет значений?

Автор - Gloom
Дата добавления - 06.08.2012 в 09:27
_Boroda_ Дата: Понедельник, 06.08.2012, 11:09 | Сообщение № 18
Группа: Админы
Ранг: Местный житель
Сообщений: 16715
Репутация: 6504 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Можно так
[vba]
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ(ЕСЛИ(СУММ($B16:$F16);$B16:$F16;$B$5:$B$11);$A$5:$A$11)*
СЧЁТЕСЛИ(ЕСЛИ(СУММ($I16:$M16);$I16:$M16;$B$5:$B$11);$B$5:$B$11)*СЧЁТЕСЛИ(ЕСЛИ(СУММ($P16:$T16);$P16:$T16;$B$5:$B$11);$C$5:$C$11)>0)*$D$5:$H$11)
[/vba]


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеМожно так
[vba]
Code
=СУММПРОИЗВ(($D$4:$H$4=B$27)*(СЧЁТЕСЛИ(ЕСЛИ(СУММ($B16:$F16);$B16:$F16;$B$5:$B$11);$A$5:$A$11)*
СЧЁТЕСЛИ(ЕСЛИ(СУММ($I16:$M16);$I16:$M16;$B$5:$B$11);$B$5:$B$11)*СЧЁТЕСЛИ(ЕСЛИ(СУММ($P16:$T16);$P16:$T16;$B$5:$B$11);$C$5:$C$11)>0)*$D$5:$H$11)
[/vba]

Автор - _Boroda_
Дата добавления - 06.08.2012 в 11:09
Gloom Дата: Понедельник, 06.08.2012, 12:08 | Сообщение № 19
Группа: Пользователи
Ранг: Новичок
Сообщений: 22
Репутация: 0 ±
Замечаний: 0% ±

Смысл понятен, спасибо.
Получается решение по тому же принципу, что и в первоначальном вопросе, видимо вариантов в данной ситуации немного, буду пытать оптимальный.


-=*=-
 
Ответить
СообщениеСмысл понятен, спасибо.
Получается решение по тому же принципу, что и в первоначальном вопросе, видимо вариантов в данной ситуации немного, буду пытать оптимальный.

Автор - Gloom
Дата добавления - 06.08.2012 в 12:08
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!