Страницы: 1
RSS
Контекстно зависимый список в заданном диапазоне
 
Здравствуйте.

Перепробовал множество вариантов, пока ни один не работает корректно, может потому что строка артикулов выше строки названий, в крайнем случае допустимо переместить её ниже, пока пробую найти решение так как есть. Желательно обойтись без промежуточных строк\стобцов, но если никак - допустимо и с ними. Будут скрыты. Прошу помощи.


Задача наглядно продемонстрирована в упрощённом эквиваленте - см. файл Пример2.
примечание, если это имеет значение для формул - артикул не уникален т.е. разным названиям может неоднократно соответствовать одинаковый артикул. главное получить в выпадающем списке все названия с артикулами входящими в заданный диапазон.
Изменено: Georg7490 - 19.03.2021 13:08:51
 
Добрый день! В примере заполните данные и результат в ручную, а то не понятно как именно это все должно формироваться. Почему артикулы: у свекла и капуста, морковь - огурец, одинаковый. Возможно вам нужно ЭТО
Изменено: msi2102 - 19.03.2021 13:15:17
 
на странице "Данные" строки свойства 1-10 не имеют для данного примера никакого значения, поэтому просто оставил их значания пустыми, не удалял совсем просто что бы сохранить общий вид таблицы. вероятно - стоит их удалить или не обращать на них внимания.

задача: на листе Формула в ячейке "список названий" (В5) расположить контекстно зависимый список названий, соответствующих выбранной Группе (в ячейке В2) с артикулами в заданном диапазоне (от значения задаваемого в ячейке В3 до В4)
Изменено: Georg7490 - 19.03.2021 13:17:49
 
Отдельно формируйте на листе массив по критерию, а к нему уже ссылайтесь проверкой данных.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Цитата
msi2102 написал:
Возможно вам нужно  ЭТО
Эта статья мне хорошо знакома. Перечтена взад-перёд-диагональю до дыр. Как и все остальные статьи в интернетах по актуальному и смежным запросам. Экселем пользуюсь не часто и мои познания в оном крайне тривиальны. Для всех остальных задач исходной таблицы мне удалось адаптировать нагугленные формулы, кроме этой. Эта штука самостоятальными потугами пока никак не даётся к адаптации под продемонстрированную в файле задачу.
Цитата
msi2102 написал:
Почему артикулы: у свекла и капуста, морковь - огурец, одинаковый.
замените слово артикул на любое другое, подразумевающее неуникальность\неоднократность применения. пусть это будет не артикул а номер заказа или просто номер.

Цитата
Georg7490 написал:
примечание, если это имеет значение для формул - артикул не уникален т.е. разным названиям может неоднократно соответствовать одинаковый артикул. главное получить в выпадающем списке все названия с артикулами входящими в заданный диапазон.
Изменено: Georg7490 - 19.03.2021 13:37:23
 
Цитата
Максим В. написал:
Отдельно формируйте на листе массив по критерию, а к нему уже ссылайтесь проверкой данных.
такое решение уже применялось мной для несколько другой, но сходной задачи формирования списка уникальных значений. оно работает, но не понравилось тем что потребовалось иметь два дополнительных столбца для промежуточных вычислений и дежать их в начале листа скрытыми, что бы формула для списка работала. столбцы скрыты и их не видно, формула работает, но я знаю об этих столбцах и даже сквозь невидимость - они мне не нравятся, позже я буду искать решение как переделать ту задачу под решение без промежуточных столбцов. возможно решение описанной в теме задачи формирования выпадающего списка без промежуточных значений поможет мне в переделке предыдущей формулы, не хотелось бы усугублять всю эту промежуточность, скрытость и соответствующий им дискомфорт (читай - кошмар перфекциониста).
 
В таком случае боюсь, что стандартными методами (формулами) Вашу задачу не решить.
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Здравствуйте.
Если в выпадающем списке пустые строки не мешают, то вариант в файле. Артикулы можно вписывать только существующие, иначе работать не будет. Можно попробовать не точный поискпоз если это надо.
Изменено: gling - 19.03.2021 14:36:04
 
список формируется отдельно потом на него ссылается проверка данных играйтесь выбором группы и артикулами (но если артикул будет не числовым то это все порушит)
Лень двигатель прогресса, доказано!!!
 
