Страницы: 1
RSS
Заполнить столбец по условию совпадений из других столбцов
 
Добрый день!
Прошу помочь, чувствую что что-то подобное уже делал и вопрос простой, но никак не могу найти решение. Надеюсь на вашу свежую голову.
Суть вопроса: есть таблица в одном столбце есть повторяющиеся данные, во втором столбце есть значение, необходимо в третьем столбце для всех повторяющихся данных из первого столбца заполнить позиции из второго столбца.
Изменено: mugivara - 04.03.2021 12:12:08 (не добавил файл примера)
 
Цитата
mugivara написал:
есть таблица
нет таблицы
Цитата
mugivara написал:
есть значение
нет значения

наугад ВПР
Не бойтесь совершенства. Вам его не достичь.
 
Извините, не сразу разобрался как прикрепить файл примера.
 
mugivara, это не оно ?
https://www.planetaexcel.ru/techniques/2/96/ , но нет у Вас там не первые строки, всегда отсортировано? результат нужен рядом или в тех же ячейках?
Изменено: Mershik - 04.03.2021 12:16:33
Не бойтесь совершенства. Вам его не достичь.
 
Результат нужен рядом.
Эту тему я читал, эти приёмы использую мне они не подходят. Потому что в столбце В в значениях заполнения данных может и не быть, тогда ячейки должны остаться пустыми
 
Цитата
mugivara написал:
Результат нужен рядом.
Код
=ЕСЛИОШИБКА(ПРОСМОТР(2;1/(([Значения условия]=[@[Значения условия]])*([значения заполнения]<>""));[значения заполнения]);"")
Изменено: Mershik - 04.03.2021 12:20:37
Не бойтесь совершенства. Вам его не достичь.
 
То что надо, спасибо огромное!!!  :excl: :excl:  :excl:  :idea:  
ПРОСМОТРом я ещё не пользовался, на досуге буду изучать эту формулу.
От души благодарю!
 
mugivara, да там не только можно им например так и думаю еще много вариантов в т.ч. и макросы
Код
=ЕСЛИОШИБКА(ИНДЕКС([значения заполнения];АГРЕГАТ(15;6;СТРОКА(Таблица1[[#Все];[значения заполнения]])/([Значения условия]=[@[Значения условия]])/([значения заполнения]<>"");1);1);"")
Не бойтесь совершенства. Вам его не достичь.
 
Спасибо!
Тоже изучу, пока первая формула стройнее и проще, но посмотрю в чём преимущества каждого из вариантов.
 
Первая формула для таблицы на 100 000 строк подвисает эксель на полчаса :(
 
Цитата
mugivara: для таблицы на 100 000 строк подвисает эксель на полчаса
при больших объёмах надо либол полностью отказываться от функций, либо оставоять самые шустрые (не эта). Считать макросом и выгружать результат
Пробуйте
Скрин

Расшифровка переменных для столбцов (имеются ввиду столбцы диапазона, а не листа):
cD = colData = столбец с исходными данными
cF = colFormula = столбец с присваиваемыми данными
cO = colOut = столбец для вывода информации

Если библиотеку скриптов Scripting.Dictionary к файлу подключить нельзя, то используйте позднее связывание
Изменено: Jack Famous - 04.03.2021 15:39:06
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Это понятно. Формулы ВПР на таких масштабах эксель быстро просчитывает (несколько секунд). Я так понимаю тут чтобы ускорить надо формулой массива решать, возможно АГРЕГАТ быстрее будет.
 
mugivara, вариант быстрым макросом добавил выше
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Круто!!!
За секунду всё решило!!!
Не смог правда к себе это применить, пришлось в эту форму из своей таблицы переносить данные. Но главное что все работает и сокращает потерю трудодней кратно )))
 
Цитата
mugivara: главное что все работает и сокращает потерю трудодней кратн
рад, что смог помочь  ;)
Цитата
mugivara: Не смог правда к себе это применить
возможно, дело в библиотеке для словарей - дополнил, что делать в таком случае + описал переменные для столбцов
Изменено: Jack Famous - 04.03.2021 15:41:48
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх