Страницы: 1
RSS
Из повторяющихся значений оставить одно с наименьшей датой напротив.
 
Народ, ОЧЕНЬ нужна помощь! Я не прошу у вас готового решения, подскажите хотя бы точные формулы как решить мою задачу! В идеале я должен понять как это сделать самостоятельно. В формулах я не силён, поэтому буду крайне благодарен если вы потратите немного своего времени и попытаетесь объяснить нубу что к чему.

В чем суть:
Есть ФАЙЛ 1, в нем есть строки с ID ЧЕЛОВЕКА, повторяющихся значений нет, каждый ID уникален
Есть ФАЙЛ 2, в нем есть повторяющиеся строки с ID ЧЕЛОВЕКА, а напротив колонка с датами. Соответсвено к одному ID относится несколько дат.

Что нужно: в файле 2 надо убрать повторяющиеся значения, но таким образом, чтобы из повторяющихся осталось только 1 значение ВМЕСТЕ с наименьшей датой напротив.
Т.е. пример: из вот этого:
62d0b920-e1e9-11e4-8036-e41f1369962c31.08.2011
62d0b920-e1e9-11e4-8036-e41f1369962c22.10.2014
62d0b920-e1e9-11e4-8036-e41f1369962c11.06.2016
Мне надо чтобы осталось в файле только это, потому что оно имеет наименьшую дату
62d0b920-e1e9-11e4-8036-e41f1369962c31.08.2011
И в конце если это реально, готовые даты из файла 2 подставить к ID в файл 1
 
Здравствуйте, Сергей.
Прежде чем искать младшую дату Вам придется преобразовать текстовые строки во втором файле в числа.
Например это можно сделать при помощи формулы
Код
=ЕСЛИ(B2="";"-";--B2)
Если вы запишете такую формулу в столбце С второго файла, то тогда в первом можно будет найти младшую дату для каждого уникального индекса при помощи формулы
Код
=МИНЕСЛИ('[ФАЙЛ 2.xlsx]Лист1'!$C$1:C$8626;'[ФАЙЛ 2.xlsx]Лист1'!A$1:A$8626;$A2)
ВАЖНО только сохранить оба файла в одной папке или прописать полный путь ко второму файлу.
Если у Вас нет возможности использовать функцию МИНЕСЛИ(), то можно использовать "точно такую же" формулу массива (вводится нажатием CTRL+SHFT+ENTER вместо просто ENTER):
Код
=МИН(ЕСЛИ('[ФАЙЛ 2.xlsx]Лист1'!$A$1:$A$8626=Лист1!$A2;'[ФАЙЛ 2.xlsx]Лист1'!$C$1:$C$8626;""))
Удачи!
 
Добрый вечер,

Скопировал столбец А в столбец D удалил все дубликаты
В столбец E формула массива которая выдает наименьшую дату из столбца B которая соответствует значению из столбца D

Есть одна проблема, в столбце B есть пустоты и формула читает их как 1990 год но если сделать фильтр на пустоты и поставить например значение "N" то формула их не читает.

Формула:
Код
=(SMALL(IF(A:A=D2;B:B);1))
 ввод через Ctrl+Shift+Enter
Изменено: Vadim Burlac - 06.12.2021 20:00:20
 
Сергей Филимонов,  Вы разместили тему сразу в двух  разделах. Где оставляем?
 
Цитата
написал:
придется преобразовать текстовые строки во втором файле в числа
Я преобразовал в даты  скопировав в текстовой документ и обратно))
 
Та же формула в ФАЙЛ 1
 
Power Query
Код
let
    Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
    #"Changed Type" = Table.TransformColumnTypes(Source,{{"ID ЧЕЛОВЕКА", type text}, {"ДатаВыдачи", type date}}),
    #"Grouped Rows" = Table.Group(#"Changed Type", {"ID ЧЕЛОВЕКА"}, {{"Count", each List.Min([ДатаВыдачи]), type date}}),
    #"Renamed Columns" = Table.RenameColumns(#"Grouped Rows",{{"Count", "ДатаВыдачи"}})
in
    #"Renamed Columns"
Страницы: 1
Наверх