Цитата
Georg7490 написал:
такое решение уже применялось мной для несколько другой, но сходной задачи формирования списка уникальных значений. оно работает, но не понравилось тем что потребовалось иметь два дополнительных столбца для промежуточных вычислений и дежать их в начале листа скрытым
сделайте эти столбцы (или строки) на отдельном листе, а потом его скройте, если он Вам сильно мешает
Изменено: msi2102 - 19.03.2021 14:35:34
 
Цитата
Максим В. написал:
В таком случае боюсь, что стандартными методами (формулами) Вашу задачу не решить.
Цитата
Georg7490 написал:
Желательно обойтись без промежуточных строк\стобцов, но если никак - допустимо и с ними.
Можете предложить рабочее решение? В файле. Любыми средствами.
Пусть тогда этот промежуточный столбец (столбцы) формируются на листе Формула.

Цитата
gling написал:
Если в выпадающем списке пустые строки не мешают
Промежуточные вычислений и скрытые столбцы можно потерпеть, только не пустые строки в файле. Благодарю за попытку, но выпадающий список в файле формируется некорректно. Например, если задать группу Овощи и границу от 30 до 30, то в список попадает всего одно название, тогда как с артикулом 30 таких наименований должно быть в списке два. Выборки по другим границам диапазона так же формируют некорректный список.
Цитата
Сергей написал:
список формируется отдельно потом на него ссылается проверка данных играйтесь выбором группы и артикулами (но если артикул будет не числовым то это все порушит)
Эта версия работает отлично. Единственный недостаток - при любой комбинации группы и границ диапазона по артикулу - в самый нижний пункт выпадающего списка попадает одна Ё. Вникаю в формулу. Пытаюсь нагуглить варианты как от неё избавиться. Есть идеи как это поправить?
 
в диспетчере в формуле после ПОИСКПОЗ()-1
Лень двигатель прогресса, доказано!!!
 
Цитата
Georg7490 написал:
если задать группу Овощи и границу от 30 до 30, то в список попадает всего одно название
Тогда можно "Спис" заменить на
Код
=ИНДЕКС(Наз;ПОИСКПОЗ(форула!$B$3;АртГруп;0)):ИНДЕКС(Наз;ПОИСКПОЗ(форула!$B$4+0,1;АртГруп;1))
 
Цитата
Сергей написал:
в диспетчере в формуле после ПОИСКПОЗ()-1
Идеально. Работает. Читал подробные мануалы по каждой функции пытаясь угадать на каком шаге вычислений удастся вычитать одну последнюю строку, Ваш ответ пришёл спасительно быстрее чем я успел закопаться в пучину неподходящих для искомого решения подробностей.
Разрешите поблагодарить всех участников дискуссии за полезные сведение и лично Вас, Сергей, за своевременное работающее решение.

Теперь спешу доводить свой табличный замысел до победного завершения, а то засел на этом моменте уже на несколько дней, а без этого не можно было двигаться дальше. Теперь лёд тронулся. Очень рад. Делюсь счастьем по поводу решённой части задачи. Ура, товарищи. Ура. )
 
Ну наконец-то - работает в исходной таблице! Формула начала работать корректно после того как эксперементально подобрал значение вместо тройки сменить на пятёрку. Внешне таблица из примера и таблица конечного назначения формулы выглядят идентично. Не понимаю почему пришлось менять 3 на 5, почитаю подробности позднее...
Цитата
=ЕСЛИОШИБКА(ИНДЕКС(ClothU!$F$3:$ZZ$3;НАИМЕНЬШИЙ(ЕСЛИ((ClothU!$F$2:$ZZ$2>=$I$2)*(ClothU!$F$2:$ZZ$2<=$K$2)*(ClothU!$F$1:$ZZ$1=$J$2)*(ClothU!$F$1:$ZZ$1<>"");СТОЛБЕЦ(ClothU!$F$1:$ZZ$1)-5);СТРОКА()));"Ё")
... но теперь это работает. Попробовал менять значения мин\макс\группа, пока ошибок не обнаружено. Буду тестировать дальше. Благодарю за внимание.
Изменено: Georg7490 - 21.03.2021 01:13:05
 
Всегда найти решение самостоятельно приносит эмоциональный подьем и уверенность в себе больше чем вам принесут решение на блюдечке удачи и всего хорошего в познаниях дебрей эксель
Лень двигатель прогресса, доказано!!!
Страницы: 1
Наверх