Можно обычным ВПР с истинным условием:
Обязательно список паспортов должен быть в хронологическом порядке.
По сути, функция ищет последнюю входящую в диапазон от 0 до указанного значения дату.
Т.е. на 1.01.23 не было действующего паспорта, поэтому результат #Н/Д, на 1.01.24 уже действовал первый паспорт, поэтому его и вывело, и далее по аналогии.