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

Вход

Регистрация

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

 

= Мир MS Excel/Найти сумму минимальных значений столбцов двумерного массива - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Найти сумму минимальных значений столбцов двумерного массива (Формулы/Formulas)
Найти сумму минимальных значений столбцов двумерного массива
Jas Дата: Пятница, 12.02.2016, 20:49 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день.

Прошу вашей помощи. Хэлп и гугл не помогли пока. Если плохо искал укажите направление, плиз.

Итак, есть у меня задача:
Есть двумерный массив. Требуется получить сумму минимальных элементов каждого столбца. Как данные, массив является промежуточным звеном вычислений, в связи с чем ссылка на определённый столбец, строку невозможна, только на весь массив целиком.
Собственно, интересует формула ссылающаяся только на массив, выдающая указанную сумму без использования доп.столбцов. Очень приветствуется вариант, при котором на выходе формулы будет одномерный массив минимальных значений столбцов, которые легко просуммировать.

К чему пришёл я:
Используя массивный ввод, получаю в ячейках одной строки минимальные элементы, и их суммирую. Такой вариант мне не подходит. Массив из минимальных получить не получается, простите за тавтологию.

Файл примера для опытов прилагаю.

P.S. Мой первый пост тут, если что-то сделал не так при создании темы, прошу сильно не пинать, исправлюсь.
К сообщению приложен файл: SumMin.xlsx (9.5 Kb)
 
Ответить
СообщениеДобрый день.

Прошу вашей помощи. Хэлп и гугл не помогли пока. Если плохо искал укажите направление, плиз.

Итак, есть у меня задача:
Есть двумерный массив. Требуется получить сумму минимальных элементов каждого столбца. Как данные, массив является промежуточным звеном вычислений, в связи с чем ссылка на определённый столбец, строку невозможна, только на весь массив целиком.
Собственно, интересует формула ссылающаяся только на массив, выдающая указанную сумму без использования доп.столбцов. Очень приветствуется вариант, при котором на выходе формулы будет одномерный массив минимальных значений столбцов, которые легко просуммировать.

К чему пришёл я:
Используя массивный ввод, получаю в ячейках одной строки минимальные элементы, и их суммирую. Такой вариант мне не подходит. Массив из минимальных получить не получается, простите за тавтологию.

Файл примера для опытов прилагаю.

P.S. Мой первый пост тут, если что-то сделал не так при создании темы, прошу сильно не пинать, исправлюсь.

Автор - Jas
Дата добавления - 12.02.2016 в 20:49
jakim Дата: Пятница, 12.02.2016, 21:30 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1197
Репутация: 313 ±
Замечаний: 0% ±

Excel 2010
А если так?

Код
=MIN(INDEX(B5:D9;;1))+MIN(INDEX(B5:D9;;2))+MIN(INDEX(B5:D9;;3))
 
Ответить
Сообщение
А если так?

Код
=MIN(INDEX(B5:D9;;1))+MIN(INDEX(B5:D9;;2))+MIN(INDEX(B5:D9;;3))

Автор - jakim
Дата добавления - 12.02.2016 в 21:30
Jas Дата: Пятница, 12.02.2016, 21:42 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
А если так?


Так, конечно, тоже вариант, для трёх столбцов :-) Но в исходном массиве может быть и 10 и 15 и больше их. Формула будет расти до посинения. Хотелось бы общее решение для таких случаев.
 
Ответить
Сообщение
А если так?


Так, конечно, тоже вариант, для трёх столбцов :-) Но в исходном массиве может быть и 10 и 15 и больше их. Формула будет расти до посинения. Хотелось бы общее решение для таких случаев.

Автор - Jas
Дата добавления - 12.02.2016 в 21:42
krosav4ig Дата: Суббота, 13.02.2016, 02:08 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 2346
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013
а так?
Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(B5:B9;;СТОЛБЕЦ(B5:D5)-2)))


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеа так?
Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(B5:B9;;СТОЛБЕЦ(B5:D5)-2)))

Автор - krosav4ig
Дата добавления - 13.02.2016 в 02:08
Udik Дата: Суббота, 13.02.2016, 11:54 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
чуть сократил формулу krosav4ig, :)
Код
СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(A5;;СТОЛБЕЦ(A5:C5);5)))
К сообщению приложен файл: 1767228.xlsx (11.2 Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com
 
Ответить
Сообщениечуть сократил формулу krosav4ig, :)
Код
СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(A5;;СТОЛБЕЦ(A5:C5);5)))

