
Resumo
- Microsoft Excel mantém “bug do ano 1900”, que trata esse ano como bissexto (não é);
- Microsoft avisa que não corrigirá bug porque mudança alteraria cálculos de datas em planilhas existentes e afetaria compatibilidade com outros arquivos de planilha;
- problema vem do Lotus 1-2-3, lançado em janeiro de 1983; Excel adotou o mesmo sistema de datas para manter compatibilidade.
Quando uma falha é descoberta em um software, os seus desenvolvedores trabalham na solução. Mas não neste caso: o Microsoft Excel tem um bug que o faz assumir 1900 como um ano bissexto (não é). Mas a correção poderia causar grandes transtornos. Isso explica o fato de o problema ter sido descoberto no Lotus 1-2-3 e nunca ter sido corrigido.
A própria Microsoft explica o contexto nesta página de ajuda:
Quando o Lotus 1-2-3 foi lançado, o programa assumia que o ano de 1900 era bissexto, embora na realidade não fosse. Isso facilitava o processamento de anos bissextos e não afetava praticamente nenhum cálculo de datas no Lotus 1-2-3.
O Lotus 1-2-3 foi lançado em janeiro de 1983, inicialmente para MS-DOS. Já o Microsoft Excel foi introduzido pouco tempo depois, em setembro de 1985, mas para Mac. A versão para PCs só chegou em 1987. Isso pode ter contribuído para o Lotus 1-2-3 reinar nos anos 1980. O Excel só assumiu a liderança do mercado na década de 1990.
Dada a relevância do software de planilhas rival, a Microsoft tomou o cuidado de fazer o Excel utilizar o mesmo sistema de datas do Lotus 1-2-3. Era uma forma de garantir alguma compatibilidade entre os dois programas e, nesse sentido, permitir que planilhas de um pudessem ser migradas para o outro.
Bom, o Lotus 1-2-3 virou assunto de museu, mas o Excel é, até hoje, a solução de planilhas mais popular que existe. O problema é que, paralelamente a tamanha longevidade, o Excel manteve o “bug do ano 1900”.
Talvez esse não seja exatamente um bug. Até hoje não há confirmação sobre se tratar 1900 como um ano bissexto foi um erro ou uma decisão dos desenvolvedores do Lotus 1-2-3 para simplificar o cálculo de datas em uma época em que os recursos de processamento e memória eram severamente limitados.
Você pode reproduzir o erro com um teste simples: abra o Excel e, em uma célula, digite:
=DATA(1900;2;29)
O Excel deveria retornar a data 01/03/1900, mas exibirá 29/02/1900, data que não existiu.

Por que a Microsoft não vai corrigir o “bug do ano 1900” no Excel?
É tecnicamente possível corrigir a tal falha, admite a Microsoft. Mas a companhia declarou que não o fará porque as consequências poderiam ser maiores do que os benefícios. Muito maiores!
Em planilhas já existentes, funções que tratam de datas poderiam acabar gerando valores diferentes. Isso porque a correção faria o Excel executar cálculos com um dia a menos no calendário, afinal, o bug considera que o dia 29 de fevereiro de 1900 existiu.
Além disso, o Excel também poderia exibir valores diferentes em planilhas oriundas de softwares concorrentes, tornando os dados pouco confiáveis.
Para muitos profissionais e organizações, esses problemas poderiam causar enormes transtornos.
Mas a própria Microsoft ressalta: os demais anos, bissextos ou não, são tratados corretamente pelo Excel. Somente planilhas que precisam realizar cálculos que envolvam o ano de 1900 é que podem ter problemas com o tal bug.