2.3Fonctions texte & date/heure
L'essentiel en 30 secondes
- Extraire puis assembler : GAUCHE/DROITE/STXT découpent, & et CONCAT recollent — SUPPRESPACE nettoie entre les deux.
- Une date est un nombre : Fin − Début = jours, AUJOURDHUI() = jour courant — afficher le résultat en Nombre.
- Nettoyer avant de croiser : espaces et casse font rater les RECHERCHEX — SUPPRESPACE + MAJUSCULE d'abord.
Mini-cas filé — Wassim et les fournisseurs en double
Wassim (2.2) voit ses RECHERCHEX rater des fournisseurs pourtant présents : «SARL Atlas» avec deux espaces, «sarL atlas» en minuscules, dates d'échéance en texte qui refusent de se calculer. Il nettoie : SUPPRESPACE retire les espaces parasites, NOMPROPRE uniformise la casse, et ses croisements remarquent enfin. Puis il calcule les retards : échéance moins aujourd'hui en jours, ancienneté des impayés avec DATEDIF. En 2.4, ces retards calculés piloteront les couleurs d'alerte ; en 2.5, le tout vivra dans un tableau structuré.
Suite du fil rouge 2.2 : les données de Wassim deviennent propres et calculables — et continuent en 2.4 et 2.5.
1. Extraire et assembler du texte
GAUCHE, DROITE, STXT extraient des morceaux ; NBCAR compte les caractères ; SUPPRESPACE retire les espaces en trop ; MAJUSCULE/MINUSCULE/NOMPROPRE changent la casse. Pour assembler, l'opérateur & ou CONCAT : =A2&" "&B2 colle prénom et nom. Wassim construit un code fournisseur propre : initiale + nom nettoyé + wilaya, le tout en majuscules.
2. Les dates sont des nombres
Une date est un numéro de jour : on peut donc calculer avec. =B2-A2 donne un nombre de jours ; =AUJOURDHUI() renvoie la date du jour ; ANNEE/MOIS/JOUR extraient les composantes. DATEDIF calcule des écarts en années/mois/jours : =DATEDIF(A2 ; AUJOURDHUI() ; "y") pour une ancienneté en années. Wassim calcule jours de retard = échéance − aujourd'hui, et affiche le résultat en format Nombre (sinon Excel affiche une fausse date).
3. Nettoyer avant d'analyser
Les données importées sont souvent « sales » : espaces invisibles, casse incohérente, dates en texte. Le réflexe : SUPPRESPACE pour les espaces, NOMPROPRE pour la casse, CNUM/DATEVAL pour reconvertir nombres et dates stockés en texte. Wassim nettoie les noms de fournisseurs AVANT ses RECHERCHEX (2.2) : deux colonnes homogénéisées des deux côtés, sinon la clé « identique » reste introuvable. Nettoyer d'abord, analyser ensuite.
🔎 Exemple concret — 🔎 Exemple concret — Retard de paiement de Wassim
Échéance en B2 ; Wassim calcule le retard et construit un code propre (initiale en A2, nom en C2) :
=B2-AUJOURDHUI() → afficher en format Nombre (jours restants)
=MAJUSCULE(GAUCHE(A2;1)) & "." & MAJUSCULE(SUPPRESPACE(C2))
=DATEDIF(A2; AUJOURDHUI(); "y") → ancienneté en années
Lecture : la soustraction de dates donne des jours ; GAUCHE + SUPPRESPACE + & fabriquent un identifiant sans espaces cachés.
Leçon : un résultat de dates affiché en Date est un format à corriger, pas un calcul à jeter.
Vocabulaire de la section
- SUPPRESPACE
- Retire les espaces de début, de fin et les doublons internes : l'arme anti-clés « identiques » qui ratent.
Exemple simple : Wassim nettoie «SARL Atlas» avant sa RECHERCHEX.
Ce que ce n'est pas : une mise en forme qui colore les cellules.
Réflexe : nettoyer des deux côtés avant de croiser.
- & / CONCAT
- Assemblent plusieurs textes en une seule chaîne : =A2&" "&B2.
Exemple simple : Wassim colle initiale, point et nom en un code.
Ce que ce n'est pas : l'addition + réservée aux nombres.
Réflexe : assembler avec &, pas avec +.
- AUJOURDHUI
- Renvoie la date du système, recalculée à chaque ouverture : la référence des retards et échéances.
Exemple simple : Wassim compare chaque échéance à AUJOURDHUI().
Ce que ce n'est pas : une date figée tapée à la main.
Réflexe : référence vivante des délais.
- DATEDIF
- Écart entre deux dates en années ("y"), mois ("m") ou jours ("d") : âges et anciennetés.
Exemple simple : Wassim calcule l'ancienneté d'un impayé avec =DATEDIF(A2;AUJOURDHUI();"y").
Ce que ce n'est pas : une simple soustraction affichée en date.
Réflexe : écarts calendaires = DATEDIF.
En pratique — En pratique — Nettoyer puis calculer
- Nettoyez une colonne de noms avec SUPPRESPACE + NOMPROPRE.
- Assemblez un code propre avec GAUCHE et & (initiale + nom).
- Calculez des jours restants : =Échéance-AUJOURDHUI(), format Nombre.
- Calculez une ancienneté en années avec DATEDIF.
Script prêt à dire — expliquer le nettoyage (30 s)
« Nos fournisseurs existaient en double à cause d'espaces invisibles et de casses différentes : je nettoie tout avec SUPPRESPACE et NOMPROPRE avant de croiser, et les recherches remarquent. Les échéances sont de vrais nombres, donc le retard se calcule tout seul en jours. Données propres d'abord, analyses fiables ensuite. »
À dire en montrant les doublons de Wassim fusionner après nettoyage.
Modèle copier-coller — nettoyage + dates
=SUPPRESPACE(A2)
=NOMPROPRE(SUPPRESPACE(A2))
=B2-AUJOURDHUI()
=DATEDIF(A2; AUJOURDHUI(); "y")
Clés en double
«SARL Atlas» vs «sarL atlas» : Wassim applique SUPPRESPACE + MAJUSCULE des deux côtés et les doublons fusionnent.
Date en texte
Une échéance importée refuse de se calculer : Wassim la reconvertit avec DATEVAL, puis soustrait normalement.
Fausse date résultat
Un retard affiche « janv.-1900 » : Wassim repasse la cellule en format Nombre — le calcul était juste.
Code propre
Identifier chaque fournisseur d'un code court : Wassim combine GAUCHE, SUPPRESPACE, MAJUSCULE et & en une formule.
✓ Bonnes pratiques
- Nettoyer (SUPPRESPACE, casse) avant tout croisement.
- Assembler avec & (rapide) ou CONCAT.
- Se rappeler qu'une date = un nombre : résultat en format Nombre.
✗ Pièges fréquents
- Croire qu'une date en texte se calcule (il faut DATEVAL).
- Oublier les espaces invisibles qui font rater les RECHERCHEX.
- Extraire par position fixe (GAUCHE/DROITE) sur des textes de longueurs variables.
Points clés à retenir
- GAUCHE/DROITE/STXT extraient ; NBCAR compte ; SUPPRESPACE nettoie.
- & et CONCAT assemblent du texte.
- Une date est un nombre : Fin − Début = jours ; DATEDIF = écarts.
- Nettoyer avant d'analyser (espaces, casse, texte vers nombre/date).
Défi 48h — appliquez demain
Sur une colonne réelle (fournisseurs, clients) : SUPPRESPACE + casse appliqués, un code assemblé avec &, puis un retard en jours calculé et affiché en Nombre.
- Je peux nettoyer du texte (SUPPRESPACE, casse) avant tout croisement.
- Je sais assembler (GAUCHE, &, CONCAT) des identifiants propres.
- Je calcule avec les dates (soustraction, AUJOURDHUI, DATEDIF) en format Nombre.
Questions fréquentes
Pourquoi ma soustraction de dates donne une date au lieu d'un nombre ?
La cellule résultat a hérité d'un format Date. La valeur (nombre de jours) est correcte : passez la cellule en format Nombre pour l'afficher comme un entier.
Mes RECHERCHEX échouent sur des clés « identiques » ?
Souvent des espaces invisibles ou une casse différente. Appliquez SUPPRESPACE (et éventuellement MAJUSCULE) des deux côtés pour homogénéiser avant de croiser.
Quel opérateur assemble le contenu de deux cellules texte ?