ConvertiloConvertilo

Conversor de Data do Excel

Converta números de série de data do Excel em datas reais e vice-versa. Converta 44561 em 2022-01-31 no seu navegador — sem precisar do Excel. Lida com o bug do ano bissexto de 1900.

Dias desde 00-01-1900; a parte fracionária é o horário do dia. O valor de hoje é próximo de 46000.
📘
O Excel converte seus números em datas automaticamente?

Leia nosso guia: como evitar que o Excel e o Google Sheets convertam números em datas sem sua permissão.

Abrir guia →

Sobre o formato de data do Excel

O Excel armazena cada data como um número de série — um inteiro que conta os dias desde 1º de janeiro de 1900. Assim, 1 = 1900-01-01, 44561 = 2022-01-31, e o valor de hoje é próximo de 46000. A parte fracionária do número codifica o horário do dia: 0,0 = meia-noite, 0,25 = 06:00, 0,5 = 12:00, 0,75 = 18:00. Uma célula que mostra «31-jan-2022» continua armazenando por baixo o número puro 44561; o formato de data do Excel é apenas uma máscara de exibição sobre esse inteiro. Este conversor pega qualquer um dos dois lados da equação e devolve o outro, para que você possa decodificar um CSV simplificado, analisar uma exportação de banco de dados que perdeu a formatação, ou decifrar um timestamp estilo Excel que chegou no seu JSON — sem precisar abrir o Excel novamente.

Existem dois epochs do Excel a conhecer. O sistema padrão do Windows é baseado em 1900; versões antigas do Excel para Mac usavam um sistema baseado em 1904 (1,0 = 1904-01-01), e a diferença entre os dois é exatamente 1462 dias. O componente fracionário é o horário do dia expresso como fração de 24 horas, então 44561,5 significa 2022-01-31 às 12:00, e 44561,75 são 18:00. Uso prático: alguém te entrega uma coluna de números de 45000 a 45500 e pede datas ISO — cole aqui e copie as respostas de volta para sua planilha, payload JSON ou consulta de banco de dados.

Toda a conversão é executada no seu navegador com JavaScript puro. Não enviamos nada, não armazenamos nada, e não precisamos saber o que sua planilha contém para te dar a resposta certa.

Quando você vai precisar deste conversor

O CSV mostra um número em vez de uma data

Você exportou do Excel ou Google Sheets e obteve 45245,5 no seu CSV em vez de uma data real. Cole aqui — recupere a data normal AAAA-MM-DD, pronta para usar em qualquer lugar.

Importar no Python ou pandas

Ao carregar um xlsx via pandas, as datas às vezes chegam como números decimais. Use este conversor para verificar um valor específico antes de configurar pd.to_datetime(..., unit='D', origin='1899-12-30').

Migrar uma tabela para SQL

Se sua origem armazena datas como números de série do Excel mas a tabela SQL espera um timestamp, você precisa de conversão. O conversor gera um timestamp Unix pronto para colar na sua consulta INSERT.

Construir uma fórmula de relatório

Está escrevendo um SOMASES ou um filtro de intervalo de datas e precisa do número de série do Excel de uma data específica? Mude para «Data → número de série» e copie o inteiro direto na fórmula.

Perguntas frequentes

Como o Excel representa datas como números?

O Excel armazena cada data como um número de série — a contagem de dias decorridos desde 1º de janeiro de 1900. Assim, 1 = 1900-01-01, 367 = 1901-01-01 (o Excel inclui erroneamente um 29 de fevereiro de 1900), e 44561 = 2022-01-31. A parte fracionária codifica o horário do dia: 0,5 = meio-dia, 0,25 = 06:00. Quando uma célula mostra uma data, o valor subjacente continua sendo esse número puro — o formato de data é uma máscara de exibição sobreposta. É por isso que uma exportação CSV pode te entregar 45245,5 em vez de uma data legível.

O que significa o número 44561 como data?

