XL 2019 Extraction de lettre

blancolie

XLDnaute Impliqué
Bonjour le forum,

Dans le fichier ci-dessous, j'aimerais obtenir ce résultat F-AGAUKUAM dans la cellule B4 à partir de ces mots AGASTACHE AURANTIACA KUDOS AMBROSIA et Fanfelle.

J'ai essaye avec cette formule :

Code:
GAUCHE(A1;1) & STXT(A1;CHERCHE(" ";A1)+1;1)

mais j'arrive pas à avoir le résultat escompté.

Cordialement
 

Pièces jointes

  • Classeur212.xlsx
    8.6 KB · Affichages: 25

blancolie

XLDnaute Impliqué
Bonjour Patricktoulon,

Simple pour toi, pour moi c'est du charabias ( lol ) je connais rien en vba. Mais merci pour ton travail et je vais tester.

Donc si je comprends bien j'ouvre visualbasic, je clique sur la feuille devisfanfelle dans l'explorateur de visualbasic et je colle ce codage. il n 'y a pas d'enregistrement à faire pour cette macro ?
 

jmfmarques

XLDnaute Accro
Bonjour blancolie
Voilà enfin précisée l'origine de ce F, dont je trouvais personnellement assez léger qu'on la relie d'autorité au mot Flanelle :)
Doit-on de la même manière "cavalière" décider que ce dernier mot est toujours constitué, comme dans l'exemple, d'une majuscule et de minuscules ?
Je n'aime personnellement pas ce manque de précision, mais alors : voilà une fonction personnalisée toute simple :
VB:
Public Function EXTRAIT(c As String) As String
  Dim k As Integer, p As String, titi
  titi = Split(c, " ")
  For k = 0 To UBound(titi)
    Select Case True
      Case titi(k) Like "[A-Z][A-Z]*"
        titi(k) = Left(titi(k), 2)
      Case Else
        If titi(k) Like "[A-Z]*" Then p = Left(titi(k), 1) & "-"
        titi(k) = ""
    End Select
  Next
  EXTRAIT = p & Join(titi, "")
End Function
Et si ce n'était par hasard pas le résultat attendu, il va te falloir prendre cette peine : exposé précis des tenants.
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Donc si je comprends bien il y 4 lignes par plantes ?

La formule est d'un seul tenant mais pour la lisibilité, on a introduit des retours à la ligne (Alt+Entrée) dans la formule.

Je n'avais pas compris d'où venait la première lettre du code. Si j'ai bien interprété, la première lettre du code est la première lettre du fournisseur.

Voir le fichier ci-joint avec la modif (et aussi l'extension à cinq mots)
 

Pièces jointes

  • blancolie- codes- v2.xlsx
    12.3 KB · Affichages: 7

blancolie

XLDnaute Impliqué
Bonjour jmfmarques.

merci pour ta solution également, vous opter pratiquement pour du codage VBA. Codage que je ne connais pas du tout. Va falloir que je commence à m y intéresser.

Dans l'exemple cité, c'est pour compléter un fichier qui va me permettre de faire mes demandes de devis de plantes..

Pour simplifier les choses, tout doit être en majuscule.

F indique le fournisseur F=Fanfelle ( annuelle/BIsanuelle/vivace) ; C=Chombart (Vivces) ; V=Ververt (Bulbes) ; P=Plandanjou (arbuste/arbre/vivace /etc)

Peut-être faudra associer ton codage à une petite formule qui s'occupera que du fournisseur ( frournisseur qui se trouvera dans une colonne de tableau)

Y a t il d'autres précisions que j'ai oublié d'omettre ?

en tout cas merci pour ton travail
 

job75

XLDnaute Barbatruc
Bonjour blancolie et les autres,

Sur Excel 2019 on peut profiter des possibilités de la fonction JOINDRE.TEXTE, formule matricielle :
Code:
=SIERREUR(MAJUSCULE(GAUCHE(D4))&"-"&JOINDRE.TEXTE("";;MAJUSCULE(STXT(" "&SUPPRESPACE(C4);SI(STXT(" "&SUPPRESPACE(C4);LIGNE(INDIRECT("1:"&NBCAR(C4)));1)=" ";LIGNE(INDIRECT("1:"&NBCAR(C4)));NBCAR(C4)+1)+1;2)));"")
A valider par Ctrl+Maj+Entrée et tirer vers le bas.

Edit : ajouté un +1 après le 3ème NBCAR(C4).

A+
 

Pièces jointes

  • Classeur212(1).xlsx
    10.1 KB · Affichages: 6
Dernière édition:

blancolie

XLDnaute Impliqué
oui sur office365 sur mac, pas besoin de cette étape la. cela se fait automatiquement. l'avantage de cette version , tu bénéficies des nouvelles mises à jours et des nouvelles fonctionnalités comme la la recherche X . ce que tu n'as pas apparemment avec 2019. l'inconvénient avec la 2019 et 365, l'userform à été supprimé avec visual basic . en tout cas sur la version Mac
 

Discussions similaires

Statistiques des forums

Discussions
312 180
Messages
2 085 993
Membres
103 081
dernier inscrit
jeromeolivier.raymond@wat