Transformar datas do formato serial do Excel em strings legíveis em Python pode parecer complicado, mas com a abordagem correta, você consegue fazer isso de forma rápida e precisa. Este método utiliza a biblioteca pandas, que é a ferramenta mais confiável para processamento de dados no ecossistema Python.
Para começar, precisamos importar a biblioteca pandas, que oferece funções específicas para lidar com datas no formato Excel.
import pandas as pd
Agora, criamos uma função que recebe o número serial do Excel e retorna a data formatada como string. O pandas já possui a função to_datetime que entende o formato serial do Excel quando especificamos o argumento unit='D' e origin='1899-12-30'.
def excel_serial_to_string(serial):
date = pd.to_datetime(serial, unit='D', origin='1899-12-30')
return date.strftime('%d/%m/%Y')
Vamos testar nossa função com um número serial conhecido. Por exemplo, o número 44197 corresponde a 01/01/2021 no formato Excel.
serial_number = 44197
result = excel_serial_to_string(serial_number)
print(result) # Saída: 01/01/2021
Veja abaixo uma tabela comparativa mostrando números seriais do Excel e suas respectivas conversões para strings:
| Número Serial Excel | Data em String (dd/mm/aaaa) |
|---|---|
| 44197 | 01/01/2021 |
| 43831 | 01/01/2020 |
| 36526 | 01/01/2000 |
| 1 | 01/01/1900 |
Com este método, você converte datas do formato serial do Excel para strings em Python de forma automática e sem erros manuais. A função criada é flexível e pode ser facilmente integrada em scripts maiores de processamento de dados, garantindo precisão e eficiência no seu trabalho diário.