44561 é o número de série do Excel para 31 de janeiro de 2022. Representa o número de dias desde o epoch do Excel (00-01-1900, com o famoso bug do ano bissexto do Lotus 1-2-3 preservado). Adicione uma parte fracionária para o horário do dia: 44561,5 = 2022-01-31 12:00, 44561,75 = 2022-01-31 18:00. Cole o número no conversor acima e você verá instantaneamente a data ISO.

Como evito que o Excel converta números em datas automaticamente?

Formate a coluna previamente como Texto ANTES de colar seus dados. No Excel: selecione a coluna → botão direito → Formatar células → Texto → OK, e então cole. Para entradas pontuais, você pode colocar um apóstrofo simples antes do valor (por exemplo, '001234) e o Excel vai tratá-lo como texto. No Google Sheets: Formatar → Número → Texto simples na coluna primeiro, e então cole. Cobrimos mais cinco truques (incluindo Power Query e o assistente de importação de CSV) no nosso guia linkado acima.

Por que a data 1,0 do Excel é 1900-01-01 e não 1900-01-02?

Por compatibilidade com o Lotus 1-2-3. A planilha original do Lotus tratava 1900 como ano bissexto (não é — a regra gregoriana diz que anos divisíveis por 100 só são bissextos se também forem divisíveis por 400). A Microsoft manteve o bug para que os números de série coincidissem exatamente com os arquivos do Lotus. Como resultado, o Excel tem um dia 60 fantasma = 29 de fevereiro de 1900, e toda data posterior a 1º de março de 1900 está internamente deslocada em um dia em relação a uma contagem gregoriana limpa. Só importa para dados históricos anteriores a março de 1900.

Quais são os sistemas de data do Excel para Mac e Windows?

O Excel para Windows usa o sistema de data 1900 (1,0 = 1900-01-01). Versões antigas do Excel para Mac usavam o sistema de data 1904 (1,0 = 1904-01-01). A diferença entre os dois é exatamente 1462 dias. Para converter um número baseado em 1904 para o moderno baseado em 1900, some 1462. O Excel moderno para Mac usa por padrão o sistema 1900, mas a opção para mudar isso ainda está em Arquivo → Opções → Avançado → «Usar sistema de datas 1904» — e o problema persiste toda vez que você abre uma pasta de trabalho antiga salva no formato Mac.

Como converto um timestamp do Excel com componente de horário?

A parte fracionária do número de série é o horário do dia expresso como fração de 24 horas. Assim, 44561,5 significa 2022-01-31 às 12:00, 44561,25 são 06:00, e 44561,75 são 18:00. O cálculo: horas = fração × 24, minutos = (horas mod 1) × 60, segundos = (minutos mod 1) × 60. O conversor acima faz tudo isso por você — cole um valor como 44561,5208 e você verá tanto a data ISO quanto o horário local.

Como converto um timestamp Unix para Excel?

Fórmula: serie_excel = segundos_unix / 86400 + 25569. A constante 25569 é o número de série do Excel para 1970-01-01 (o início do epoch Unix). Para o sentido contrário: segundos_unix = (serie_excel − 25569) × 86400. Se você trabalha com valores do epoch Unix com frequência, use nosso Conversor de Timestamp Unix dedicado — ele lida com segundos, milissegundos e microssegundos e mostra o resultado no seu fuso horário.

Por que meu CSV mostra 45123 em vez de uma data?

Porque a exportação CSV escreveu o número de série subjacente da célula, não seu valor de exibição. O formato de data do Excel é apenas uma máscara de exibição — quando o mecanismo da planilha escreve texto simples, ele pode recorrer ao inteiro puro (especialmente em exportações do Power Query, escritores de CSV de terceiros ou colunas formatadas como Geral). Cole o número no conversor acima para recuperar a data real, ou exporte novamente do Excel após definir explicitamente o formato da coluna para um padrão de data em texto como aaaa-mm-dd.