
Une date peut sembler parfaitement correcte dans Excel et pourtant se comporter différemment lorsque vous la copiez dans une autre application. Vous pouvez voir 2026-01-01 dans une feuille de calcul, pour finalement obtenir un nombre lorsque vous la combinez avec du texte ou modifiez son format de cellule.
Cela se produit parce qu’Excel stocke les dates sous forme de nombres. Leur apparence provient du format de nombre appliqué à la cellule.
Lorsque vous avez besoin d’une chaîne de date spécifique pour un rapport, un modèle d’importation ou un autre système, la conversion de la date en texte vous donne le contrôle sur le résultat.
Ce guide couvre quatre approches, de la saisie manuelle d’une seule date à la conversion d’une colonne entière avec Python.
Avant de commencer : mise en forme des dates ou conversion en texte
Modifier l’apparence d’une date ne change pas son type sous-jacent.
Par exemple, l’application du format personnalisé yyyy-mm-dd fait apparaître une date comme 2026-01-01, mais Excel stocke toujours une valeur de date numérique. La conversion en texte produit la chaîne réelle 2026-01-01. La fonction TEXTE d’Excel effectue cette conversion tout en appliquant un format spécifié.
| Action | Apparence | Valeur sous-jacente |
|---|---|---|
| Appliquer un format de date personnalisé | 2026-01-01 | Valeur de date numérique |
| Convertir la date en texte | 2026-01-01 | Chaîne de texte |
Pour les exemples ci-dessous, imaginez une feuille de calcul de commandes avec ces colonnes :
| Date de commande | ID de commande | Client | Produit | Quantité |
|---|---|---|---|---|
| 2026-01-01 | ORD-1003 | Harbor Logistics | SSD portable 1 To | 2 |
| 2026-01-09 | ORD-1004 | Summit Education | Hub USB-C | 8 |
| 2026-02-14 | ORD-1005 | Bluebird Trading | Webcam | 4 |
Les dates se trouvent dans la colonne A, avec un en-tête à la ligne 1.
Conservez une copie du classeur d’origine avant d’essayer les méthodes qui remplacent les valeurs existantes. Conserver les dates d’origine est utile si vous devez ensuite effectuer des calculs de dates.
Méthode 1 : Saisir des dates sous forme de texte avec une apostrophe
Pour quelques dates saisies manuellement, ajoutez une apostrophe (') avant la date :
'2026-01-01
Appuyez sur Entrée, et la cellule affiche :
2026-01-01
L’apostrophe indique à Excel de traiter l’entrée comme du texte. Elle n’apparaît pas dans le contenu affiché de la cellule. Microsoft documente cette approche comme moyen d’empêcher la conversion automatique des dates.
Vous pouvez saisir la représentation exacte dont vous avez besoin :
| Ce que vous saisissez | Ce que la cellule affiche |
|---|---|
'2026-01-01 |
2026-01-01 |
'01/09/2026 |
01/09/2026 |
'20260101 |
20260101 |
Idéal pour : saisir un petit nombre de chaînes de date dans un modèle.
Cette méthode est rapide, mais elle nécessite une saisie ou une modification manuelle. Pour une colonne existante contenant des centaines de dates, utilisez l’une des approches suivantes.
Méthode 2 : Convertir des dates en texte avec la fonction TEXTE
La fonction TEXTE est l’option de feuille de calcul la plus flexible lorsque vous souhaitez contrôler le format de sortie.
Supposons que A2 contienne une date Excel valide. Saisissez cette formule dans une cellule vide :
=TEXT(A2,"yyyy-mm-dd")
La formule renvoie une chaîne de texte telle que :
2026-01-01

Faites ensuite glisser la poignée de recopie vers le bas pour convertir les dates restantes. TEXTE prend la valeur d’origine et applique le code de format que vous fournissez.
Choisir un format de date
Changez le deuxième argument pour produire une représentation de date différente :
| Formule | Exemple de résultat |
|---|---|
=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 |
L’utilisation de mm et dd conserve les zéros de tête, ce qui est utile lorsqu’un autre système attend une valeur de longueur fixe.
Si la colonne source contient des cellules vides, utilisez :
=IF(A2="","",TEXT(A2,"yyyy-mm-dd"))
Cela laisse le résultat vide lorsque la cellule source est vide.
Remplacer les formules par du texte statique
Le résultat de la formule reste lié à la date d’origine. Si vous avez besoin de valeurs texte indépendantes :
- Sélectionnez les cellules contenant les formules TEXTE.
- Appuyez sur Ctrl+C.
- Cliquez avec le bouton droit sur la cellule de destination.
- Choisissez Collage spécial → Valeurs.
Les cellules collées contiennent désormais les chaînes résultantes plutôt que des formules. Si vous remplacez la colonne de dates d’origine, effectuez cette étape avant de supprimer les données source.
Idéal pour : convertir des dates existantes dans un format précis tout en gardant le processus visible dans la feuille de calcul.
Méthode 3 : Convertir des dates en texte avec Convertir en colonnes
Malgré son nom, Convertir en colonnes peut être utilisé sans fractionner une colonne. La dernière étape de l’assistant vous permet de choisir Texte comme type de sortie. La communauté d’assistance Microsoft présente ce flux de travail pour convertir des dates en texte.
Pour l’essayer avec la feuille de commandes :
- Sélectionnez les cellules de date de la colonne A, en excluant l’en-tête.
- Ouvrez Données → Convertir en colonnes.
- Sélectionnez Délimité, puis cliquez sur Suivant.
- Décochez toutes les cases de délimiteur afin que les dates restent dans une seule colonne.
- Cliquez de nouveau sur Suivant.
- Sous Format des données de colonne, sélectionnez Texte.
- Définissez Destination sur une colonne vide, telle que
$H$2. - Cliquez sur Terminer.
L’utilisation d’une colonne de destination vide vous permet de comparer le résultat avec les dates source avant de remplacer quoi que ce soit.

La principale limite réside dans le contrôle du format. Convertir en colonnes ne fournit pas de chaîne de format telle que yyyy-mm-dd. La représentation de date obtenue peut dépendre des paramètres régionaux de date ; vérifiez donc la sortie au lieu de supposer qu’elle conserve un format de cellule personnalisé.
Si la destination doit contenir exactement 20260101 ou 2026-01-01, la fonction TEXTE vous donne une règle de conversion plus explicite.
Idéal pour : une conversion ponctuelle lorsque vous voulez du texte statique sans saisir de formules.
Méthode 4 : Automatiser la conversion de dates en texte avec Python
Les étapes manuelles conviennent bien aux tâches occasionnelles. Un script devient utile lorsque la même conversion doit être exécutée de manière répétée dans le cadre d’un processus de création de rapports ou d’exportation.
Spire.XLS for Python peut lire, modifier et enregistrer des classeurs Excel sans nécessiter l’installation de Microsoft Excel. Dans cet exemple, il lit les dates de la colonne A et les remplace par des chaînes de texte formatées.
Installer Spire.XLS for Python
Installez le paquet depuis votre terminal :
pip install Spire.XLS
Convertir une colonne de dates en texte
Le code suivant traite la colonne A de la première feuille de calcul, en commençant à la ligne 2 pour ignorer l’en-tête :
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()
Placez Excel_Date.xlsx dans le répertoire de travail du script, ou remplacez le nom de fichier d’entrée par son chemin complet.
Cet exemple suppose que chaque cellule traitée contient une date valide. Pour une colonne contenant des cellules vides, des notes ou des valeurs non valides, ajoutez une validation avant de lire DateTimeValue.
La capture d’écran ci-dessous compare les valeurs de date d’origine aux chaînes de texte générées par le script Python :

Comprendre les étapes clés
Trois opérations effectuent la conversion :
date_value = cell.DateTimeValue
Cela lit la valeur de date dans la cellule source.
text_date = date_value.ToString("yyyy-MM-dd")
Cela produit la chaîne souhaitée. Le format utilise MM en majuscules pour le mois.
cell.NumberFormat = "@"
cell.Text = text_date
Ces lignes définissent la cellule au format texte et écrivent la chaîne formatée. L’écriture de la chaîne est essentielle : modifier uniquement le format de nombre n’effectue pas la même conversion.
Le script enregistre un classeur de sortie distinct, laissant le fichier d’entrée disponible pour comparaison. Il traite une colonne dans une feuille de calcul ; la même logique peut ensuite être placée dans des boucles sur les feuilles ou les fichiers pour une automatisation plus large.
Idéal pour : des conversions répétables qui s’intègrent à un flux de travail Python.
Quelle méthode choisir ?
Choisissez en fonction de la manière dont les données arrivent et de la fréquence à laquelle vous devez les traiter.
| Méthode | Utilisation idéale | Contrôle du format | Sortie |
|---|---|---|---|
| Apostrophe | Quelques dates saisies manuellement | Texte exact que vous saisissez | Texte statique |
| Fonction TEXTE | Dates existantes nécessitant un format spécifique | Code de format explicite | Résultat de formule ; éventuellement collé en tant que valeurs |
| Convertir en colonnes | Conversion ponctuelle sans formules | Limité | Texte statique |
| Python | Conversion répétée dans un script | Chaîne de format explicite | Texte écrit dans le classeur de sortie |
Pour le travail quotidien sur feuille de calcul, TEXTE est généralement le meilleur point de départ car la règle de conversion est facile à voir et à ajuster.
Utilisez une apostrophe lors de la saisie de quelques valeurs, Convertir en colonnes pour une conversion rapide dont vous avez vérifié le format de sortie, et Python lorsque la tâche doit devenir un processus répétable.
Questions fréquentes
Pourquoi le fait de changer le format d’une cellule de date en Texte affiche-t-il un nombre ?
Excel stocke les dates sous forme de valeurs numériques. Changer le format de la cellule en Texte ne transforme pas cette valeur en chaîne de date formatée.
Utilisez TEXT(A2,"yyyy-mm-dd") pour générer la chaîne souhaitée.
Comment puis-je vérifier si une date convertie est réellement du texte ?
Utilisez la fonction ESTTEXTE :
=ISTEXT(A2)
Elle renvoie TRUE lorsque A2 contient du texte et FALSE lorsqu’elle contient une valeur de date numérique. C’est plus fiable que de juger d’après l’apparence de la cellule.
Puis-je encore effectuer des calculs avec les dates après les avoir converties en texte ?
Les chaînes de texte ne se comportent pas de manière aussi cohérente que les dates natives dans les calculs. Certaines formules peuvent interpréter des chaînes reconnaissables, mais cette interprétation peut dépendre de leur format et des paramètres régionaux.
Conservez la colonne de dates d’origine si vous devez calculer des intervalles, regrouper des enregistrements par mois ou effectuer d’autres opérations sur les dates.
Comment conserver les zéros de tête dans le texte de date ?
Utilisez des composants de mois et de jour à deux chiffres. Par exemple :
=TEXT(A2,"yyyy-mm-dd")
Dans l’exemple Python, utilisez :
date_value.ToString("yyyy-MM-dd")
Les deux produisent une valeur telle que 2026-01-09, en conservant les zéros du mois et du jour.
Voir aussi
- Comment convertir des nombres en texte dans Excel (5 méthodes simples)
- Comment convertir du texte en nombre dans Excel – 7 solutions rapides
- Comment regrouper des lignes dans Excel : méthodes manuelles et automatiques
- Compter les cellules colorées dans Excel : 3 méthodes simples (manuelles/automatisées)