Помогите, пожалуйста с формулами. Перерыл форум и либо я слепой но не смог найти примеров которые помогли бы мне решить такую проблему. Если где было и я проглядел то тыкните меня туда.
Мне надо сделать так, чтобы отобрались уникальные сочетания из первого и второго массива. То-есть из первых двух колонок нужно сделать отбор уникальных пар. Проще говоря, чтобы получилось как в примере, (красные столбцы на листе "Изделия"). Но только не руками а с помощью формулы. И чтобы при росте таблицы не пришлось менять формулы.
Я так и не понял как с помощью ИНДЕКС и ПОИСКПОЗ отбирать из пересечения двух массивов... Я, пока что, не могу понять эту логику. Мне это необходимо для работы связанных выпадающих списков. Как это всё сделать с меньшим количеством костылей, я если честно пока не могу придумать.
UPD: Какой синтаксис будет у этой формулы: =ЕСЛИОШИБКА(ИНДЕКС([Наименование Изделия];АГРЕГАТ(15;6;(СТРОКА([Наименование Изделия])-СТРОКА($B$2)+1)/(ПОИСКПОЗ([Наименование Изделия];[Наименование Изделия];0)=СТРОКА([Наименование Изделия])-СТРОКА($B$2)+1);ЧСТРОК($B$2:$B2)));"") Если я хочу чтобы она отбирала уникальные значения не из одного массива, а уникальные пары из двух массивов? Второй массив [Наименование Элемента]
vikttur написал: Ознакомьтесь с правилами форума. Предложите название темы. Заменят модераторы
Собственно я максимально описал проблему, подобного не нашёл. Не открыв пример описать что сделать сложно. Пример наглядно, лишнее удалено. Так что не понял что не так с правилами не бьётся.
Юрий, применительно к Еxcel, почти все задачи связаны с как посчитать и ли как выбрать. Вы же сами
Цитата
Юрий написал: чтобы отобрались уникальные сочетания из первого и второго массива.
вот задача а не в том что вам нужно помощь. Или ответ на ваш вопрос будет примерно таким ввести в ячейке = и далее написать последовательность функция и аргументов. которые дадут интересующий вас результат. В конце необходимо нажать Enter или Ctrl+Shift+Enter.
Можно решить несколькими способами; 1. Вариант простой - выделить два столбца и нажать удалить дубликаты, 2. Вариант сделать сводную. 3. Вариант с помощью PQ удалить дубликаты 4. Вариант формулы, но здесь можно с помощью создания доп столбца сцепки первых двух столбцов. Выберите любой из вариантов.
Спасибо за ответ. Меня интересовал именно автоматический вариант без вспомогательных костылей. В целом ваш вариант интересен, есть только вопрос: а можно ли вспомогательный столбец(N) интегрировать в формулу? И можно ли сделать чтобы они как остальные столбцы G, H и I выводились без пробелов.
Михаил Л, у меня не работает. Перефразирую. Какой синтаксис будет у этой формулы: =ЕСЛИОШИБКА(ИНДЕКС([Наименование Изделия];АГРЕГАТ(15;6;(СТРОКА([Наименование Изделия])-СТРОКА($B$2)+1)/(ПОИСКПОЗ([Наименование Изделия];[Наименование Изделия];0)=СТРОКА([Наименование Изделия])-СТРОКА($B$2)+1);ЧСТРОК($B$2:$B2)));"") Если я хочу чтобы она отбирала уникальные значения не из одного массива, а уникальные пары из двух массивов? Второй массив [Наименование Элемента] UPD: в целом сама формула у меня заработала, теперь бы понять как избавиться от #число в первой строчке и нулей в конечных.
Hugo написал: Ещё не упомянули вариант - массивная UDF.Правда не работает в умных, поэтому вбил чуть ниже.
В том то и проблема, что мне нужно в умных, так как таблица вместе с номенклатурой постоянно растёт и мне надо будет иначе её постоянно каждый день корректировать. А заранее забивать на много строк ниже это тоже такой себе вариант. Поэтому как мне видится, самый оптимальный вариант это добавить второй массив в эту формулу, но у меня пока что не получается...
- ну я бы забивал где-то рядом, или на другом листе. А если количество выводимых вдруг не помещается - можно в коде прописать чтоб например в таком случае в первых строках так и писало - РАСШИРЬТЕ ДИАПАЗОН!!!
IKor написал: Именно по этой причине Вам и предлагали альтернативные варианты на базе сводных таблиц, UDF или PQ...
Не все альтернативные варианты мне сейчас доступны. Установка на сервере каких либо надстроек вроде PQ мне недоступна, как и новый эксель. А VB я не использовал уже около 15 лет... Так что забыл настолько, ка будто не учил. Я если честно сейчас не смог даже расширить зону работы функции VB... Просто добавил в колонки ещё данных и она перестала работать...
В общем-то использую формулы только потому что их я худо-бедно понимаю и могу корректировать. Брать чьи-то примеры и адаптировать. Более того я уверен, что в целом виде мою полную таблицу уже давно надо переносить в ACCESS хотя бы, но опять же не хватает знаний для построения базы данных.
А по сути у меня задача сейчас сделать не поиск уникальных пар значений, а в листе Движение сделать так, чтобы можно было выбирать из выпадающего списка, в идеале с подстановкой по введённым знакам. (как в 1-С) А в соседних колонках в зависимости от введённых значений выпадал ограниченный список из подходящих элементов и состояний. Уверен, что такое уже реализовывали, в том числе с помощью VB, но никаких примеров внятных найти, даже платных, мне не удалось.