Aqui está uma solução que usa funções mais antigas que devem funcionar no Excel 2007 (na verdade, estou usando o LO Calc e funciona lá).
Cliquenaimagemparaampliar
VocêpediuparamostrarapenasYesouHoliday.Estasoluçãomostraoferiadoreal.Sevocêquiserapenasareferênciagenérica,afórmulaseriaumpoucomaissimples.
AfórmulaemE2(copiadanacoluna)é:
=IFERROR(INDEX($H$1:$J$1,1,MATCH(A2,INDIRECT("H"&MATCH(D2,$G$2:$G$6,1)+1&":J"&MATCH(D2,$G$2:$G$6,1)+1),0)),"")
Vou explicar de dentro para fora.
MATCH(D2,$G$2:$G$6,1)
Isso localiza a linha do ano na matriz Holidays. A linha é relativa ao intervalo da matriz, com os dados começando na linha 2, portanto, precisamos adicionar 1 à linha real na planilha.
INDIRECT("H"&MATCH(D2,$G$2:$G$6,1)+1&":J"&MATCH(D2,$G$2:$G$6,1)+1)
A função INDIRECT cria uma referência ao intervalo em que você procura a data. Para 2018, isso produz uma faixa de H2: J2 (ajuste a fórmula para o intervalo real). Por questões de legibilidade, vou me referir à fórmula acima como apenas INDIRECT () na explicação abaixo.
MATCH(A2,INDIRECT(),0)
Match, em seguida, localiza a coluna nesse intervalo em que a data em A2 está localizada. Produz um erro se a data não for encontrada (ou seja, não é feriado).
Se você quiser apenas um resultado genérico, pode parar por aí e apenas envolvê-lo em um teste IF para verificar uma condição de erro (erro = sem feriado, um resultado sem erro = feriado) e exibir o texto do seu escolha para qualquer resultado.
INDEX($H$1:$J$1,1,MATCH(A2,INDIRECT(),0))
Isso procura a coluna identificada na linha superior que contém os nomes das festas. Vou me referir a isso como apenas INDEX () para facilitar a leitura na explicação abaixo.
IFERROR(INDEX(),"")
Isso envolve o resultado na função IFERROR para apagar a mensagem de erro se não for um feriado.