Excel: получить последнюю дату на основе значения в столбце

#excel #excel-formula

#excel #excel-формула

Вопрос:

Я некоторое время искал и не понимаю, как это сделать правильно. Мне нужно получить самое последнее значение, которое возникло. У меня это два столбца

 Dates   User Ids
01/01/2019  abc10
01/01/2019  rim344
01/01/2019  foo770
01/01/2019  hocpoc
01/01/2019  con587
01/01/2019  chk123
  

И т.д. Это продолжается для тысяч строк, в общей сложности 300 сотен различных идентификаторов пользователей.

Теперь я хочу получить последнюю дату входа пользователя abc10 в систему. Предпочтительно представлять уникальный набор идентификаторов пользователя, а не исходные данные. Как … должен ли я это делать?

Ответ №1:

вы можете создать сводную таблицу, где ‘user_id’ находится в строках, а ‘dates’ — в значениях, затем перейдите в настройки поля значения (нажав на ‘dates’ в окне полей сводной таблицы) и измените настройку на ‘Max’ (вместо настройки по умолчанию ‘count’). таким образом, вы получите список всех пользователей и их максимальную дату поездки 🙂

Ответ №2:

С такими данными, как:

введите описание изображения здесь

Первым шагом является копирование столбца B в столбец C. Затем используйте функцию removeDuplicates на Data вкладке, чтобы получить уникальные идентификаторы. Затем в D1 введите формулу массива:

 =MAX(IF(B:B=C1,A:A,""))
  

и скопировать вниз:

введите описание изображения здесь

Формулы массива необходимо вводить с помощью Ctrl Shift Enter, а не просто Enter ключа. Если это сделано правильно, формула появится в строке формул с фигурными скобками вокруг нее.

Ответ №3:

Если ваша версия Excel поддерживает это (Office 365 / Excel 2019), вы можете использовать MAXIFS :

 =MAXIFS($A$2:$A$301,$B$2:$B301,"abc10")
  

В качестве альтернативы вы можете использовать следующую формулу массива (введите ее с помощью Ctrl Shift Enter):

 =MAX($A$2:$A$301*--($B$2:$B$301="abc10"))
  

Ответ №4:

Я полагаю, что если вы можете использовать сводную таблицу, это будет удобнее:

введите описание изображения здесь

По сути, вам нужно выбрать данные, вставить сводную таблицу туда, где вы хотите, чтобы она была, поместить идентификаторы пользователей под строками и даты под значениями. Затем измените суммирование значений на максимальное (щелкните правой кнопкой мыши значения в сводной таблице или в настройках поля значения на правой панели) и форматируйте как дату.

Вы мгновенно получите список всех пользователей с их соответствующей последней датой.

Ответ №5:

Спасибо всем, в конечном итоге я получил эту работу, используя следующее

 =LOOKUP(2,1/(A2:A17040=E2),B2:B17040)