Subtraindo um ano de uma data no Excel ou Planilhas
É uma coisa que aparece todo santo dia no dia a dia de escritório de contabilidade. O cliente pede um relatório de vencimentos que started exatamento um ano atrás, ou precisa calcular o prazo prescricional de um lançamento, ou simplesmente quer saber quanto custa uma despesa no mesmo período do ano anterior. A conta de menos 1 ano é o nome que muitos dão de forma informal para essa operação de subtrair exatamente 365 dias de uma data de referência. Parece simples, mas tem uma pegadinha que todo mundo já levou coice pelo menos uma vez. A abordagem mais direta no Excel é a seguinte. Se a data está na célula A2, basta fazer =A2-365. Pronto. O Excel devolve a data com um ano a menos. No Google Sheets funciona do mesmo jeito. Se quiser fazer por meses ao invés de dias, tem a função =DATE(YEAR(A2)-1, MONTH(A2), DAY(A2)). Essa segunda opção respeita o calendário de verdade, incluindo anos bissextos. Eu prefiro ela na maioria dos casos porque evita surpresas com a data de 29 de fevereiro.
Por que a conta de menos 1 ano pode te sabotar
O problema real começa quando você pega uma data de 29 de fevereiro e subtrai 365 dias usando a conta simples. No ano seguinte, que não é bissex-to, a fórmula =A2-365 vai retornar 1º de março em vez de 28 de fevereiro. A diferença é de um dia. Em cálculos de juros, multa ou vencimento, um dia a mais ou a menos pode significar diferença no valor final. No meu caso, tive um cliente que reclamou que o desconto de um boleto estava com valor ligeiramente diferente do esperado. Descobrimos que a base de cálculo pegava 29/02/2024 e subtraía 365, resultando em 01/03/2023. Quando corrigimos para usar a função DATE, o resultado ficou 28/02/2023 e a conta fechou certinho. Essa confusão é mais comum do que parece, e geralmente passa despercebida porque a planilha parece estar funcionando normalmente até alguém notar a discrepância nos números finais. Outro ponto que muita gente esquece é que o Excel considera que um ano tem 365 dias por padrão, mas o calendário gregoriano tem anos de 365 e 366 dias. Se você está trabalhando com prazos legais que exigem correspondência exata de dia e mês, usar subtração fixa de 365 dias não é a melhor opção. A função DATE lida com isso automaticamente porque pergunta ao próprio calendário qual é o último dia do mês quando o ano alvo não é bissex-to. Isso economiza horas de ajuste manual em planilhas maiores.
👉 Clique no botão abaixo para saber mais sobre o assunto!
Se você precisa aplicar essa regra para várias linhas de uma vez, arraste a fórmula para baixo ou converta a faixa em tabela dinâmica. O Excel preenche automaticamente. Para quem trabalha com muitos lançamentos, recomendo criar uma coluna auxiliar chamada "Data Base Anual" e colocar ali a fórmula com DATE. Assim, todo o resto da planilha referencia essa coluna e, se a data de corte mudar, você ajusta em um só lugar. No exemplo prático, se a data de referência está em A2, a coluna B recebe =DATE(YEAR(A2)-1, MONTH(A2), DAY(A2)) e a partir daí todas as outras fórmulas que precisam da data com um ano a menos puxam de B2. Isso evita repetir a lógica errada em cada célula e centraliza o ponto de correção. Uma limitação importante que preciso deixar clara: essa abordagem funciona bem para datas no padrão gregoriano e para a maioria dos cenários comerciais. Ela não leva em conta feriados, dias úteis ou regras específicas de legislação trabalhista que possam alterar o prazo real. Se o seu objetivo é calcular vencimento considerando apenas dias úteis, por exemplo, precisa de uma função adicional que filtre os fins de semana e feriados. No contexto da conta de menos 1 ano aplicada a declarações fiscais no Brasil, como o IRPF ou o SPED, a correção automática de datas costuma ser suficiente, mas é bom validar sempre com um arquivo de teste antes de enviar o resultado final. Já vi gente confiar cegamente na subtração simples e depois ter que refazer a declaração inteira porque a data base estava um dia fora.
Para quem usa Python ou outra linguagem de programação, o equivalente é direto com a biblioteca datetime. Basta importar timedelta, subtrair um ano usando date.replace com o ano menos um, e tratar a exceção quando o dia 29 de fevereiro não existir no ano-alvo. O código fica claro e evita o erro clássico que citei acima. No Excel, o risco maior é justamente não perceber que a fórmula está retornando uma data incorreta sem que o número pareça estranho à primeira vista. Por isso a dica prática: sempre cheque manualmente os casos de 29 de fevereiro, mesmo que sua planilha tenha milhares de linhas e só uma delas seja bissex-to.