Я чувствую себя довольно комфортно с INDEX MATCH, но я столкнулся с проблемой, я хотел бы использовать его там, где я не совсем уверен, что это работает. У меня есть два листа: первый меньший лист имеет небольшое подмножество имен, которые находятся на другом листе, и имеет набор дат, связанных с каждым именем. Другой большой лист имеет другой набор дат, связанных с каждым именем. Я хотел бы иметь возможность УКАЗАТЬ даты на большем листе и только МАТЧИ названия, ЕСЛИ эта дата больше, чем дата на меньшем листе и меньше конца месяца, связанного с этой датой. Вместо того, чтобы возвращать значение MATCH, я хотел бы вернуть, скажем, 1, если критерии выполнены. Это можно легко сделать с помощью INDEX MATCH или есть другой набор функций, которые мне нужно искать? Как бы вы пошли об этом?

2 ответа2

1

Я полагаю, что ваш вопрос вращается вокруг написания формулы INDEX/MATCH вокруг этих критериев:

  • УКАЗАТЬ даты на большом листе

  • СРАВНИТЬ только имена, ЕСЛИ эта дата больше даты на меньшем листе

    • меньше конца месяца, связанного с этой датой
  • Затем верните 1, если критерии выполнены.

Мы можем сделать это, вложив INDEX/MATCH в условие IF:

=IF(

    INDEX([LargerSheet!*Range with Dates*],

       MATCH(

         IF([SmallerSheet!*First Date in Range*]<[LargerSheet!*First Date in Range],
         [SmallerSheet!*Range with Dates]),

       [SmallerSheet!*Range with Dates*],0)

    )>0,1,"")

Функция MATCH будет возвращать значения каждый раз, когда найдено совпадение, и по определению это значение будет больше 0. Следовательно, мы хотим вернуть 1 для каждого вхождения этого.

Надеюсь это поможет!

0

Я бы использовал Power Query Add-In для этого. Запрос может начинаться с таблицы Excel, а затем постепенно преобразовывать данные. Вы можете просмотреть результат на каждом этапе.

В соответствии с вашими требованиями я бы использовал команду «Объединить», чтобы объединить два листа по имени и расширить столбец даты на вашем большом листе.

http://office.microsoft.com/en-au/excel-help/merge-queries-HA104149757.aspx

Это приведет ко всем возможным матчам. Тогда я бы использовал команду «Фильтр», чтобы перейти только к датам в диапазоне. Возможно, вам придется изменить функцию фильтра для этого. Обратите внимание, что есть функция Power Query для определения конца месяца:

http://office.microsoft.com/en-au/excel-help/date-endofmonth-HA104110485.aspx?CTT=5&origin=HA104122363

Наконец, я бы доставил запрос в новую таблицу Excel.

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