
Uma data pode parecer exatamente correta no Excel e ainda assim se comportar de maneira diferente quando você a copia para outro aplicativo. Você pode ver 2026-01-01 em uma planilha, mas obter um número ao combiná-la com texto ou alterar o formato da célula.
Isso acontece porque o Excel armazena datas como números. Sua aparência vem do formato de número aplicado à célula.
Quando você precisa de uma string de data específica para um relatório, um modelo de importação ou outro sistema, converter a data em texto dá a você controle sobre o resultado.
Este guia aborda quatro abordagens, desde inserir uma única data manualmente até converter uma coluna inteira com Python.
Antes de começar: formatação de datas vs. conversão para texto
Alterar a aparência de uma data não altera seu tipo subjacente.
Por exemplo, aplicar o formato personalizado yyyy-mm-dd faz uma data aparecer como 2026-01-01, mas o Excel ainda armazena um valor de data numérico. Convertê-la em texto produz a string real 2026-01-01. A função TEXTO do Excel realiza essa conversão enquanto aplica um formato especificado.
| Ação | Aparência | Valor subjacente |
|---|---|---|
| Aplicar um formato de data personalizado | 2026-01-01 | Valor de data numérico |
| Converter a data em texto | 2026-01-01 | String de texto |
Para os exemplos abaixo, imagine uma planilha de pedidos com estas colunas:
| OrderDate | OrderID | Customer | Product | Quantity |
|---|---|---|---|---|
| 2026-01-01 | ORD-1003 | Harbor Logistics | Portable SSD 1TB | 2 |
| 2026-01-09 | ORD-1004 | Summit Education | USB-C Hub | 8 |
| 2026-02-14 | ORD-1005 | Bluebird Trading | Webcam | 4 |
As datas estão na coluna A, com um cabeçalho na linha 1.
Mantenha uma cópia da pasta de trabalho original antes de experimentar métodos que substituem valores existentes. Preservar as datas originais é útil se você precisar fazer cálculos de data mais tarde.
Método 1: Inserir datas como texto com um apóstrofo
Para algumas datas inseridas manualmente, adicione um apóstrofo (') antes da data:
'2026-01-01
Pressione Enter, e a célula exibirá:
2026-01-01
O apóstrofo informa ao Excel para tratar a entrada como texto. Ele não aparece como parte do conteúdo exibido na célula. A Microsoft documenta essa abordagem como uma forma de impedir a conversão automática de datas.
Você pode digitar a representação exata de que precisa:
| O que você digita | O que a célula exibe |
|---|---|
'2026-01-01 |
2026-01-01 |
'01/09/2026 |
01/09/2026 |
'20260101 |
20260101 |
Ideal para: inserir um pequeno número de strings de data em um modelo.
Esse método é rápido, mas exige entrada ou edição manual. Para uma coluna existente contendo centenas de datas, use uma das abordagens a seguir.
Método 2: Converter datas em texto com a função TEXTO
A função TEXTO é a opção de planilha mais flexível quando você deseja controlar o formato de saída.
Suponha que A2 contenha uma data válida do Excel. Insira esta fórmula em uma célula vazia:
=TEXT(A2,"yyyy-mm-dd")
A fórmula retorna uma string de texto como:
2026-01-01

Em seguida, arraste a alça de preenchimento para baixo para converter as datas restantes. TEXTO pega o valor original e aplica o código de formato fornecido.
Escolher um formato de data
Altere o segundo argumento para produzir uma representação de data diferente:
| Fórmula | Resultado de exemplo |
|---|---|
=TEXT(A2,"yyyy-mm-dd") |
2026-01-01 |
=TEXT(A2,"mm/dd/yyyy") |
01/01/2026 |
=TEXT(A2,"dd/mm/yyyy") |
01/01/2026 |
=TEXT(A2,"yyyymmdd") |
20260101 |
Usar mm e dd mantém os zeros à esquerda, o que ajuda quando outro sistema espera um valor de comprimento fixo.
Se a coluna de origem contiver células em branco, use:
=IF(A2="","",TEXT(A2,"yyyy-mm-dd"))
Isso deixa o resultado vazio quando a célula de origem está em branco.
Substituir fórmulas por texto estático
O resultado da fórmula permanece vinculado à data original. Se você precisar de valores de texto independentes:
- Selecione as células que contêm as fórmulas TEXTO.
- Pressione Ctrl+C.
- Clique com o botão direito na célula de destino.
- Escolha Colar Especial → Valores.
As células coladas agora contêm as strings resultantes em vez de fórmulas. Se estiver substituindo a coluna de datas original, conclua esta etapa antes de excluir os dados de origem.
Ideal para: converter datas existentes em um formato preciso mantendo o processo visível na planilha.
Método 3: Converter datas em texto usando Texto para Colunas
Apesar do nome, o Texto para Colunas pode ser usado sem dividir uma coluna. A etapa final do assistente permite escolher Texto como tipo de saída. A comunidade de suporte da Microsoft inclui esse fluxo de trabalho para converter datas em texto.
Para experimentá-lo com a planilha de pedidos:
- Selecione as células de data na coluna A, excluindo o cabeçalho.
- Abra Dados → Texto para Colunas.
- Selecione Delimitado, depois clique em Avançar.
- Desmarque todas as caixas de delimitadores para que as datas permaneçam em uma coluna.
- Clique em Avançar novamente.
- Em Formato de dados da coluna, selecione Texto.
- Defina Destino para uma coluna vazia, como
$H$2. - Clique em Concluir.
Usar uma coluna de destino vazia permite comparar o resultado com as datas de origem antes de substituir qualquer coisa.

A principal limitação é o controle de formato. Texto para Colunas não fornece uma string de formato como yyyy-mm-dd. A representação de data resultante pode depender das configurações regionais de data, então verifique a saída em vez de presumir que ela preserva um formato de célula personalizado.
Se o destino precisar conter exatamente 20260101 ou 2026-01-01, a função TEXTO oferece uma regra de conversão mais explícita.
Ideal para: uma conversão única quando você deseja texto estático sem inserir fórmulas.
Método 4: Automatizar a conversão de data para texto com Python
Etapas manuais funcionam bem para tarefas ocasionais. Um script se torna útil quando a mesma conversão precisa ser executada repetidamente como parte de um processo de relatório ou exportação.
Spire.XLS for Python pode ler, editar e salvar pastas de trabalho do Excel sem exigir o Microsoft Excel instalado. Neste exemplo, ele lê datas da coluna A e as substitui por strings de texto formatadas.
Instalar Spire.XLS for Python
Instale o pacote a partir do terminal:
pip install Spire.XLS
Converter uma coluna de data em texto
O código a seguir processa a coluna A na primeira planilha, começando na linha 2 para ignorar o cabeçalho:
from spire.xls import Workbook, FileFormat
# 1. Load the workbook
workbook = Workbook()
workbook.LoadFromFile("Excel_Date.xlsx")
# 2. Get the first worksheet
sheet = workbook.Worksheets.get_Item(0)
# 3. Loop through column A
last_row = sheet.Columns[0].LastRow
for i in range(2, last_row + 1):
cell = sheet.Range.get_Item(i, 1)
# Read the cell as a date object
date_value = cell.DateTimeValue
# Convert the date to a formatted string
text_date = date_value.ToString("yyyy-MM-dd")
# Set the cell format to Text, then write the string
cell.NumberFormat = "@"
cell.Text = text_date
# 4. Save the output workbook
workbook.SaveToFile(
"FormattedDates.xlsx",
FileFormat.Version2016
)
workbook.Dispose()
Coloque Excel_Date.xlsx no diretório de trabalho do script ou substitua o nome do arquivo de entrada pelo caminho completo.
Este exemplo pressupõe que todas as células processadas contenham uma data válida. Para uma coluna contendo espaços em branco, notas ou valores inválidos, adicione validação antes de ler DateTimeValue.
A captura de tela abaixo compara os valores de data originais com as strings de texto geradas pelo script Python:

Entenda as etapas principais
Três operações realizam a conversão:
date_value = cell.DateTimeValue
Isso lê o valor de data da célula de origem.
text_date = date_value.ToString("yyyy-MM-dd")
Isso produz a string desejada. O formato usa MM maiúsculo para o mês.
cell.NumberFormat = "@"
cell.Text = text_date
Essas linhas definem a célula para o formato de texto e gravam a string formatada. Gravar a string é essencial: alterar apenas o formato de número não realiza a mesma conversão.
O script salva uma pasta de trabalho de saída separada, deixando o arquivo de entrada disponível para comparação. Ele processa uma coluna em uma planilha; a mesma lógica pode depois ser colocada dentro de loops de planilhas ou arquivos para uma automação mais ampla.
Ideal para: conversões repetíveis que pertencem a um fluxo de trabalho em Python.
Qual método você deve escolher?
Escolha com base em como os dados chegam e com que frequência você precisa processá-los.
| Método | Melhor uso | Controle de formato | Saída |
|---|---|---|---|
| Apóstrofo | Algumas datas inseridas manualmente | Texto exato que você digita | Texto estático |
| Função TEXTO | Datas existentes que precisam de um formato específico | Código de formato explícito | Resultado da fórmula; opcionalmente colado como valores |
| Texto para Colunas | Conversão única sem fórmulas | Limitado | Texto estático |
| Python | Conversão repetida em um script | String de formato explícita | Texto gravado na pasta de trabalho de saída |
Para o trabalho cotidiano em planilhas, TEXTO geralmente é o ponto de partida mais forte porque a regra de conversão é fácil de ver e ajustar.
Use um apóstrofo ao inserir alguns valores, Texto para Colunas para uma conversão rápida cujo formato de saída você verificou, e Python quando a tarefa precisar se tornar um processo repetível.
Perguntas frequentes
Por que alterar o formato de uma célula de data para Texto mostra um número?
O Excel armazena datas como valores numéricos. Alterar o formato da célula para Texto não transforma esse valor em uma string de data formatada.
Use TEXT(A2,"yyyy-mm-dd") para gerar a string desejada.
Como posso verificar se uma data convertida é realmente texto?
Use a função ÉTEXTO:
=ISTEXT(A2)
Ela retorna TRUE quando A2 contém texto e FALSE quando contém um valor de data numérico. Isso é mais confiável do que julgar pela aparência da célula.
Ainda posso calcular com datas depois de convertê-las em texto?
Strings de texto não se comportam de forma tão consistente quanto datas nativas em cálculos. Algumas fórmulas podem interpretar strings reconhecíveis, mas essa interpretação pode depender de seu formato e das configurações regionais.
Mantenha a coluna de datas original se precisar calcular intervalos, agrupar registros por mês ou realizar outras operações de data.
Como mantenho os zeros à esquerda no texto da data?
Use componentes de mês e dia com dois dígitos. Por exemplo:
=TEXT(A2,"yyyy-mm-dd")
No exemplo em Python, use:
date_value.ToString("yyyy-MM-dd")
Ambos produzem um valor como 2026-01-09, preservando os zeros no mês e no dia.