PatCatNat’s, site de Patrice MOREL
Vous êtes ici : Accueil » Inform@tic » Excel ou Calc » Travail sur chaînes de caractères

Travail sur chaînes de caractères

D 7 novembre 2006     H 15:29     A Patrice MOREL    


Excel 2003 Office 2003 - Excel | Testé |
Icone Calc Open Office - Calc | Testé |

 Nom Propre

  • En A1 ceci est un titre
    =NOMPROPRE(A1)
    a pour résultat : Ceci Est Un Titre
  • En A1 vaison-la-romaine, le même code a pour résultat : Vaison-La-Romaine
  • En A1 76BudGet , le même code a pour résultat : 76Budget

 minuscule

  • En A1 MOREL
    =MINUSCULE(A1)
    a pour résultat : morel

 MAJUSCULE

  • En A1 patrice
    =MAJUSCULE(A1)
    a pour résultat : PATRICE

 Concaténer

  • En A1 = Manger
  • En A2 = 5
  • En A3 = saucisses
    =CONCATENER(A1 & " " & A2 &" "& A3 & " chaudes")
    a pour résultat : Manger 5 saucisses chaudes

 Séparateur de milliers dans une concaténation

  • En A1 = 8 000
  • En A2 = 2 000
    =TEXTE(A1+A2;"# ##0")&" Km"
    a pour résultat : 10 000 Km

 Tronquer

  • En A1 8,25369

=TRONQUE (A1;2)
a pour résultat : 8,25

=TRONQUE (A1;0)
a pour résultat : 8

=TRONQUE (A1;4)

 Extraction de chaîne de caractères

  • En A1 Manger

=STXT(A1; 2;3)
a pour résultat : ang

=DROITE(A1;NBCAR(A1)-3)
a pour résultat : ger

=DROITE(A1; 2)
a pour résultat : er

=GAUCHE(A1; 4)
a pour résultat : Mang

  • Extraire une partie avant un caractère (dans l’exemple le symbole "<") si il existe.
    Si la cellule contient "<", mettre dans la cellule réponse la chaîne de caractères précédent le symbole.
    Si la cellule ne contient pas "<", mettre dans la cellule réponse toute la chaîne de caractères.
    Si la cellule est vide, mettre la cellule réponse vide.

En A5 ma cellule source, mettre dans la cellule réponse. Code à mettre :

  • Extraire le N° et le nom d’une rue pour les mettre dans 2 cellules différentes.
    Plusieurs cas de figures explorés :

Pour le N° de rue, en A5 ma cellule source, mettre dans la cellule B5 :

Pour la rue, en A5 ma cellule source, mettre dans la cellule C5 :

  • Extraire les données après ou avant la dernière espace (dans l’exemple extraire l’adresse courriel ou ce qui est avant)  :
    • Formule du calcul de nombre de caractère jusquà la dernière espace à mettre en « B2 » :
    • Formule pour extraire la chaîne de caractère avant la dernière espace à mettre en« B3 » :
    • Formule pour extraire la chaîne de caractère après la dernière espace à mettre en« B4 » :

Note : Bien entendu, vous pouvez améliorer comme par exemple mettre en majuscule la première lettre en insérant cette dernière formule entre =NOMPROPRE( "ma formule" )

 Écrire sans accents

Transformer automatiquement une chaîne de caractères avec des accents en chaîne de caractères sans accent.

Par exemple le prénom « René » devient « rene ». Cela peut être utile pour écrire automatiquement les adresses courriel de certaines entreprise qui ont un format spécifique telle que la SNCF :

CourrielMinuscule exemple

  • Création de la fonction pour mettre en minuscule dans un nouveau module Visual Basic (Macro) :
  • Création de la fonction pour mettre en majuscule dans un nouveau (ou le même !) module Visual Basic (Macro) :

 Remplacer (substituer) une chaine de caractère (dont caractères spéciaux) par une autre

J’ai construit cette formule pour créer des ancres dans mes articles afin d’éviter les fameux 20% à la la place des espaces et autres écritures alambiquées avec les lettres accentuées (collection de vieux journaux).

Le principe est d’utiliser la fonction SUBSTITUE.

Exemples :

Exemple 1 :

En A2 je supprime les espaces :

En A3 je supprime les espaces et les apostrophes :

Vous remarquerez que pour supprimer les « caractères spéciaux » j’utilise la fonction UNICAR : =UNICAR(Code décimal)*.

En A4 je supprime les espaces, les apostrophes et la parenthèse ouvrante :

En A5 je supprime les espaces, les apostrophes et les 2 parenthèses :

En plus pour faire une chaîne de caractères normée pour l’utilisation sur internet (pas d’espaces, symboles et d’accents) j’utilise la fonction créée en visual basic vue plus haut MINSANSACCENT :

Donc en A6 je supprime les espaces, les apostrophes, les 2 parenthèses et les accents :

En A7 je met une majuscule à la première lettre de la chaine pour mieux repérer dans mon code ensuite :

En final j’ai fait en dernière formule, l’ajout de la suppression de unicode 39 car dans la pratique il arrive que j’ai un titre composé comme Illustration(L’). Dans ce cas de figure ce n’est plus une apostrophe !... Et dans la foulée, au cas où ma cellule contenant le texte est vide la fonction SI. Ce qui donne en C7 :

Quelques codes UNICAR trouvés et bien utils :
Saut de ligne =UNICAR(10)

(*) Fonction UNICAR :
Pour trouver le code décimal de façon précise, le plus simple est d’utiliser la fonction UNICODE. Elle renvoie le code décimal.
=UNICODE(renvoie le code la première lettre)
Note : il existe des pièges comme celui de trouver le code de l’apostrophe. Si l’on appuie simplement sur la touche apostrophe (4) du clavier le chiffre 39 nous est retourné ! C’est le cas en B8 avec =UNICODE(A8). C’est un autre symbole que l’apostrophe... c’est trompeur !
Pour trouver le bon code il vaut mieux écrire la phrase et enlever la (ou les) lettre avant l’apostrophe. C’est le cas en B9 avec =UNICODE(A9).
Pour vérifier vous pouvez réutiliser la fonction UNICAR comme j’ai fait de C8 à C11 dans l’exemple 1.

 Des guillemets dans les formules

Par exemple pour avoir comme résultat : Le « casse-gueule » sur le trottoir.
2 solutions :
La première consiste à utiliser le code de la guillemet (34) avec la fonction UNICAR (voir ci-dessus) :

Ou alors mettre 4 guillemets :

Dans la même rubrique

12 mai 2021 – Un lien entre les cellules

12 novembre 2019 – Formatages divers

4 janvier 2018 – Incrémentation de lignes avec un classeur lié.

3 août 2017 – Nom de fichier dans une cellule

14 mars 2012 – Date par défaut

Rechercher

Traducteur



Les plus lus

1.  Notices diverses

2.  Le jeu de palets

3.  Import tous fichiers Txt d’un répertoire

4.  Expos et réalisations

5.  Au fil de l’eau


5 articles au hasard

1.  Thèmes philatéliques

2.  Travailleurs sans papiers

3.  Prud’hommes

4.  Affiche « AVIS 5 condamnés à mort à Paris »

5.  Un évènement sur un sous-formulaire...


Les plus populaires

1.  Import tous fichiers Txt d’un répertoire

2.  Carillons

3.  Masquer des lignes et/ou colonnes sur ordre

4.  Expos et réalisations

5.  Multiplier des artichauts !