2

Я искал, искал и проверял каждый ответ, но ни один из них не помог в моей ситуации.

Использование Excel 2003.

У меня есть таблица со столбцами [ДАТА], [САЙТ], [ИНЦИДЕНТ].

Я объясню что-то похожее на SQL, потому что это красиво и понятно. Мне нужно выполнить следующую инструкцию SELECT для данных в этой таблице

ВЫБЕРИТЕ [ДАТА] из Таблицы1 ГДЕ [САЙТ] = "Сайт1" И [ИНЦИДЕНТ] = "Смерть"

Из этого списка (несколько значений) мне нужно отобразить последнее значение [ДАТА], т.е. последняя дата смерти.

Я пробовал следующую формулу:

{=MAX(IF('Spreadsheet1'!D3:D1000="Death", IF('Spreadsheet1'!E3:E1000="Site1", 'Spreadsheet1'!A3:A1000, 0), 0))}

Но это, кажется, не работает правильно.

Любая помощь определенно приветствуется.

3 ответа3

2

Пытаться

=MAX(A3:A1000 * (D3:D1000="Death") * (E3:E1000="Site1"))

Вместо того, чтобы рассматривать ваши WHERE как условия, это просто обрабатывает их как часть выражения, которое вы максимизируете.  ИСТИНА - 1, ЛОЖЬ - 0, поэтому значение × логическое значение 1 × логическое значение 2 - это значение, если оба логических значения имеют значение ИСТИНА и 0 в противном случае.

Естественно, это формула массива; но я вижу, ты уже понимаешь это.

1

Убедитесь, что имя вашего листа совпадает с именем, использованным в формуле (я полагаю, оно соответствует), и что вы вводите формулу с помощью комбинации клавиш Control-Shift-Enter, поскольку это формула массива. Формула отлично работала для меня.

0

попробуйте посетить мой пост, который я там объясняю, как получить максимальное значение с условием:http://runakay.blogspot.com/2014/01/getting-max-value-with-condition-in.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .