Excel 2000: найдите последнюю строку по году и местоположению ячейки

Вопрос или проблема

A23:A1000: дата

B23:B1000: баланс (числовой формат)

C1: определённый год (числовой формат), например 2023

  1. Как мне найти значение B на основе последней ячейки в A с годом C1? Я пробовал различные формы команды LOOKUP безуспешно.

  2. Как мне найти местоположение этой ячейки?

Пожалуйста… не стоит указывать, что я всё ещё использую Excel 2000. 🙂

Чтобы найти последнее значение в заданном году, вы можете использовать формулу:

=LOOKUP(2,1/(YEAR($A$23:$A$1000)=$C$1),$B$23:$B$1000)

Аналогично, мы считываем номер строки этой ячейки:

=LOOKUP(2,1/(YEAR($A$23:$A$1000)=$C$1),ROW($B$23:$B$1000))

Мы используем тот факт, что ошибки в значениях не мешают поиску LOOKUP, и если искомое значение больше всех значений данных, функция указывает на последнее.
LastValue

Ответ или решение

Для решения задачи, связанной с нахождением последней строки по году и соответствующего значения в положении ячейки в Excel 2000, воспользуемся функцией LOOKUP и комбинацией других функций. Давайте детально рассмотрим оба ваших запроса.

1. Нахождение значения в столбце B, соответствующего последней дате в столбце A за год, указанный в ячейке C1.

Для получения значения баланса из столбца B на основании последней даты из столбца A за указанный год (например, 2023), можно использовать следующую формулу:

=LOOKUP(2,1/(YEAR($A$23:$A$1000)=$C$1),$B$23:$B$1000)

Объяснение формулы:

  • YEAR($A$23:$A$1000): эта часть формулы извлекает год для каждой даты в диапазоне A23:A1000.
  • =$C$1: сравнивает извлеченные годы с заданным годом, находящимся в C1 (в примере 2023). Результатом этого сравнения будет массив, где TRUE равен 1, а FALSE равен 0.
  • 1/(YEAR($A$23:$A$1000)=$C$1): здесь мы делим 1 на массив, полученный из сравнения, что приводит к массиву, содержащему значения #DIV/0 для FALSE и 1 для TRUE.
  • LOOKUP(2, ...): так как искомое значение 2 больше любого значения в 1 или #DIV/0, LOOKUP находит последнее соответствующее значение в массиве, указывая на последнее значение в столбце B, соответствующее заданному году.

2. Нахождение местоположения (номер строки) этой ячейки.

Чтобы найти номер строки, где находится последняя дата за указанный год, можете использовать аналогичную формулу:

=LOOKUP(2,1/(YEAR($A$23:$A$1000)=$C$1),ROW($B$23:$B$1000))

Объяснение формулы:

  • ROW($B$23:$B$1000): возвращает номера строк диапазона B23:B1000.
  • Остальные части формулы аналогичны предыдущей. В результате LOOKUP вернёт номер строки последней ячейки из диапазона, где год соответствует значению в C1.

Заключение

Используя указанные выше формулы, вы сможете эффективно извлекать значения из столбца B и их местоположение на основании даты в столбце A за заданный год. Применение формул LOOKUP позволяет избежать сложных конструкций и обеспечивает простоту обработки, что является важным в Excel 2000.

Эти подходы будут полезны для вашей аналитики и помогут вам поддерживать организованность данных в вашем файле Excel.

Оцените материал
Добавить комментарий

Капча загружается...