Sua fórmula é composta corretamente. O resultado inesperado é devido à forma como os diferentes tipos de dados são armazenados pelo Excel.
Existem dois sistemas semelhantes que o Excel usa para armazenar datas, com base em uma configuração no nível da pasta de trabalho.
O sistema de data de 1900
No sistema de datas de 1900, o primeiro dia com suporte é 1 de janeiro de 1900. Quando você insere uma data, a data é convertida em um número de série que representa o número de dias decorridos desde 1 de janeiro de 1900. Por exemplo, se você digite 5 de julho de 1998, o Excel converte a data no número de série 35981.
Por padrão, o Microsoft Excel para Windows usa o sistema de datas 1900. O sistema de data de 1900 permite uma melhor compatibilidade entre o Excel e outros programas de planilhas, como o Lotus 1-2-3, projetados para serem executados no MS-DOS ou Microsoft Windows.
O sistema de datas de 1904
No sistema de datas de 1904, o primeiro dia com suporte é 1º de janeiro de 1904. Quando você insere uma data, a data é convertida em um número de série que representa o número de dias decorridos desde 1º de janeiro de 1904. Por exemplo, se você digite 5 de julho de 1998, o Excel converte a data no número de série 34519.
Por padrão, o Microsoft Excel para Macintosh usa o sistema de datas 1904. Devido ao design dos primeiros computadores Macintosh, as datas anteriores a 1º de janeiro de 1904 não eram suportadas. Esse projeto tinha como objetivo evitar problemas relacionados ao fato de 1900 não ter sido um ano bissexto. Se você alternar para o sistema de datas de 1900, o Excel para Macintosh suporta datas já em 1 de janeiro de 1900.
Esses trechos foram extraídos de: https://support.microsoft.com/en-us/help/214330/differences-between-the-1900-and-the-1904-date-system-in-excel
O número de série é uma contagem simples do número de datas desde 1º de janeiro de 1900, incluindo a data fictícia de 29 de fevereiro de 1900. A função DAY, no entanto, também pode ser vista como uma função de conversão de tipo de dados. Ele pega um número de série da data como entrada e retorna um número inteiro como saída. No seu exemplo, se considerarmos 18 como representando uma série de datas e contar 18 dias a partir de 1º de janeiro de 1900, terminamos em 18 de janeiro de 1900.
A correção simples no front-end é alterar o formato da célula para algo como Number ou General . Isso instruirá o Excel a exibi-lo como um número inteiro, em vez de tentar interpretá-lo como uma série de datas. No back-end, está tudo bem para ir. O resultado inteiro pode ser usado em qualquer outra fórmula e se comportará corretamente.
Como exemplo, digamos que desejássemos criar uma fórmula condicional que nos dissesse se o dia 15 passou ou não no mês atual. Podemos fazer isso usando:
=IF(DAY(TODAY())>15,"The 15th has passed","It is not yet the 15th")
Seria muito mais difícil obter o mesmo resultado usando uma série de datas; portanto, a função DAY retornando um número inteiro acaba sendo mais útil no contexto dos casos de uso comuns do Excel.