Автор - Udik
Дата добавления - 13.02.2016 в 11:54
Jas Дата: Суббота, 13.02.2016, 23:51 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
krosav4ig, Udik, спасибо большое! Осознал, что недооценивал возможности промитогов. Буду восполнять пробелы.
 
Ответить
Сообщениеkrosav4ig, Udik, спасибо большое! Осознал, что недооценивал возможности промитогов. Буду восполнять пробелы.

Автор - Jas
Дата добавления - 13.02.2016 в 23:51
Jas Дата: Понедельник, 15.02.2016, 10:55 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Попытался внедрить в проект, выявилась проблема.

Формулу видоизменил немного, чтоб отвечала заданию (ссылка только на основной массив, без строк и столбцов).
Проблема у том, что ПромИтоги не работают с массивом, если он вычислен, а не является ссылкой на таблицу. Причём МИН - работает прекрасно.

Эти формулы работают, выдают массив, и необходимую сумму:
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2}))

Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2})))

Но стоит произвести какие-либо операции с массивом - не работают:
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2}))

Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2})))

Хотя МИН справляется со вторым вариантом (выдаёт минимумы столбцов при массивном вводе):
Код
=МИН(ИНДЕКС($B5:$D9*2;;{1;2;3}))

Но на выходе не массив, и просуммировать его не выходит.

В чем может быть загвоздка, и можно ли это обойти?
Файл примера прилагаю.
К сообщению приложен файл: SumMin2.xlsx (13.1 Kb)


Сообщение отредактировал Jas - Понедельник, 15.02.2016, 10:55
 
Ответить
СообщениеПопытался внедрить в проект, выявилась проблема.

Формулу видоизменил немного, чтоб отвечала заданию (ссылка только на основной массив, без строк и столбцов).
Проблема у том, что ПромИтоги не работают с массивом, если он вычислен, а не является ссылкой на таблицу. Причём МИН - работает прекрасно.

Эти формулы работают, выдают массив, и необходимую сумму:
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2}))

Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2})))

Но стоит произвести какие-либо операции с массивом - не работают:
Код
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2}))

Код
=СУММПРОИЗВ(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(5;СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2})))

Хотя МИН справляется со вторым вариантом (выдаёт минимумы столбцов при массивном вводе):
Код
=МИН(ИНДЕКС($B5:$D9*2;;{1;2;3}))

Но на выходе не массив, и просуммировать его не выходит.

В чем может быть загвоздка, и можно ли это обойти?
Файл примера прилагаю.

Автор - Jas
Дата добавления - 15.02.2016 в 10:55
Udik Дата: Понедельник, 15.02.2016, 12:01 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1588
Репутация: 192 ±
Замечаний: 0% ±

Excel 2016 х 64
Смотрите что выходит на одном шаге вычисления адреса
Код
=СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2})



Код
СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2})



т.е. вторая конструкция возвращает значения адресов ячеек, и СМЕЩ не получает базовый адрес.
К сообщению приложен файл: 6794196.jpg (86.6 Kb) · 6413202.jpg (66.0 Kb)


вот вам барабан
яд 41001231307558 wm R419131876897
udik1968@gmail.com


Сообщение отредактировал Udik - Понедельник, 15.02.2016, 12:02
 
Ответить
СообщениеСмотрите что выходит на одном шаге вычисления адреса
Код
=СМЕЩ(ИНДЕКС(B5:D9;0;1);;{0;1;2})



Код
СМЕЩ(ИНДЕКС(B5:D9*2;0;1);;{0;1;2})



т.е. вторая конструкция возвращает значения адресов ячеек, и СМЕЩ не получает базовый адрес.

Автор - Udik
Дата добавления - 15.02.2016 в 12:01
Jas Дата: Понедельник, 15.02.2016, 12:53 | Сообщение № 9
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Udik, спасибо, теперь понятно в чем проблема.
Надо думать как-то по-другому пути. В основном варианте массив данных получается сложной формулой, соответственно, приходится работать именно с двумерным массивом значений.

Поэтому, с учётом вышеназванных уточнений, вопрос остаётся открытым.


Сообщение отредактировал Jas - Понедельник, 15.02.2016, 12:54
 
Ответить
СообщениеUdik, спасибо, теперь понятно в чем проблема.
Надо думать как-то по-другому пути. В основном варианте массив данных получается сложной формулой, соответственно, приходится работать именно с двумерным массивом значений.

Поэтому, с учётом вышеназванных уточнений, вопрос остаётся открытым.

Автор - Jas
Дата добавления - 15.02.2016 в 12:53
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Найти сумму минимальных значений столбцов двумерного массива (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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