Сортировка формулой: только отобранные значения?
ole456
Дата: Пятница, 05.07.2013, 19:38 |
Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 1
Репутация:
0
±
Замечаний:
0% ±
Excel 2007
Добрый день. Подскажите, пожалуйста, такая задача: есть таблица с данными. Эту таблицу нужно отсортировать по числовому значению в одной из колонок и в таком виде выводить в некое нужное место (на другой лист, книгу - не важно). Нужно именно формулами, т.к. источник периодически обновляется, соответственно, отсортированные данные должны быть актуальными. Возможности как-либо менять источник нет. Вполне понятно как это сделать сочетанием формул LARGE и потом MATCH и INDEX, но есть большое НО: нужно выводить, условно, несколько таблиц, по одной для определенного признака, который находится в другой колонке исходной таблицы. Т.е. как-то делать отбор значений по этому признаку... Как это возможно сделать? Спасибо.
Добрый день. Подскажите, пожалуйста, такая задача: есть таблица с данными. Эту таблицу нужно отсортировать по числовому значению в одной из колонок и в таком виде выводить в некое нужное место (на другой лист, книгу - не важно). Нужно именно формулами, т.к. источник периодически обновляется, соответственно, отсортированные данные должны быть актуальными. Возможности как-либо менять источник нет. Вполне понятно как это сделать сочетанием формул LARGE и потом MATCH и INDEX, но есть большое НО: нужно выводить, условно, несколько таблиц, по одной для определенного признака, который находится в другой колонке исходной таблицы. Т.е. как-то делать отбор значений по этому признаку... Как это возможно сделать? Спасибо. ole456
К сообщению приложен файл:
sort.xls
(22.5 Kb)
Ответить
Сообщение Добрый день. Подскажите, пожалуйста, такая задача: есть таблица с данными. Эту таблицу нужно отсортировать по числовому значению в одной из колонок и в таком виде выводить в некое нужное место (на другой лист, книгу - не важно). Нужно именно формулами, т.к. источник периодически обновляется, соответственно, отсортированные данные должны быть актуальными. Возможности как-либо менять источник нет. Вполне понятно как это сделать сочетанием формул LARGE и потом MATCH и INDEX, но есть большое НО: нужно выводить, условно, несколько таблиц, по одной для определенного признака, который находится в другой колонке исходной таблицы. Т.е. как-то делать отбор значений по этому признаку... Как это возможно сделать? Спасибо. Автор - ole456 Дата добавления - 05.07.2013 в 19:38
китин
Дата: Пятница, 05.07.2013, 19:50 |
Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7030
Репутация:
1079
±
Замечаний:
0% ±
Excel 2007;2010;2016
где то так.ну и +побаловался я правда для 2007 и выше
где то так.ну и +побаловался я правда для 2007 и выше китин
К сообщению приложен файл:
sort.xlsx
(11.9 Kb)
Не судите очень строго:я пытаюсь научиться ЯД 41001877306852
Сообщение отредактировал китин - Пятница, 05.07.2013, 19:51
Ответить
Сообщение где то так.ну и +побаловался я правда для 2007 и выше Автор - китин Дата добавления - 05.07.2013 в 19:50
_Boroda_
Дата: Пятница, 05.07.2013, 21:09 |
Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16771
Репутация:
6551
±
Замечаний:
±
2003; 2007; 2010; 2013 RUS
У меня так получилось Код
=ЕСЛИ(СЧЁТЕСЛИ($F$5:$F$12;$C$25)>СЧЁТЗ(B$26:B26);ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
или, для 2007 Код
=ЕСЛИОШИБКА(ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
Такие сложности потому, что, например, у Пети и у Стаса может быть одинаковая выручка. Это я про кусок +1/(100+СТРОКА(B$5:B$12))
У меня так получилось Код
=ЕСЛИ(СЧЁТЕСЛИ($F$5:$F$12;$C$25)>СЧЁТЗ(B$26:B26);ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
или, для 2007 Код
=ЕСЛИОШИБКА(ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
Такие сложности потому, что, например, у Пети и у Стаса может быть одинаковая выручка. Это я про кусок +1/(100+СТРОКА(B$5:B$12)) _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение У меня так получилось Код
=ЕСЛИ(СЧЁТЕСЛИ($F$5:$F$12;$C$25)>СЧЁТЗ(B$26:B26);ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
или, для 2007 Код
=ЕСЛИОШИБКА(ИНДЕКС(B$5:B$12;ПОИСКПОЗ(НАИБОЛЬШИЙ(($F$5:$F$12=$C$25)*($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));СТРОКА()-СТРОКА(B$26));--($D$5:$D$12+1/(100+СТРОКА(B$5:B$12)));));"")
Такие сложности потому, что, например, у Пети и у Стаса может быть одинаковая выручка. Это я про кусок +1/(100+СТРОКА(B$5:B$12)) Автор - _Boroda_ Дата добавления - 05.07.2013 в 21:09
edmar07
Дата: Суббота, 06.07.2013, 00:22 |
Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 44
Репутация:
0
±
Замечаний:
0% ±
_Boroda_ - круто!!!
татары всегда наступают только вперед (алга), а если им нужно отступить ... разворачиваются и алга
Ответить
Сообщение _Boroda_ - круто!!! Автор - edmar07 Дата добавления - 06.07.2013 в 00:22
vikttur
Дата: Воскресенье, 07.07.2013, 02:18 |
Сообщение № 5
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
Цитата
Такие сложности потому...
Убираем сложности Неудобство: в формуле для отделов: Код
=ЕСЛИ($A20="";"";ВПР($A20;$A$5:$F$12;СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17);))
нужно вручную менять ссылку на вспомогательный столбец ($A20 ). Усложнять не стал. А вот формула поиск числа в строке 17 усложнена (автопоиск): Код
СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17)
Где усложнять, где упрощать - выбор за пользователем.
Цитата
Такие сложности потому...
Убираем сложности Неудобство: в формуле для отделов: Код
=ЕСЛИ($A20="";"";ВПР($A20;$A$5:$F$12;СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17);))
нужно вручную менять ссылку на вспомогательный столбец ($A20 ). Усложнять не стал. А вот формула поиск числа в строке 17 усложнена (автопоиск): Код
СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17)
Где усложнять, где упрощать - выбор за пользователем.vikttur
Ответить
Сообщение Цитата
Такие сложности потому...
Убираем сложности Неудобство: в формуле для отделов: Код
=ЕСЛИ($A20="";"";ВПР($A20;$A$5:$F$12;СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17);))
нужно вручную менять ссылку на вспомогательный столбец ($A20 ). Усложнять не стал. А вот формула поиск числа в строке 17 усложнена (автопоиск): Код
СТОЛБЕЦ(C1)-ПОИСКПОЗ(100;$B$17:B$17)
Где усложнять, где упрощать - выбор за пользователем.Автор - vikttur Дата добавления - 07.07.2013 в 02:18
vikttur
Дата: Воскресенье, 07.07.2013, 02:27 |
Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2941
В этом варианте никакие ссылки менять не нужно.
В этом варианте никакие ссылки менять не нужно. vikttur
Сообщение отредактировал vikttur - Воскресенье, 07.07.2013, 02:38
Ответить
Сообщение В этом варианте никакие ссылки менять не нужно. Автор - vikttur Дата добавления - 07.07.2013 в 02:27