Extraire la première lettre en majuscule en excel

loubna -  
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   -
Extraire la première lettre en majuscule d' un mot en excel

2 réponses

  1. Pierre1310 Messages postés 8854 Statut Membre 652
     
    Bonjour,

    l'extraire ou?
    0
    1. loubnitakl Messages postés 1 Statut Membre
       
      Merci de votre intérêt,

      En excel 2010, je voulais une formule qu'une macro par exemple :

      si dans la cellule A1 : "Maman papa du Loubna"

      le résultat à cellule B1 : "MPL"

      Bonne réception

      A+
      0
    2. Pierre1310 Messages postés 8854 Statut Membre 652
       
      Bonjour,

      Faites vous une petite bibliothèque sur un autre feuille, inscrivez-y toutes les majuscules de l'alphabet que vous pourrez avoir à traiter, faites une macro qui à chaque caractère analysera en fonction de la bibliothèque.

      https://support.microsoft.com/fr-fr/help/465829

      fonction exact si vous en avez besoin.

      Cdt
      0
  2. michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 320
     
    Bonjour,

    Avec fonctions personnalisées

    le texte suivant:
    "BONjour à Papa, tonTOn, Mamy" renvoie "B P T M"

     Option Explicit
    '-------
    Function Majuscule_mot(texto As String)
    Dim separe() As String, mot As String, Cptr As Integer, Lettre As String * 1
    separe = Split(texto)
    For Cptr = LBound(separe) To UBound(separe)
    mot = separe(Cptr)
    Lettre = extraire_1°maj(mot)
    If Lettre <> " " Then: Majuscule_mot = Majuscule_mot & " " & Lettre
    Next
    End Function
    '--------
    Public Function extraire_1°maj(texto As String)
    Dim reg As Object
    Dim extraction As Object
    Dim Maj
    Set reg = CreateObject("vbscript.regexp")
    reg.Global = True
    reg.Pattern = "([A-Z ])"

    Set extraction = reg.Execute(texto)
    For Each Maj In extraction
    extraire_1°maj = extraire_1°maj & Maj.Value
    Next Maj
    extraire_1°maj = Left(Trim(extraire_1°maj), 1)
    End Function
    --
     Michel
    0