4 façons de formater les dates en texte dans Excel : manuelles et automatisées

2026-11-04 02:11:59 Jack Du
AI Summarize:
ChatGPT
ChatGPT ✓
Claude ✓
Grok ✓
Perplexity ✓
Quick
Quick
Concise overview
Highlights
Key takeaways
Detailed
Structured explanation
Brief
One sentence summary
Summarize |

Convert Dates to Text in Excel

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

Convert Dates to Text with the TEXT Function

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 :

  1. Sélectionnez les cellules contenant les formules TEXTE.
  2. Appuyez sur Ctrl+C.
  3. Cliquez avec le bouton droit sur la cellule de destination.
  4. 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 :

  1. Sélectionnez les cellules de date de la colonne A, en excluant l’en-tête.
  2. Ouvrez Données → Convertir en colonnes.
  3. Sélectionnez Délimité, puis cliquez sur Suivant.
  4. Décochez toutes les cases de délimiteur afin que les dates restent dans une seule colonne.
  5. Cliquez de nouveau sur Suivant.
  6. Sous Format des données de colonne, sélectionnez Texte.
  7. Définissez Destination sur une colonne vide, telle que $H$2.
  8. 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.

Convert Dates to Text Using Text to Columns

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 :

Convert Dates to Text Using 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